mysql的16进制绕过-二次注入tip

  • A+
所属分类:Mysql

0×00 二次注入


输入流由数据库查询结果提供,一般程序员都是不会过滤的,毕竟不是GPC。不过第一次入库经过过滤函数,因此要想办法避免。

0×01 mysql的16进制绕过


 mysql中字符串都可以转换成对应的16进制形式。

例如:

1 or 1 == 0x31206f722031

利用前提:

1、insert插入时对应字段为字符类型(varchar、char等等)

2、SQL语句values时不允许存在单引号。

例句:insert into xiaol(id, address) values(1, 0x31206f722031)

mysql的16进制绕过-二次注入tip

0×02 绕过


1、可以绕过is_number函数的检查,一个经典的二次注入绕过。

2、绕过自定义的函数过滤,也是目前遇到的几个cms里的情况。

3、一般转换成16进制时字符串长度会变的很长,要挑选设定很长的字段插入,避免截断。

 

参考:http://www.leesec.com/archives/313

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: