小白菜过滤总结
一名刚入门的小白,通过这些日子的学习和实践操作,发现在SQL注入或者XSS中会遇到许多的过滤情况,然后在这里就大致整理一下有关字符串过滤后的一些处理方法,肯定不是很准确的和完整的。并且很多是通过自己在互联网上查询并搜集然后进行实验的。绕WAF啥的我还一脸懵的。
SQL注入-绕过过滤
-
1.过滤如
and,or,union
如果是被过滤为空了,可以考虑双写或者转换大小写尝试;如And、anandd
等方式。其他字符串亦是如此。- and --> null
- And --> and
- anand --> and
-
2.如果转换大小写和双写字符串也不能绕过过滤,可以尝试一下类似
a%00nd
是否能够绕过过滤。- And --> null
- anand --> null
- a%00nd --> and
-
3.在注入过程中 (手工注入)如果到数据无法Dump的情况,可以尝试16进制或者ASCII码来对数据库名或者表名进行编译后再次尝试。
select * from table where user='admin'-->Error
(错误)select * from 7461626c65 where user=61646d696e-->Success
(成功)
-
4.空格过滤绕过的情况,可以使用特殊方法来测试是否能够绕过过滤。
- /**/
select/**/user_name/**/from/**/user/**/where
- 回车键(%0a)
select%0auser_name%0afrom%0auser%0awhere
- 使用tab键
- 两个空格
- /**/
-
5.等于符号(=)被过滤的情况,可以尝试如下方法进行测试。
<>
:该符号在sql中是表示不等于的意思,所以双重否定表肯定,再加个!
美滋滋lik