2024-07-19 10:20:41 +00:00
# Parameter Pollution
2022-04-28 16:01:33 +00:00
2024-07-19 10:20:41 +00:00
{% hint style="success" %}
Learn & practice AWS Hacking:< img src = "/.gitbook/assets/arte.png" alt = "" data-size = "line" > [**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)< img src = "/.gitbook/assets/arte.png" alt = "" data-size = "line" > \
Learn & practice GCP Hacking: < img src = "/.gitbook/assets/grte.png" alt = "" data-size = "line" > [**HackTricks Training GCP Red Team Expert (GRTE)**< img src = "/.gitbook/assets/grte.png" alt = "" data-size = "line" > ](https://training.hacktricks.xyz/courses/grte)
2022-04-28 16:01:33 +00:00
2024-07-19 10:20:41 +00:00
< details >
2022-04-28 16:01:33 +00:00
2024-07-19 10:20:41 +00:00
< summary > Support HackTricks< / summary >
2023-12-31 07:08:04 +00:00
2024-07-19 10:20:41 +00:00
* Check the [**subscription plans** ](https://github.com/sponsors/carlospolop )!
* **Join the** ЁЯТм [**Discord group** ](https://discord.gg/hRep4RUj7f ) or the [**telegram group** ](https://t.me/peass ) or **follow** us on **Twitter** ЁЯРж [**@hacktricks\_live** ](https://twitter.com/hacktricks\_live )**.**
* **Share hacking tricks by submitting PRs to the** [**HackTricks** ](https://github.com/carlospolop/hacktricks ) and [**HackTricks Cloud** ](https://github.com/carlospolop/hacktricks-cloud ) github repos.
2022-04-28 16:01:33 +00:00
< / details >
2024-07-19 10:20:41 +00:00
{% endhint %}
2022-04-28 16:01:33 +00:00
2024-05-02 16:10:18 +00:00
< figure > < img src = "https://pentest.eu/RENDER_WebSec_10fps_21sec_9MB_29042024.gif" alt = "" > < figcaption > < / figcaption > < / figure >
{% embed url="https://websec.nl/" %}
2024-07-19 10:20:41 +00:00
# HTTP Parameter Pollution (HPP) Overview
2020-07-30 08:34:18 +00:00
2024-07-19 10:20:41 +00:00
HTTP Parameter Pollution (HPP) рдПрдХ рддрдХрдиреАрдХ рд╣реИ рдЬрд╣рд╛рдБ рд╣рдорд▓рд╛рд╡рд░ HTTP рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдмрджрд▓рддреЗ рд╣реИрдВ рдХрд┐ рд╡реЗ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдЕрдирдкреЗрдХреНрд╖рд┐рдд рддрд░реАрдХреЛрдВ рд╕реЗ рдмрджрд▓ рджреЗрддреЗ рд╣реИрдВред рдпрд╣ рд╣реЗрд░рдлреЗрд░ HTTP рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдЬреЛрдбрд╝рдиреЗ, рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдпрд╛ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХрд░рдиреЗ рдХреЗ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрди рд╣реЗрд░рдлреЗрд░реЛрдВ рдХрд╛ рдкреНрд░рднрд╛рд╡ рд╕реАрдзреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрддрд╛ рд▓реЗрдХрд┐рди рдпрд╣ рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдкрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд░реВрдк рд╕реЗ рдмрджрд▓ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕рд╛рдЗрдб рдкрд░ рдЕрд╡рд▓реЛрдХрдиреАрдп рдкреНрд░рднрд╛рд╡ рд╣реЛрддрд╛ рд╣реИред
2020-07-30 08:34:18 +00:00
2024-07-19 10:20:41 +00:00
## Example of HTTP Parameter Pollution (HPP)
2020-07-30 08:34:18 +00:00
2024-07-19 10:20:41 +00:00
рдПрдХ рдмреИрдВрдХрд┐рдВрдЧ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЗрдирджреЗрди URL:
2020-07-30 08:34:18 +00:00
2024-07-19 10:20:41 +00:00
- **Original URL:** `https://www.victim.com/send/?from=accountA&to=accountB&amount=10000`
2020-07-30 08:34:18 +00:00
2024-07-19 10:20:41 +00:00
рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд `from` рдкреИрд░рд╛рдореАрдЯрд░ рдЬреЛрдбрд╝рдиреЗ рдкрд░:
2020-07-30 08:34:18 +00:00
2024-07-19 10:20:41 +00:00
- **Manipulated URL:** `https://www.victim.com/send/?from=accountA&to=accountB&amount=10000&from=accountC`
2020-07-30 08:34:18 +00:00
2024-07-19 10:20:41 +00:00
рд▓реЗрдирджреЗрди рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ `accountC` рдкрд░ рдЪрд╛рд░реНрдЬ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдмрдЬрд╛рдп `accountA` рдХреЗ, рдЬреЛ HPP рдХреА рдХреНрд╖рдорддрд╛ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд▓реЗрдирджреЗрди рдпрд╛ рдЕрдиреНрдп рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛рдУрдВ рдЬреИрд╕реЗ рдкрд╛рд╕рд╡рд░реНрдб рд░реАрд╕реЗрдЯ, 2FA рд╕реЗрдЯрд┐рдВрдЧреНрд╕, рдпрд╛ API рдХреБрдВрдЬреА рдЕрдиреБрд░реЛрдзреЛрдВ рдореЗрдВ рд╣реЗрд░рдлреЗрд░ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
2020-07-30 08:34:18 +00:00
2024-07-19 10:20:41 +00:00
### **Technology-Specific Parameter Parsing**
2020-07-30 08:34:18 +00:00
2024-07-19 10:20:41 +00:00
- рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдХреИрд╕реЗ рдкрд╛рд░реНрд╕ рдФрд░ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреА рдЬрд╛рддреА рд╣реИ, рдпрд╣ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╡реЗрдм рддрдХрдиреАрдХ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ HPP рдХреЗ рд╢реЛрд╖рдг рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИред
- [Wappalyzer ](https://addons.mozilla.org/en-US/firefox/addon/wappalyzer/ ) рдЬреИрд╕реЗ рдЙрдкрдХрд░рдг рдЗрди рддрдХрдиреАрдХреЛрдВ рдФрд░ рдЙрдирдХреЗ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддреЗ рд╣реИрдВред
2020-07-30 08:34:18 +00:00
2024-07-19 10:20:41 +00:00
## PHP and HPP Exploitation
2020-07-30 08:34:18 +00:00
2024-07-19 10:20:41 +00:00
**OTP Manipulation Case:**
2020-07-30 08:34:18 +00:00
2024-07-19 10:20:41 +00:00
- **Context:** рдПрдХ рд▓реЙрдЧрд┐рди рддрдВрддреНрд░ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рд╡рди-рдЯрд╛рдЗрдо рдкрд╛рд╕рд╡рд░реНрдб (OTP) рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА, рдХрд╛ рд╢реЛрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛ред
- **Method:** Burp Suite рдЬреИрд╕реЗ рдЙрдкрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ OTP рдЕрдиреБрд░реЛрдз рдХреЛ рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯ рдХрд░рдХреЗ, рд╣рдорд▓рд╛рд╡рд░реЛрдВ рдиреЗ HTTP рдЕрдиреБрд░реЛрдз рдореЗрдВ `email` рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХрд┐рдпрд╛ред
- **Outcome:** OTP, рдЬреЛ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдИрдореЗрд▓ рдХреЗ рд▓рд┐рдП рдерд╛, рдХреЛ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рд╣реЗрд░рдлреЗрд░ рдХрд┐рдП рдЧрдП рдЕрдиреБрд░реЛрдз рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рджреВрд╕рд░реЗ рдИрдореЗрд▓ рдкрддреЗ рдкрд░ рднреЗрдЬрд╛ рдЧрдпрд╛ред рдпрд╣ рджреЛрд╖ рдЕрдирдзрд┐рдХреГрдд рдкрд╣реБрдВрдЪ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬреЛ рд▓рдХреНрд╖рд┐рдд рд╕реБрд░рдХреНрд╖рд╛ рдЙрдкрд╛рдп рдХреЛ рджрд░рдХрд┐рдирд╛рд░ рдХрд░рддрд╛ рд╣реИред
2023-12-31 07:08:04 +00:00
2024-07-19 10:20:41 +00:00
рдпрд╣ рдкрд░рд┐рджреГрд╢реНрдп рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдмреИрдХрдПрдВрдб рдореЗрдВ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЪреВрдХ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдиреЗ OTP рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ `email` рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рд▓реЗрдХрд┐рди рд╡рд┐рддрд░рдг рдХреЗ рд▓рд┐рдП рдЕрдВрддрд┐рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред
2023-12-31 07:08:04 +00:00
2024-07-19 10:20:41 +00:00
**API Key Manipulation Case:**
2023-12-31 07:08:04 +00:00
2024-07-19 10:20:41 +00:00
- **Scenario:** рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЙрдирдХреЗ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдкреГрд╖реНрда рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдкрдиреА API рдХреБрдВрдЬреА рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
- **Attack Vector:** рдПрдХ рд╣рдорд▓рд╛рд╡рд░ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рддрд╛ рд╣реИ рдХрд┐ POST рдЕрдиреБрд░реЛрдз рдореЗрдВ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд `api_key` рдкреИрд░рд╛рдореАрдЯрд░ рдЬреЛрдбрд╝рдХрд░, рд╡реЗ API рдХреБрдВрдЬреА рдЕрдкрдбреЗрдЯ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ рд╣реЗрд░рдлреЗрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
- **Technique:** Burp Suite рдЬреИрд╕реЗ рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рд╣рдорд▓рд╛рд╡рд░ рдПрдХ рдЕрдиреБрд░реЛрдз рддреИрдпрд╛рд░ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рджреЛ `api_key` рдкреИрд░рд╛рдореАрдЯрд░ рд╣реЛрддреЗ рд╣реИрдВ: рдПрдХ рд╡реИрдз рдФрд░ рдПрдХ рджреБрд░реНрднрд╛рд╡рдирд╛рдкреВрд░реНрдгред рд╕рд░реНрд╡рд░, рдХреЗрд╡рд▓ рдЕрдВрддрд┐рдо рдШрдЯрдирд╛ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддреЗ рд╣реБрдП, API рдХреБрдВрдЬреА рдХреЛ рд╣рдорд▓рд╛рд╡рд░ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рдорд╛рди рдкрд░ рдЕрдкрдбреЗрдЯ рдХрд░рддрд╛ рд╣реИред
- **Result:** рд╣рдорд▓рд╛рд╡рд░ рдкреАрдбрд╝рд┐рдд рдХреА API рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ, рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдирд┐рдЬреА рдбреЗрдЯрд╛ рддрдХ рдЕрдирдзрд┐рдХреГрдд рдкрд╣реБрдВрдЪ рдпрд╛ рд╕рдВрд╢реЛрдзрди рдХрд░ рд╕рдХрддрд╛ рд╣реИред
2024-05-02 16:10:18 +00:00
2024-07-19 10:20:41 +00:00
рдпрд╣ рдЙрджрд╛рд╣рд░рдг API рдХреБрдВрдЬреА рдкреНрд░рдмрдВрдзрди рдЬреИрд╕реА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдореЗрдВ рд╕реБрд░рдХреНрд╖рд┐рдд рдкреИрд░рд╛рдореАрдЯрд░ рд╣реИрдВрдбрд▓рд┐рдВрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рдХрд░рддрд╛ рд╣реИред
2024-05-02 16:10:18 +00:00
2024-07-19 10:20:41 +00:00
## Parameter Parsing: Flask vs. PHP
2024-05-02 16:10:18 +00:00
2024-07-19 10:20:41 +00:00
рд╡реЗрдм рддрдХрдиреАрдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ HTTP рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рднрд┐рдиреНрди рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ HPP рд╣рдорд▓реЛрдВ рдХреЗ рдкреНрд░рддрд┐ рдЙрдирдХреА рд╕рдВрд╡реЗрджрдирд╢реАрд▓рддрд╛ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИ:
2024-05-02 16:10:18 +00:00
2024-07-19 10:20:41 +00:00
- **Flask:** рдкрд╣рд▓реЗ рдорд┐рд▓реЗ рдкреИрд░рд╛рдореАрдЯрд░ рдорд╛рди рдХреЛ рдЕрдкрдирд╛рддрд╛ рд╣реИ, рдЬреИрд╕реЗ `a=1` рдПрдХ рдХреНрд╡реЗрд░реА рд╕реНрдЯреНрд░рд┐рдВрдЧ `a=1&a=2` рдореЗрдВ, рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЙрджрд╛рд╣рд░рдг рдХреЛ рдмрд╛рдж рдХреЗ рдбреБрдкреНрд▓рд┐рдХреЗрдЯреНрд╕ рдкрд░ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреЗрддрд╛ рд╣реИред
- **PHP (Apache HTTP Server рдкрд░):** рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рдЕрдВрддрд┐рдо рдкреИрд░рд╛рдореАрдЯрд░ рдорд╛рди рдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреЗрддрд╛ рд╣реИ, рджрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг рдореЗрдВ `a=2` рдХрд╛ рдЪрдпрди рдХрд░рддрд╛ рд╣реИред рдпрд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рдЕрдирдЬрд╛рдиреЗ рдореЗрдВ HPP рд╢реЛрд╖рдг рдХреЛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИ, рд╣рдорд▓рд╛рд╡рд░ рджреНрд╡рд╛рд░рд╛ рд╣реЗрд░рдлреЗрд░ рдХрд┐рдП рдЧрдП рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдореВрд▓ рдкрд░ рд╕рдореНрдорд╛рдирд┐рдд рдХрд░рддреЗ рд╣реБрдПред
2024-05-02 16:10:18 +00:00
2024-07-19 10:20:41 +00:00
## References
2024-05-02 16:10:18 +00:00
* [https://medium.com/@shahjerry33/http-parameter-pollution-its-contaminated-85edc0805654 ](https://medium.com/@shahjerry33/http-parameter-pollution-its-contaminated-85edc0805654 )
* [https://github.com/google/google-ctf/tree/master/2023/web-under-construction/solution ](https://github.com/google/google-ctf/tree/master/2023/web-under-construction/solution )
< figure > < img src = "https://pentest.eu/RENDER_WebSec_10fps_21sec_9MB_29042024.gif" alt = "" > < figcaption > < / figcaption > < / figure >
{% embed url="https://websec.nl/" %}
2024-07-19 10:20:41 +00:00
{% hint style="success" %}
Learn & practice AWS Hacking:< img src = "/.gitbook/assets/arte.png" alt = "" data-size = "line" > [**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)< img src = "/.gitbook/assets/arte.png" alt = "" data-size = "line" > \
Learn & practice GCP Hacking: < img src = "/.gitbook/assets/grte.png" alt = "" data-size = "line" > [**HackTricks Training GCP Red Team Expert (GRTE)**< img src = "/.gitbook/assets/grte.png" alt = "" data-size = "line" > ](https://training.hacktricks.xyz/courses/grte)
2024-05-02 16:10:18 +00:00
< details >
2024-07-19 10:20:41 +00:00
< summary > Support HackTricks< / summary >
2024-05-02 16:10:18 +00:00
2024-07-19 10:20:41 +00:00
* Check the [**subscription plans** ](https://github.com/sponsors/carlospolop )!
* **Join the** ЁЯТм [**Discord group** ](https://discord.gg/hRep4RUj7f ) or the [**telegram group** ](https://t.me/peass ) or **follow** us on **Twitter** ЁЯРж [**@hacktricks\_live** ](https://twitter.com/hacktricks\_live )**.**
* **Share hacking tricks by submitting PRs to the** [**HackTricks** ](https://github.com/carlospolop/hacktricks ) and [**HackTricks Cloud** ](https://github.com/carlospolop/hacktricks-cloud ) github repos.
2024-05-02 16:10:18 +00:00
2024-07-19 10:20:41 +00:00
< / details >
{% endhint %}