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

8 KiB

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:

Verwenden Sie Trickest, 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_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 in der Regel 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 abrufbar.
  • REST-APIs (JSON): Die Dokumentation liegt oft in WADL-Dateien vor, aber Tools wie Swagger UI bieten eine benutzerfreundlichere Oberfläche für die Interaktion. Postman ist ein wertvolles Tool zur Erstellung und Verwaltung 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 das API-Pentesting

  • SOAP/XML-Schwachstellen: Erforschen 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 Berechtigungsebenen, um unbefugte 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 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: 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 Angriffssimulationen über Fuzzing bis hin zur Schwachstellenanalyse.
  • 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: Wesentlich für das Verständnis gängiger API-Schwachstellen (OWASP Top 10).
  • API Security Checklist: Eine umfassende Checkliste zur Absicherung von APIs (GitHub-Link).
  • Logger++ Filters: 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 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_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}

Erlernen Sie AWS-Hacking von Null auf Held mit htARTE (HackTricks AWS Red Team Expert)!

Andere Möglichkeiten, HackTricks zu unterstützen: