常规的几种绕过方式:
1. 大小写绕过:
如果程序中设置了过滤关键字,但是程序只是对 and ,AND 或者 or,OR 设置了关键字过滤,那么你就可以使用大小写过滤
例如 :and,or
当然不局限于 and,其它的例如 union 一些关键字如果只是设置了关键字过滤,没有进行深度过滤的话,都是可以使用大小写过滤的
2. 双写绕过:在程序中对某一个关键字例如
union 设置了过滤清空,那么此时你就可以用
UniunionOn 这么一来,就可以实现绕过
当然你是可以结合大小写绕过进行编写的
select id=1 Uniutionon from
3. 编码绕过:通过 url 编码将语句或关键字进行编码
4. 内联注释绕过:
在 mysql 中,内联注释里的 Sql 语句是会被执行的,语法如下:等价于 select * from users
/*!SELECT*/ * FROM users
如果在 /*!SELECT*/ 中里面不加 ! ,则 /*SELECT*/ 会以注释的形式存在,这时 select 将不会被当成语句执行,会出现语法错误
/*Select*/ From Users
报错如下所示:

使用该内连接进行绕过的时候,也是可以结合之前的大小写以及双写进行绕过的,结合实际情况进行选择
安全狗的详细绕过:
这里我们以安全狗作为案例,如果你按照常规方法输入 and,那么它会对这个进行一个过滤,从而出现如下界面


文章介绍了多种SQL注入攻击中的绕过方法,包括大小写变换、关键字双写、URL编码以及MySQL的内联注释来规避过滤。同时,针对安全狗的WAF,提出了and、orderby和selectunion等关键字的特定绕过技巧,并展示了如何通过爆破和特殊字符插入来避免检测,最终实现查询数据的绕过。

3962

被折叠的 条评论
为什么被折叠?



