sql注入中过滤关键字(union select等等)

今天来学习一下注入中关键字被过滤了该如何解决

打开靶场,这是我本地搭建的一个靶场所以没有靶场地址

我们在输入框内输入一个1 查询一下结果。

尝试闭合和注释,发现单引号即可完成闭合,--+作为注释内容,通过order by查询列数

看到页面上方order的or被过滤,说明or即是关键词,我们双写or,变成

oorrder by 2 (一定要在or的中间双写or,不然两个都会被注释掉)

通过order by发现只有两列数据,那么开始联合注入

发现union 和 select 都被过滤了, 那么也进行双写

变成 ununionion selselectect。

双写后即查询到了结果,那么开始注入

查询数据库

发现有一个flag的数据库,那我们就查这个库

查到表,接着查列

最后查询flag

到这我们就查询到flag了,本题主要考点是如果关键词被过滤了,我们该如何去绕过。

如果是一般的查询关键字被过滤,通过双写即可进行绕过。但是如果是符号被过滤,那就需要其他的绕过方式了

经验分享 程序员 微信小程序 职场和发展