dongfang1017 发表于 2009-5-30 17:12:58

注入语句中And与Or的替换使用

(注入漏洞的判断原理,构造逻辑表达式提交,根据返回内容的真假判断)

       首先来看看And吧,最常用的这个了,测试漏洞页时的使用,看看下面例句:

直接访问正常的结果 http://www.xxxxxx.com/show_news?id=10

使用and 1=1检测页面 http://www.xxxxxx.com/show_news?id=10 and 1=1

第一个是正常页面(要不正常那还检测P的 - -),第二个带了个and 1=1一样返回正常页一样,

这个不用多说的,因为and 1=1这个条件永远都是真的,所以当然返回是正常页。继续第三个

页面测试,访问http://www.xxxxxx.com/show_news?id=10 and 1=2 这个现实另外一个页面或者

出错的话应该就是存在注入漏洞了。

       下面说说or运算符,在防注系统过滤了and时可以使用or代替。or检测的规则和and相反,

引用一句经典的“假是真时真是假”。使用and时我们猜表和列等返回正确页就是存在,否

则就是不存在。而使用or恰好相反,猜解时返回错误的才是存在,返回正确则不存在。

       使用or检测是否有注入漏洞也很简单,看看下面的几个例句就OK了,根据上面的规则:

http://www.xxxxxx.com/show_news?id=10      正常访问的结果

http://www.xxxxxx.com/show_news?id=10 or 1=1    返回另一页面或出错

http://www.xxxxxx.com/show_news?id=10 or 1=2    返回正常页一样

以上就可以判断该页存在注入漏洞了,这就可以使用or替换and去注入了。我们就可以继续

后面的猜解工作了。比如猜解是否存在表admin的,那么可以使用以下的语句去猜解,

http://www.xxxxxx.com/show_news?id=10 or select * from admin



其他的语法都同上类似,只需要修改相关语句即可了
页: [1]
查看完整版本: 注入语句中And与Or的替换使用