7.3 KiB
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!
- 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, 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 verfügbar. -
REST-APIs (JSON): Die Dokumentation erfolgt oft in WADL-Dateien, aber Tools wie 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: 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.
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).
-
API Security Checklist: Eine umfassende Checkliste zur Absicherung von APIs (GitHub-Link).
-
Logger++-Filter: Für die Suche nach API-Schwachstellen bietet Logger++ nützliche Filter (GitHub-Link).
-
API-Endpunkte-Liste: Eine kuratierte Liste potenzieller API-Endpunkte für Testzwecke (GitHub-Gist).
Referenzen
Verwenden Sie Trickest, 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 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!
- 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 senden.