Zum Inhalt springen

Nächste Ausgabe 7. September 2026

HTTP Method Tampering

HTTP Method Tampering, auch Verb Tampering genannt, ist eine Angriffstechnik, bei der die HTTP-Methode eines Requests (GET, POST, HEAD, OPTIONS, PUT, DELETE, TRACE) geändert wird, um Sicherheitskontrollen zu umgehen, die nur bestimmte Methoden schützen. Ein häufiges Ergebnis ist das Umgehen der Authentifizierung oder von Zugriffskontrollen, die ein Entwickler nur für GET und POST konfiguriert hat.

Autor
Unihackers Team
Lesezeit
2 Min. Lesezeit
Zuletzt aktualisiert

Warum es wichtig ist

Zugriffskontrollen bewachen oft nur die Türen, von denen Entwickler erwarten, dass Angreifer sie nutzen. Eine Login-Wand vor GET und POST kann HEAD, OPTIONS, PUT und TRACE weit offen lassen, und ein Angreifer, der einfach das Verb wechselt, spaziert geradewegs hinein. Weil die Kontrolle in einem normalen Browser, in dem jeder Request ein GET oder ein POST ist, weiterhin korrekt aussieht, kann dieser Fehler in der Produktion jahrelang überleben.

HTTP Method Tampering ist eine Lehrbuchform von Broken Access Control, dem Risiko Nummer eins in den OWASP Top 10, und es ist trivial zu testen, sobald du einen Request mit einem Proxy wie Burp Suite abfängst.

Wie es funktioniert

Eine geschützte Admin-Ressource gibt im Browser 401 zurück. Der Tester fängt den Request ab und sendet ihn mit verschiedenen Methoden erneut, ohne sonst etwas zu ändern:

code
GET     /admin   ->  401 Unauthorized
POST    /admin   ->  401 Unauthorized
HEAD    /admin   ->  200 OK
OPTIONS /admin   ->  200 OK

Das 200 bei HEAD bedeutet, dass der Server den Request als gültig verarbeitet hat. Die zugrunde liegende Fehlkonfiguration sieht meist wie ein Apache-Block aus, der nur zwei Methoden auflistet:

apache
<Limit GET POST>
  require valid-user
</Limit>

Alles, was nicht benannt ist, HEAD, OPTIONS, TRACE und PUT, überspringt die Authentifizierungsprüfung vollständig. Eine verwandte Variante missbraucht Frameworks, die eine unerwartete Methode an denselben Handler routen, aber einen anderen, schwächeren Autorisierungspfad anwenden.

Warum es fortbesteht

Der Bug überlebt, weil Entwickler über die zwei Methoden nachdenken, die ein Browser tatsächlich nutzt, und den Rest der HTTP-Spezifikation vergessen. Eine Allow-List fühlt sich sicher an, doch jede Methode, die von der Liste fehlt, erbt keinen Schutz. Load Balancer, alte mod_auth-Regeln und kopierte Konfigurationsschnipsel verbreiten dasselbe Muster über viele Anwendungen hinweg.

Wie du darauf testest

Sende für jeden geschützten Endpunkt den Request über den vollständigen Methodensatz erneut: GET, POST, PUT, DELETE, HEAD, OPTIONS, PATCH und TRACE. Achte auf jede Methode, die einen 200 oder einen abweichenden Body zurückgibt, und vergleiche Statuscodes sorgfältig, denn ein 405 ist gesund, während ein 200 bei einem unerwarteten Verb ein Fund ist. Beliebige oder erfundene Methoden offenbaren manchmal eine noch lockerere Behandlung.

Prävention

Erzwinge die Autorisierung standardmäßig auf allen Methoden und lass nur die Verben zu, die ein Endpunkt tatsächlich braucht. Ersetze methodenspezifische Konfigurationsblöcke durch eine Deny-by-default-Richtlinie, gib 405 für nicht unterstützte Methoden zurück, deaktiviere TRACE und teste jeden beschränkten Endpunkt mit dem vollständigen Methodensatz, um zu prüfen, dass die Kontrolle nicht umgangen werden kann.

Im Bootcamp

Wie wir HTTP Method Tampering unterrichten

In unserem Cybersecurity Bootcamp lernen Sie nicht nur HTTP Method Tampering in der Theorie, sondern üben mit echten Tools in praktischen Labs, angeleitet von Branchenfachleuten, die diese Konzepte täglich anwenden.

Behandelt in:

Modul 10: Penetrationstests und Ethisches Hacking

Verwandte Themen, die Sie beherrschen werden:MetasploitNmapBurp SuitePrivilege Escalation
Sehen Sie, wie wir das unterrichten

360+ Stunden Expertentraining • CompTIA Security+ inklusive