sql注入过滤select
时间: 2023-08-18 20:11:03 浏览: 192
在SQL注入中,过滤select关键字是常见的安全措施之一。然而,有一些方法可以绕过这种过滤。一种方法是在过滤器过滤的关键词前面加上URL编码的空字节%00。这是因为在C/C++中,空字节代表语句的结束,而SQL语句对空字节的解释则不同,它会继续执行后面的代码。因此,通过在select关键字前面加上%00,可以绕过过滤器的select关键字过滤\[2\]。
另外,还有一些其他的绕过方法可以用于绕过select关键字的过滤。例如,可以使用联合查询来绕过过滤器。通过在注入点处构造一个合法的联合查询语句,可以绕过select关键字的过滤,并执行自定义的SQL语句。例如,可以使用以下语句来绕过select关键字的过滤,并执行查询操作:
?id=-1' union select 1,group_concat(schema_name),3 from information_schema.schemata --+
这个语句使用了联合查询来获取数据库中的所有模式名称,并将结果以逗号分隔的形式返回\[3\]。
总结起来,绕过select关键字的过滤可以使用URL编码的空字节%00或者联合查询等方法。然而,需要注意的是,进行SQL注入攻击是非法的行为,应该遵守法律法规,不进行未经授权的测试或攻击。
#### 引用[.reference_title]
- *1* *2* [SQL注入绕过关键词过滤的小技巧及原理(union select为例)](https://blog.csdn.net/weixin_54848371/article/details/120423529)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
- *3* [sql注入原理](https://blog.csdn.net/xg_ren/article/details/79354364)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文