HTTP參數污染


 HTTP Parameter Pollution簡稱HPP,所以有的人也稱之為“HPP參數污染”。

一篇很不錯關於HPP參數污染的文章:http://www.paigu.com/a/33478/23535461.html

如文章中所言,HPP並非一個漏洞,但是網站存在SQL或者XSS,在有WAF的情況之下可以幫助黑客進行繞過WAF。

 

那么什么是HPP參數污染呢?


假設這個URL:http://www.xxxx.com/search.php?id=110&id=911

百度會理解成讓百度搜索:110                 #選擇了第一個參數,放棄了第二個參數。

雅虎會理解成讓雅虎搜索:911            #選擇了第二個參數,放棄了第一個參數。

谷歌會理解成讓谷歌搜索:110 911         #兩個參數同時選擇。

主要的就是這三種情況了。

這主要是源於,不同的網站對處理參數的處理方式不同。PS:跟米哥一起學習的,總結米哥的,感覺我總結的還是欠妥當。

 

那么注入是怎么跟HTTP污染產生關系的呢?


倘若是第三種情況,也就是第一個參數取第二個參數也取。那么大家請看下面的URL

http://www.xishaonian.com/hello.php?id=select 1&id=2,3,3 from admin

該種情況還可用於Bypass WAF.

當然還可以與XSS結合。

 

 

具體服務端處理方式如下:

Web服務器

參數獲取函數

獲取到的參數

PHP/Apache

$_GET(“par”)

Last

JSP/Tomcat

Request.getParameter(“par”)

First

Perl(CGI)/Apache

Param(“par”)

First

Python/Apache

Getvalue(“par”)

All(List)

ASP/IIS

Request.QueryString(“par”)

All(comma-delimited string)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM