# Web-API-Pentesting
Lernen Sie AWS-Hacking von Null auf Held 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**](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 einreichen.
Verwenden Sie [**Trickest**](https://trickest.com/?utm\_source=hacktricks\&utm\_medium=text\&utm\_campaign=ppc\&utm\_term=trickest\&utm\_content=web-api-pentesting), um mühelos Workflows zu erstellen und zu **automatisieren**, die von den weltweit **fortschrittlichsten** Community-Tools unterstützt werden.\ Erhalten Sie noch heute Zugriff: {% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=web-api-pentesting" %} ## Zusammenfassung der API-Pentesting-Methodik Das Pentesting von APIs erfordert einen strukturierten Ansatz zur Aufdeckung von Schwachstellen. Dieser Leitfaden umfasst eine umfassende Methodik, die praktische Techniken und Tools hervorhebt. ### **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) abrufbar. * **REST-APIs (JSON)**: Die Dokumentation erfolgt häufig in WADL-Dateien, aber Tools wie [Swagger UI](https://swagger.io/tools/swagger-ui/) bieten eine benutzerfreundlichere Oberfläche 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 das API-Pentesting** * **SOAP/XML-Schwachstellen**: Erforschen Sie XXE-Schwachstellen, obwohl DTD-Deklarationen häufig 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 Berechtigungsebenen, um unbefugte Zugriffsmöglichkeiten zu identifizieren. * **CORS-Fehlkonfigurationen**: Untersuchen Sie CORS-Einstellungen auf mögliche Ausnutzbarkeit durch CSRF-Angriffe aus authentifizierten Sitzungen. * **Endpunkterkennung**: 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 unerwartete Verhaltensweisen oder Informationslecks aufzudecken. * **Content-Type-Manipulation**: Wechseln Sie zwischen verschiedenen Inhaltstypen (x-www-form-urlencoded, application/xml, application/json), um auf 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. * **Versionsprüfung**: Ältere API-Versionen sind möglicherweise anfälliger für Angriffe. Überprüfen Sie immer und testen Sie gegen mehrere API-Versionen. ### **Tools und Ressourcen für das API-Pentesting** * [**kiterunner**](https://github.com/assetnote/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. * [**Cherrybomb**](https://github.com/blst-security/cherrybomb): Es handelt sich um ein API-Sicherheitstool, das Ihre API anhand einer OAS-Datei überprüft (das Tool ist in Rust geschrieben). ### **Lern- und Übungsressourcen** * **OWASP API Security Top 10**: Wesentliche Lektüre zur Verständnis von häufigen 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\_source=hacktricks\&utm\_medium=text\&utm\_campaign=ppc\&utm\_term=trickest\&utm\_content=web-api-pentesting), um mühelos Workflows zu erstellen und zu automatisieren, die von den weltweit fortschrittlichsten Community-Tools unterstützt werden.\ Heute Zugriff erhalten: {% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=web-api-pentesting" %}
Erlernen Sie AWS-Hacking von Null auf Held 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**](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 einreichen.