hacktricks/network-services-pentesting/pentesting-web/403-and-401-bypasses.md

155 lines
9.7 KiB
Markdown
Raw Normal View History

2024-02-10 15:36:32 +00:00
# 403 & 401 Umgehungen
2022-04-28 16:01:33 +00:00
<details>
2024-02-10 15:36:32 +00:00
<summary><strong>Lernen Sie AWS-Hacking von Grund auf mit</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-10 15:36:32 +00:00
Andere Möglichkeiten, HackTricks zu unterstützen:
2024-01-02 18:28:27 +00:00
2024-02-10 15:36:32 +00:00
* Wenn Sie Ihr **Unternehmen in HackTricks bewerben möchten** oder **HackTricks als PDF herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merchandise**](https://peass.creator-spring.com)
* Entdecken Sie [**The PEASS Family**](https://opensea.io/collection/the-peass-family), unsere Sammlung exklusiver [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegramm-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-Repositories senden.
2022-04-28 16:01:33 +00:00
</details>
2024-01-11 13:23:18 +00:00
<figure><img src="/.gitbook/assets/image (2).png" alt=""><figcaption></figcaption></figure>
2024-02-10 15:36:32 +00:00
**Sofort verfügbare Einrichtung für Schwachstellenbewertung und Penetrationstests**. Führen Sie einen vollständigen Penetrationstest von überall aus mit über 20 Tools und Funktionen durch, die von der Aufklärung bis zum Bericht reichen. Wir ersetzen keine Penetrationstester - wir entwickeln benutzerdefinierte Tools, Erkennungs- und Exploit-Module, um ihnen etwas Zeit zu geben, um tiefer zu graben, Shells zu öffnen und Spaß zu haben.
2024-01-11 13:23:18 +00:00
{% embed url="https://pentest-tools.com/" %}
2024-02-10 15:36:32 +00:00
## 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 können einige Informationen angegeben werden. 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.
* Mit einem HTTP-Header wie `X-HTTP-Method-Override: PUT` kann das verwendete Verb überschrieben werden.
* Verwenden Sie das **`TRACE`**-Verb und wenn Sie sehr viel Glück haben, können Sie möglicherweise in der Antwort auch die **von Zwischenproxys hinzugefügten Header** sehen, die nützlich sein könnten.
## Fuzzing von HTTP-Headern
* Ändern Sie den Host-Header auf einen beliebigen Wert ([der hier funktioniert hat](https://medium.com/@sechunter/exploiting-admin-panel-like-a-boss-fc2dd2499d31))
* Versuchen Sie, [**andere User Agents**](https://github.com/danielmiessler/SecLists/blob/master/Fuzzing/User-Agents/UserAgents.fuzz.txt) zu verwenden, um auf die Ressource zuzugreifen.
* **Fuzzen Sie 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**](https://github.com/carlospolop/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 möglicherweise der Proxy derjenige, der verhindert, dass Sie auf die privaten Informationen zugreifen. Versuchen Sie, [**HTTP Request Smuggling**](../../pentesting-web/http-request-smuggling/) **oder** [**hop-by-hop headers**](../../pentesting-web/abusing-hop-by-hop-headers.md)** zu missbrauchen.**
* Fuzzing von [**speziellen HTTP-Headern**](special-http-headers.md), 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 _/path_ blockiert ist:
* Versuchen Sie _**/**_**%2e/path \_(wenn der Zugriff von einem Proxy blockiert wird, könnte dies den Schutz umgehen). Versuchen Sie auch**\_\*\* /%252e\*\*/path (doppelte URL-Codierung)
* Versuchen Sie den **Unicode-Bypass**: _/**%ef%bc%8f**path_ (Die URL-codierten Zeichen sind wie "/"), sodass sie beim erneuten Codieren _//path_ sein werden und Sie möglicherweise bereits die _/path_-Namensprüfung umgangen haben
* **Andere Pfad-Umgehungen**:
* site.com/secret > HTTP 403 Forbidden
* site.com/SECRET > HTTP 200 OK
* site.com/secret/ > HTTP 200 OK
* site.com/secret/. > HTTP 200 OK
* site.com//secret// > HTTP 200 OK
* site.com/./secret/.. > HTTP 200 OK
* site.com/;/secret > HTTP 200 OK
* site.com/.;/secret > HTTP 200 OK
* site.com//;//secret > HTTP 200 OK
* site.com/secret.json > HTTP 200 OK (ruby)
* Verwenden Sie diese gesamte [**Liste**](https://github.com/danielmiessler/SecLists/blob/master/Fuzzing/Unicode.txt) in den folgenden Situationen:
* /FUZZsecret
* /FUZZ/secret
* /secretFUZZ
* **Andere API-Umgehungen:**
* /v3/users\_data/1234 --> 403 Forbidden
* /v1/users\_data/1234 --> 200 OK
* {“id”:111} --> 401 Unauthriozied
* {“id”:\[111]} --> 200 OK
* {“id”:111} --> 401 Unauthriozied
* {“id”:{“id”:111\}} --> 200 OK
* {"user\_id":"\<legit\_id>","user\_id":"\<victims\_id>"} (JSON Parameter Pollution)
* user\_id=ATTACKER\_ID\&user\_id=VICTIM\_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
* Reihenfolge der Parameter ändern
* Verwenden Sie Sonderzeichen.
* Führen Sie Grenzwerttests in den Parametern durch - geben Sie Werte wie _-234_ oder _0_ oder _99999999_ an (nur einige Beispiele für Werte).
## **Protokollversion**
Wenn Sie HTTP/1.1 verwenden, **versuchen Sie es mit 1.0** 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 gängige GET-Anfragen senden ([Es hat bei diesem Kerl mit Facebook funktioniert](https://medium.com/@amineaboud/story-of-a-weird-vulnerability-i-found-on-facebook-fc0875eb5125)).
* **Ändern Sie das Protokoll**: von http zu https oder von https zu http
* Gehen Sie zu [**https://archive.org/web/**](https://archive.org/web/) und überprüfen Sie, ob diese Datei in der Vergangenheit **weltweit zugänglich** war.
2021-09-19 15:52:48 +00:00
2022-05-01 13:25:53 +00:00
## **Brute Force**
2021-09-19 15:52:48 +00:00
2024-02-10 15:36:32 +00:00
* **Raten Sie das Passwort**: Testen Sie die folgenden gängigen Anmeldeinformationen. Wissen Sie etwas über das Opfer? Oder den Namen der CTF-Herausforderung?
* [**Brute Force**](../../generic-methodologies-and-resources/brute-force.md#http-brute)**:** Versuchen Sie grundlegende, Digest- und NTLM-Authentifizierung.
2022-05-01 13:25:53 +00:00
2024-02-10 15:36:32 +00:00
{% code title="Gängige Anmeldeinformationen" %}
2022-05-01 13:25:53 +00:00
```
admin admin
admin password
admin 1234
admin admin1234
admin 123456
root toor
test test
guest guest
```
{% endcode %}
2024-02-10 15:36:32 +00:00
## Automatische Tools
2022-04-22 08:32:18 +00:00
* [https://github.com/lobuhi/byp4xx](https://github.com/lobuhi/byp4xx)
* [https://github.com/iamj0ker/bypass-403](https://github.com/iamj0ker/bypass-403)
* [https://github.com/gotr00t0day/forbiddenpass](https://github.com/gotr00t0day/forbiddenpass)
2024-02-10 15:36:32 +00:00
* [Burp-Erweiterung - 403 Bypasser](https://portswigger.net/bappstore/444407b96d9c4de0adb7aed89e826122)
2023-10-21 12:30:38 +00:00
* [Forbidden Buster](https://github.com/Sn1r/Forbidden-Buster)
2022-04-28 16:01:33 +00:00
2024-01-11 13:23:18 +00:00
<figure><img src="/.gitbook/assets/image (2).png" alt=""><figcaption></figcaption></figure>
2024-02-10 15:36:32 +00:00
**Sofort einsatzbereite Einrichtung für Schwachstellenbewertung und Penetrationstests**. Führen Sie einen vollständigen Pentest von überall aus mit über 20 Tools und 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, um tiefer zu graben, Shells zu öffnen und Spaß zu haben.
2024-01-11 13:23:18 +00:00
{% embed url="https://pentest-tools.com/" %}
2022-04-28 16:01:33 +00:00
<details>
2024-02-10 15:36:32 +00:00
<summary><strong>Lernen Sie AWS-Hacking von Null auf Held mit</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-10 15:36:32 +00:00
Andere Möglichkeiten, HackTricks zu unterstützen:
2024-01-02 18:28:27 +00:00
2024-02-10 15:36:32 +00:00
* Wenn Sie Ihr **Unternehmen in HackTricks bewerben möchten** oder **HackTricks als PDF herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merchandise**](https://peass.creator-spring.com)
* Entdecken Sie [**The PEASS Family**](https://opensea.io/collection/the-peass-family), unsere Sammlung exklusiver [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-Repositories senden.
2022-04-28 16:01:33 +00:00
</details>