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

7.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 mithilfe der weltweit fortschrittlichsten Community-Tools einfach Workflows zu erstellen und zu automatisieren.
Heute Zugriff erhalten:

{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}

API Pentesting Methodik Zusammenfassung

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 zugänglich.
  • REST-APIs (JSON): Die Dokumentation erfolgt häufig in WADL-Dateien, 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 mögliche 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 Parametertechniken: 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-forcen.
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.

Lern- und Übungsressourcen

  • OWASP API Security Top 10: Grundlagenlektüre zur Erkennung häufiger 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 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" %}

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

Andere Möglichkeiten, HackTricks zu unterstützen: