sql注入隨筆
最近挖了一些漏洞,還挺有意思的。這邊分享兩個需要細節一點才能挖到的sql注入,希望給大家帶來一些漏洞挖掘思路。
黑盒是很有意思的,有趣的。
1.搜索功能的隱藏sql注入,post data數據內容如下:
{"product":"","offer":"DIV","variant":"*","search":""}
探測的時候發現這些參數都不存在注入

開始第二次嘗試,當刪除json體中某個參數后,variant參數觸發報錯注入:
{"product":"","variant":"*","search":""}
結論:測試漏洞的時候,記得刪除參數??赡苣硞€參數起到了健全的作用。
2.搜索功能的order by隱藏注入,post data數據包內容如下:
Origin: Sec-Fetch-Site: same-origin Sec-Fetch-Mode: cors Sec-Fetch-Dest: empty Referer: Accept-Encoding: gzip, deflate Accept-Language: zh-CN,zh;q=0.9,zh-TW;q=0.8 number=0&size=10&sortField=id*&sortOrder=desc&playerUsername=&uid=
對數據包進行正常發包:

發包返回當前搜索的所有數據。因為有sortField參數,所以我格外注意測試order by注入。這里我對每個參數進行了sql注入測試,發現并不存在order by和其他類型的sql注入。
直覺告訴我,可能有漏洞。我想堅持fuzz下,如果我放棄了,那么一個高風險漏洞都沒有了。
fuzz參數發現當post data參數為:
Origin: Sec-Fetch-Site: same-origin Sec-Fetch-Mode: cors Sec-Fetch-Dest: empty Referer: Accept-Encoding: gzip, deflate Accept-Language: zh-CN,zh;q=0.9,zh-TW;q=0.8 number=0&size=10&sortField=id&sortOrder=desc&playerUsername=%25&uid=
這里我為playerUsername賦值%25后,正常發包后,他的返回和上面第一個數據包的返回內容一致。
但是這個賦值不一般,直接導致了sortField參數可以受到order by注入攻擊,直接觸發sql語句報錯。

很神奇,這個點真的很神奇。也可以說是意外之喜。然后就是出數據,證明是sql注入:
結論:遇到敏感的參數,一定要堅持下!不然可能錯過高風險安全漏洞。

浙公網安備 33010602011771號