sqlmap注入检测经验0x01
某日偶遇一SQLInjection Point,MSSQL 2008,已開啟顯錯模式。
馬上扔進SQLMap跑,一路順暢,竟然還是SA的權限,心想運氣真好,無論如何都拿定了。
數據庫,表,列都列出來了,但是上–dump參數就死活跑不出來。
報錯 “unable to retrieve the number of entries for table ‘Admin’ in database ‘2012_xxxx’”——x是馬賽克哈:)
心想應該很容易搞定,遂查找手工注入方法,測試無果。
還是回到SQLMap,-h查看幫助,發現-v 參數可以指定輸出詳細度,開到-v 3,發現顯示了payload,一不做二不休,直接開到-v 5,發現提供了整個http請求,怪不得報錯,原來都是返回500,用firefox打開完整payload,說是語法錯誤。
顯然是2012的問題,也就是應該是錯把庫名中的數字錯當成參數了
在URL的庫名加上雙引號包裹,果然就可以爆出數據了。
問題又來了,要我手工爆數據我可搞不定,還是要回到SQLMap啊,意思是要想辦法把庫名包裹起來,不讓系統把它解析成一個參數
XTEST1: ./sqlmap.py -u http://www.xxxx.cn/xxxx/detail.aspx?id=218 –dump -D”‘2012_xxxx” -T’Admin’這次好一點了,還是報錯unable to retrieve column names for table ‘Admin’ in database ‘”2012_xxxx”‘,意思是有返回了,但是庫名不對。
XTEST12 ./sqlmap.py -u http://www.xxxx.cn/broadband/detail.aspx?id=218? –dump -D”[2012_xxxx]” -T’Admin’我也不記得哪來的靈機一動,改用中括號包裹,果然就成功了,dump出整個表了。
XCONCLUSION:在使用SQLMap時可以使用-v參數指定輸出詳細度,然后直接用瀏覽器查看payload,確定語法錯誤點后想辦法改進。在遇到系統誤判庫名表名是可用中括號包裹名字。轉載于:https://www.cnblogs.com/milantgh/p/4908812.html
總結
以上是生活随笔為你收集整理的sqlmap注入检测经验0x01的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用C#发送Http 请求实现模拟登陆(
- 下一篇: 交易Txt文件导出