经过几回合测试,我发现那个软件是拦截独立的关键词,也就是拦截字符串“and”,而不会拦截包含“and”的字符串如“island”。提交http://xxx/x.asp?x=island 1=2时没问题,而提交http://xxx/x.asp?x=a and 1=1时就被拦截了。
呵呵,明白了吧,实际上程序要判别到底是不是完全匹配真正拦截的字符串是空格+关键词+空格(本例中就是“ and ”)。如果用ASP代码表示的话就是:
If Instr(1 , StrQuest , “ and “ , 1) Then Response.Write( “一些废话” ) Response.End End If |