HTTP参数污染
如文章中所言,HTTP并非一个漏洞,但是网站存在SQL或者XSS,在有WAF的情况之下可以帮助黑客进行绕过WAF。那么什么是HPP参数污染呢?
假设这个URL:http://www.xxxx.com/search.php?id=110&id=911
百度会理解成让百度搜索:110 #选择了第一个参数,放弃了第二个参数。
雅虎会理解成让雅虎搜索:911 #选择了第二个参数,放弃了第一个参数。
谷歌会理解成让谷歌搜索:110 911 #两个参数同时选择。
主要的就是这三种情况了。
这主要是源于,不同的网站对处理参数的处理方式不同。
那么注入是怎么跟HTTP污染产生关系的呢?
倘若是第三种情况,也就是第一个参数取第二个参数也取。那么大家请看下面的URL
http://www.xxxxxx.com/hello.php?id=select 1&id=2,3,3 from admin
该种情况还可用于Bypass WAF.
当然还可以与XSS结合。
具体服务端处理方式如下:
Web服务器参数获取函数获取到的参数
PHP/Apache$_GET(“par”)Last
JSP/TomcatRequest.getParameter(“par”)First
Perl(CGI)/ApacheParam(“par”)First
Python/ApacheGetvalue(“par”)All(List)
ASP/IISRequest.QueryString(“par”)All(comma-delimited string)
页:
[1]