HTTP -parameterforurening - HTTP parameter pollution
HTTP |
---|
Anmod om metoder |
Overskriftsfelter |
Svarstatuskoder |
Sikkerhedsadgangskontrolmetoder |
Sikkerhedsrisici |
HTTP Parameter Forurening ( HPP ) er en web-applikation sårbarhed udnyttes ved at indsprøjte kodede forespørgsel string afgrænsere i allerede eksisterende parametre . Sårbarheden opstår, hvis brugerinput ikke er desinficeret korrekt af en webapplikation. Denne sårbarhed tillader indsprøjtning af parametre i webapplikationsoprettede webadresser. Det blev første gang bragt frem for offentligheden i 2009 af Stefano di Paola og Luca Carettoni, på konferencen OWASPEU09 Polen. Virkningen af en sådan sårbarhed varierer, og den kan variere fra "simpel irritation" til fuldstændig afbrydelse af den påtænkte adfærd for en webapplikation. Tilsidesættelse af HTTP -parametre for at ændre et webapplikations adfærd, omgå input- og adgangskontrolpunkter og andre indirekte sårbarheder er mulige konsekvenser af et HPP -angreb.
Der er ingen RFC -standard for, hvad der skal gøres, når den har bestået flere parametre. HPP kan bruges til grænseoverskridende forurening, omgåelse af CSRF -beskyttelse og WAF -inputvalideringskontrol .
Opførsel
Når den har passeret flere parametre med samme navn, er det sådan, hvordan backend opfører sig.
Teknologi | Analyseresultat | Eksempel |
---|---|---|
ASP.NET/IIS | Alle forekomster er forbundet med et komma | param = val1, val2 |
ASP/IIS | Alle forekomster er forbundet med et komma | param = val1, val2 |
PHP/Apache | Kun sidste forekomst | param = val2 |
PHP/Zeus | Kun sidste forekomst | param = val2 |
JSP, Servlet/Apache Tomcat | Kun første forekomst | param = val1 |
JSP, Servlet/Oracle Application Server | Kun første forekomst | param = val1 |
JSP, Servlet/anløbsbro | Kun første forekomst | param = val1 |
IBM Lotus Domino | Kun sidste forekomst | param = val2 |
IBM HTTP -server | Kun første forekomst | param = val1 |
mod_perl, libapreq2/Apache | Kun første forekomst | param = val1 |
Perl CGI/Apache | Kun første forekomst | param = val1 |
mod_wsgi (Python)/Apache | Kun første forekomst | param = val1 |
Python/Zope | Alle forekomster i listen (array) | param = ['val1', 'val2'] |
Typer
Kundeside
- Første ordre / reflekteret HPP
- Anden ordre / lagret HPP
- Tredje ordre / DOM HPP
Server-side
- Standard HPP
- Anden ordens HPP
Forebyggelse
Korrekt inputvalidering og bevidsthed om webteknologi på HPP er beskyttelse mod HTTP -parameterforurening.
Se også
Referencer
Bibliografi
- Balduzzi, Marco; Torrano-Gimenez, Carmen; Balzarotti, Davide; Kirda, Engin (2011). Automatiseret opdagelse af sårbarheder ved forurening af parametre i webapplikationer . Proceedings of the Network and Distributed System Security Symposium, NDSS 2011 - via ResearchGate .