9.7 KiB
403 & 401 Umgehungen
Erlernen Sie AWS-Hacking von Null auf Heldenniveau mit htARTE (HackTricks AWS Red Team Expert)!
Andere Möglichkeiten, HackTricks zu unterstützen:
- Wenn Sie Ihr Unternehmen in HackTricks beworben sehen möchten oder HackTricks im PDF-Format herunterladen möchten, überprüfen Sie die ABONNEMENTPLÄNE!
- Holen Sie sich das offizielle PEASS & HackTricks-Merchandise
- Entdecken Sie The PEASS Family, unsere Sammlung exklusiver NFTs
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @carlospolopm.
- Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repositories einreichen.
Sofort verfügbare Einrichtung für Schwachstellenbewertung & Penetrationstests. Führen Sie einen vollständigen Pentest von überall aus mit 20+ Tools & Funktionen durch, die von der Aufklärung bis zum Bericht reichen. Wir ersetzen keine Pentester - wir entwickeln benutzerdefinierte Tools, Erkennungs- & Exploit-Module, um ihnen etwas Zeit zurückzugeben, um tiefer zu graben, Shells zu öffnen und Spaß zu haben.
{% embed url="https://pentest-tools.com/" %}
Fuzzing von HTTP-Verben/Methoden
Versuchen Sie, verschiedene Verben zu verwenden, um auf die Datei zuzugreifen: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH, INVENTED, HACK
- Überprüfen Sie die Antwortheader, möglicherweise werden einige Informationen angezeigt. Zum Beispiel bedeutet eine 200-Antwort auf HEAD mit
Content-Length: 55
, dass das HEAD-Verb auf die Informationen zugreifen kann. Sie müssen jedoch immer noch einen Weg finden, um diese Informationen zu exfiltrieren. - Die Verwendung eines HTTP-Headers wie
X-HTTP-Method-Override: PUT
kann das verwendete Verb überschreiben. - Verwenden Sie das
TRACE
-Verb und wenn Sie sehr viel Glück haben, können Sie möglicherweise auch die von Zwischenproxys hinzugefügten Header in der Antwort sehen, die nützlich sein könnten.
Fuzzing von HTTP-Headern
-
Ändern Sie den Host-Header in einen beliebigen Wert (der hier funktioniert hat)
-
Versuchen Sie, andere User Agents zu verwenden, um auf die Ressource zuzugreifen.
-
Fuzz HTTP-Header: Versuchen Sie, HTTP-Proxy-Header, HTTP-Authentifizierung Basic und NTLM-Brute-Force (nur mit einigen Kombinationen) und andere Techniken zu verwenden. Hierfür habe ich das Tool fuzzhttpbypass erstellt.
-
X-Originating-IP: 127.0.0.1
-
X-Forwarded-For: 127.0.0.1
-
X-Forwarded: 127.0.0.1
-
Forwarded-For: 127.0.0.1
-
X-Remote-IP: 127.0.0.1
-
X-Remote-Addr: 127.0.0.1
-
X-ProxyUser-Ip: 127.0.0.1
-
X-Original-URL: 127.0.0.1
-
Client-IP: 127.0.0.1
-
True-Client-IP: 127.0.0.1
-
Cluster-Client-IP: 127.0.0.1
-
X-ProxyUser-Ip: 127.0.0.1
-
Host: localhost
Wenn der Pfad geschützt ist, können Sie versuchen, den Pfadschutz mit diesen anderen Headern zu umgehen:
X-Original-URL: /admin/console
X-Rewrite-URL: /admin/console
- Wenn die Seite hinter einem Proxy liegt, ist es möglicherweise der Proxy, der Sie daran hindert, auf die privaten Informationen zuzugreifen. Versuchen Sie, HTTP-Request-Smuggling oder hop-by-hop-Header** zu missbrauchen**.
- Fuzz spezielle HTTP-Header, um nach unterschiedlichen Antworten zu suchen.
- Fuzzen Sie spezielle HTTP-Header beim Fuzzing von HTTP-Methoden.
- Entfernen Sie den Host-Header und möglicherweise können Sie den Schutz umgehen.
Pfad-Fuzzing
Wenn /Pfad blockiert ist:
- Versuchen Sie /%2e/Pfad _(wenn der Zugriff durch einen Proxy blockiert ist, könnte dies den Schutz umgehen). Versuchen Sie auch_** /%252e**/Pfad (doppelte URL-Codierung)
- Versuchen Sie Unicode-Bypass: /%ef%bc%8fPfad (Die URL-codierten Zeichen sind wie "/"), sodass sie beim Zurückcodieren //Pfad sein werden und möglicherweise haben Sie bereits die /Pfad-Namensprüfung umgangen
- Andere Pfadumgehungen:
- site.com/geheim –> HTTP 403 Forbidden
- site.com/GEHEIM –> HTTP 200 OK
- site.com/geheim/ –> HTTP 200 OK
- site.com/geheim/. –> HTTP 200 OK
- site.com//geheim// –> HTTP 200 OK
- site.com/./geheim/.. –> HTTP 200 OK
- site.com/;/geheim –> HTTP 200 OK
- site.com/.;/geheim –> HTTP 200 OK
- site.com//;//geheim –> HTTP 200 OK
- site.com/geheim.json –> HTTP 200 OK (ruby)
- Verwenden Sie all diese Liste in den folgenden Situationen:
- /FUZZgeheim
- /FUZZ/geheim
- /geheimFUZZ
- Andere API-Umgehungen:
- /v3/Benutzer_Daten/1234 --> 403 Forbidden
- /v1/Benutzer_Daten/1234 --> 200 OK
- {“id”:111} --> 401 Unbefugt
- {“id”:[111]} --> 200 OK
- {“id”:111} --> 401 Unbefugt
- {“id”:{“id”:111}} --> 200 OK
- {"Benutzer_ID":"<legit_id>","Benutzer_ID":"<opfer_id>"} (JSON-Parameter-Pollution)
- Benutzer_ID=ANGREIFER_ID&Benutzer_ID=OPFER_ID (Parameter-Pollution)
Parametermanipulation
- Ändern Sie den Parametewert: Von
id=123
-->id=124
- Fügen Sie zusätzliche Parameter zur URL hinzu:
?
id=124
—->id=124&isAdmin=true
- Entfernen Sie die Parameter
- Ordnen Sie die Parameter neu an
- Verwenden Sie Sonderzeichen.
- Führen Sie Grenzwerttests in den Parametern durch - geben Sie Werte wie -234 oder 0 oder 99999999 an (nur einige Beispiellwerte).
Protokollversion
Wenn Sie HTTP/1.1 verwenden, versuchen Sie, 1.0 zu verwenden oder testen Sie sogar, ob es 2.0 unterstützt.
Andere Umgehungen
- Holen Sie sich die IP oder CNAME der Domain und versuchen Sie, direkt Kontakt aufzunehmen.
- Versuchen Sie, den Server zu überlasten, indem Sie häufige GET-Anfragen senden (Es hat bei diesem Typen mit Facebook funktioniert).
- Ändern Sie das Protokoll: von http zu https oder von https zu http
- Gehen Sie zu https://archive.org/web/ und prüfen Sie, ob diese Datei in der Vergangenheit weltweit zugänglich war.
Brute Force
- Erraten Sie das Passwort: Testen Sie die folgenden gängigen Anmeldeinformationen. Wissen Sie etwas über das Opfer? Oder den Namen der CTF-Herausforderung?
- Brute Force: Versuchen Sie grundlegende, Digest- und NTLM-Authentifizierung.
{% code title="Gängige Anmeldeinformationen" %}
admin admin
admin password
admin 1234
admin admin1234
admin 123456
root toor
test test
guest guest
{% endcode %}
Automatische Tools
- https://github.com/lobuhi/byp4xx
- https://github.com/iamj0ker/bypass-403
- https://github.com/gotr00t0day/forbiddenpass
- Burp-Erweiterung - 403 Bypasser
- Forbidden Buster
Sofort einsatzbereite Einrichtung für Schwachstellenbewertung und Penetrationstests. Führen Sie einen vollständigen Pentest von überall aus mit 20+ Tools & Funktionen durch, die von der Aufklärung bis zum Bericht reichen. Wir ersetzen keine Pentester - wir entwickeln benutzerdefinierte Tools, Erkennungs- und Exploit-Module, um ihnen etwas Zeit zu geben, tiefer zu graben, Shells zu öffnen und Spaß zu haben.
{% embed url="https://pentest-tools.com/" %}
Erlernen Sie AWS-Hacking von Null auf Heldenniveau mit htARTE (HackTricks AWS Red Team Expert)!
Andere Möglichkeiten, HackTricks zu unterstützen:
- Wenn Sie Ihr Unternehmen in HackTricks beworben sehen möchten oder HackTricks im PDF-Format herunterladen möchten, überprüfen Sie die ABONNEMENTPLÄNE!
- Holen Sie sich das offizielle PEASS & HackTricks-Merch
- Entdecken Sie The PEASS Family, unsere Sammlung exklusiver NFTs
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @carlospolopm.
- Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud github Repositories einreichen.