# Web-API-Pentesting
Lernen Sie AWS-Hacking von Grund auf mit htARTE (HackTricks AWS Red Team Expert)!
Andere Möglichkeiten, HackTricks zu unterstützen:
- 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.
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:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
## Zusammenfassung der API-Pentesting-Methodik
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.
### **Verständnis der API-Typen**
- **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.
- **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.
- **GraphQL**: Eine Abfragesprache für APIs, die eine vollständige und verständliche Beschreibung der Daten in Ihrer API bietet.
### **Praktische Übungslabore**
- [**VAmPI**](https://github.com/erev0s/VAmPI): Eine absichtlich verwundbare API für praktische Übungen, die die OWASP Top 10 API-Schwachstellen abdeckt.
### **Effektive Tricks für API-Pentesting**
- **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.
- **Privilege Escalation**: Testen Sie Endpunkte mit unterschiedlichen Privilegien, um unbefugten Zugriffsmöglichkeiten zu identifizieren.
- **CORS-Fehlkonfigurationen**: Untersuchen Sie CORS-Einstellungen auf potenzielle Ausnutzbarkeit durch CSRF-Angriffe aus authentifizierten Sitzungen.
- **Endpunktentdeckung**: Nutzen Sie API-Muster, um versteckte Endpunkte zu entdecken. Tools wie Fuzzer können diesen Prozess automatisieren.
- **Parametermanipulation**: Experimentieren Sie mit dem Hinzufügen oder Ersetzen von Parametern in Anfragen, um auf nicht autorisierte Daten oder Funktionen zuzugreifen.
- **HTTP-Methodentests**: Variieren Sie die Anfragemethoden (GET, POST, PUT, DELETE, PATCH), um unerwartetes Verhalten oder Offenlegungen von Informationen aufzudecken.
- **Content-Type-Manipulation**: Wechseln Sie zwischen verschiedenen Content-Typen (x-www-form-urlencoded, application/xml, application/json), um Parsing-Probleme oder Schwachstellen zu testen.
- **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.
- **Versionstests**: Ältere API-Versionen könnten anfälliger für Angriffe sein. Überprüfen Sie immer mehrere API-Versionen und testen Sie gegen sie.
### **Tools und Ressourcen für API-Pentesting**
- **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.
```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
```
- 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.
### **Lern- und Übungsressourcen**
- **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)).
- **API Security Checklist**: Eine umfassende Checkliste zur Absicherung von APIs ([GitHub-Link](https://github.com/shieldfy/API-Security-Checklist)).
- **Logger++-Filter**: Für die Suche nach API-Schwachstellen bietet Logger++ nützliche Filter ([GitHub-Link](https://github.com/bnematzadeh/LoggerPlusPlus-API-Filters)).
- **API-Endpunkte-Liste**: Eine kuratierte Liste potenzieller API-Endpunkte für Testzwecke ([GitHub-Gist](https://gist.github.com/yassineaboukir/8e12adefbd505ef704674ad6ad48743d)).
## Referenzen
* [https://github.com/Cyber-Guy1/API-SecurityEmpire](https://github.com/Cyber-Guy1/API-SecurityEmpire)
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:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
Lernen Sie AWS-Hacking von Grund auf mithtARTE (HackTricks AWS Red Team Expert)!
Andere Möglichkeiten, HackTricks zu unterstützen:
* 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.