hacktricks/network-services-pentesting/pentesting-web/web-api-pentesting.md

107 lines
7.3 KiB
Markdown
Raw Normal View History

2024-02-10 15:36:32 +00:00
# Web-API-Pentesting
2022-04-28 16:01:33 +00:00
<details>
2024-02-10 15:36:32 +00:00
<summary>Lernen Sie AWS-Hacking von Grund auf mit <a href="https://training.hacktricks.xyz/courses/arte">htARTE (HackTricks AWS Red Team Expert)</a>!</summary>
2022-04-28 16:01:33 +00:00
2024-02-10 15:36:32 +00:00
Andere Möglichkeiten, HackTricks zu unterstützen:
2023-12-31 01:24:39 +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
- Entdecken Sie die PEASS-Familie, unsere Sammlung exklusiver NFTs
- Treten Sie der Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter
- Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die HackTricks- und HackTricks Cloud-GitHub-Repositories senden.
2022-04-28 16:01:33 +00:00
</details>
<figure><img src="../../.gitbook/assets/image (3) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
2022-06-06 22:28:05 +00:00
2024-02-10 15:36:32 +00:00
Verwenden Sie [Trickest](https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks), um Workflows einfach zu erstellen und zu automatisieren, die von den fortschrittlichsten Community-Tools der Welt unterstützt werden.\
Erhalten Sie noch heute Zugriff:
2022-06-06 22:28:05 +00:00
2023-01-01 16:19:07 +00:00
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
2022-06-06 22:28:05 +00:00
2021-06-08 18:47:44 +00:00
2024-02-10 15:36:32 +00:00
## Zusammenfassung der API-Pentesting-Methodik
2021-06-08 18:47:44 +00:00
2024-02-10 15:36:32 +00:00
Das Pentesting von APIs erfordert einen strukturierten Ansatz zur Aufdeckung von Schwachstellen. Dieser Leitfaden umfasst eine umfassende Methodik und legt den Schwerpunkt auf praktische Techniken und Tools.
2024-02-10 15:36:32 +00:00
### **Verständnis der API-Typen**
2022-12-21 10:38:32 +00:00
2024-02-10 15:36:32 +00:00
- **SOAP/XML-Webdienste**: Verwenden Sie das WSDL-Format für die Dokumentation, das normalerweise unter `?wsdl`-Pfaden zu finden ist. Tools wie **SOAPUI** und **WSDLer** (Burp Suite-Erweiterung) sind hilfreich zum Parsen und Generieren von Anfragen. Beispiel-Dokumentation ist unter [DNE Online](http://www.dneonline.com/calculator.asmx) verfügbar.
2022-12-21 10:38:32 +00:00
2024-02-10 15:36:32 +00:00
- **REST-APIs (JSON)**: Die Dokumentation erfolgt oft in WADL-Dateien, aber Tools wie [Swagger UI](https://swagger.io/tools/swagger-ui/) bieten eine benutzerfreundlichere Schnittstelle für die Interaktion. **Postman** ist ein wertvolles Tool zum Erstellen und Verwalten von Beispielanfragen.
2024-02-10 15:36:32 +00:00
- **GraphQL**: Eine Abfragesprache für APIs, die eine vollständige und verständliche Beschreibung der Daten in Ihrer API bietet.
2024-02-10 15:36:32 +00:00
### **Praktische Übungslabore**
2024-02-10 15:36:32 +00:00
- [**VAmPI**](https://github.com/erev0s/VAmPI): Eine absichtlich verwundbare API für praktische Übungen, die die OWASP Top 10 API-Schwachstellen abdeckt.
2024-02-10 15:36:32 +00:00
### **Effektive Tricks für API-Pentesting**
2024-02-10 15:36:32 +00:00
- **SOAP/XML-Schwachstellen**: Untersuchen Sie XXE-Schwachstellen, obwohl DTD-Deklarationen oft eingeschränkt sind. CDATA-Tags können die Einfügung von Payloads ermöglichen, wenn das XML gültig bleibt.
2024-02-10 15:36:32 +00:00
- **Privilege Escalation**: Testen Sie Endpunkte mit unterschiedlichen Privilegien, um unbefugten Zugriffsmöglichkeiten zu identifizieren.
2024-02-10 15:36:32 +00:00
- **CORS-Fehlkonfigurationen**: Untersuchen Sie CORS-Einstellungen auf potenzielle Ausnutzbarkeit durch CSRF-Angriffe aus authentifizierten Sitzungen.
2024-02-10 15:36:32 +00:00
- **Endpunktentdeckung**: Nutzen Sie API-Muster, um versteckte Endpunkte zu entdecken. Tools wie Fuzzer können diesen Prozess automatisieren.
2024-02-10 15:36:32 +00:00
- **Parametermanipulation**: Experimentieren Sie mit dem Hinzufügen oder Ersetzen von Parametern in Anfragen, um auf nicht autorisierte Daten oder Funktionen zuzugreifen.
2024-02-10 15:36:32 +00:00
- **HTTP-Methodentests**: Variieren Sie die Anfragemethoden (GET, POST, PUT, DELETE, PATCH), um unerwartetes Verhalten oder Offenlegungen von Informationen aufzudecken.
2024-02-10 15:36:32 +00:00
- **Content-Type-Manipulation**: Wechseln Sie zwischen verschiedenen Content-Typen (x-www-form-urlencoded, application/xml, application/json), um Parsing-Probleme oder Schwachstellen zu testen.
2024-02-10 15:36:32 +00:00
- **Erweiterte Parameter-Techniken**: Testen Sie mit unerwarteten Datentypen in JSON-Payloads oder spielen Sie mit XML-Daten für XXE-Injektionen. Versuchen Sie auch Parameter-Pollution und Platzhalterzeichen für umfassendere Tests.
2024-02-10 15:36:32 +00:00
- **Versionstests**: Ältere API-Versionen könnten anfälliger für Angriffe sein. Überprüfen Sie immer mehrere API-Versionen und testen Sie gegen sie.
2024-02-10 15:36:32 +00:00
### **Tools und Ressourcen für API-Pentesting**
2024-02-10 15:36:32 +00:00
- **kiterunner**: Hervorragend zur Entdeckung von API-Endpunkten. Verwenden Sie es, um Pfade und Parameter gegen Ziel-APIs zu scannen und Brute-Force-Angriffe durchzuführen.
2024-02-08 21:36:15 +00:00
```bash
kr scan https://domain.com/api/ -w routes-large.kite -x 20
kr scan https://domain.com/api/ -A=apiroutes-220828 -x 20
kr brute https://domain.com/api/ -A=raft-large-words -x 20 -d=0
kr brute https://domain.com/api/ -w /tmp/lang-english.txt -x 20 -d=0
```
2024-02-10 15:36:32 +00:00
- Zusätzliche Tools wie **automatic-api-attack-tool**, **Astra** und **restler-fuzzer** bieten maßgeschneiderte Funktionen für die Sicherheitstests von APIs, von Angriffssimulation über Fuzzing bis hin zur Schwachstellenanalyse.
2024-02-10 15:36:32 +00:00
### **Lern- und Übungsressourcen**
2024-02-10 15:36:32 +00:00
- **OWASP API Security Top 10**: Wesentliche Lektüre zum Verständnis gängiger API-Schwachstellen ([OWASP Top 10](https://github.com/OWASP/API-Security/blob/master/2019/en/dist/owasp-api-security-top-10.pdf)).
2022-09-30 10:27:15 +00:00
2024-02-10 15:36:32 +00:00
- **API Security Checklist**: Eine umfassende Checkliste zur Absicherung von APIs ([GitHub-Link](https://github.com/shieldfy/API-Security-Checklist)).
2022-09-27 09:36:19 +00:00
2024-02-10 15:36:32 +00:00
- **Logger++-Filter**: Für die Suche nach API-Schwachstellen bietet Logger++ nützliche Filter ([GitHub-Link](https://github.com/bnematzadeh/LoggerPlusPlus-API-Filters)).
2024-02-10 15:36:32 +00:00
- **API-Endpunkte-Liste**: Eine kuratierte Liste potenzieller API-Endpunkte für Testzwecke ([GitHub-Gist](https://gist.github.com/yassineaboukir/8e12adefbd505ef704674ad6ad48743d)).
2024-02-10 15:36:32 +00:00
## Referenzen
2024-02-08 21:36:15 +00:00
* [https://github.com/Cyber-Guy1/API-SecurityEmpire](https://github.com/Cyber-Guy1/API-SecurityEmpire)
2022-09-05 10:17:20 +00:00
2022-04-28 16:01:33 +00:00
<figure><img src="../../.gitbook/assets/image (3) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
2022-06-06 22:28:05 +00:00
2024-02-10 15:36:32 +00:00
Verwenden Sie [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks), um Workflows einfach zu erstellen und zu automatisieren, die von den fortschrittlichsten Community-Tools der Welt unterstützt werden.\
Erhalten Sie noch heute Zugriff:
2022-06-06 22:28:05 +00:00
2023-01-01 16:19:07 +00:00
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
2022-06-06 22:28:05 +00:00
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:
2023-12-31 01:24:39 +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>