Web API Pentesting
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Use Trickest to easily build and automate workflows powered by the world's most advanced community tools. Get Access Today:
Pentesting APIs involves a structured approach to uncovering vulnerabilities. This guide encapsulates a comprehensive methodology, emphasizing practical techniques and tools.
SOAP/XML Web Services: Utilizan el formato WSDL para la documentación, que generalmente se encuentra en rutas ?wsdl
. Herramientas como SOAPUI y WSDLer (Burp Suite Extension) son fundamentales para analizar y generar solicitudes. La documentación de ejemplo está disponible en DNE Online.
REST APIs (JSON): La documentación a menudo viene en archivos WADL, sin embargo, herramientas como Swagger UI proporcionan una interfaz más amigable para la interacción. Postman es una herramienta valiosa para crear y gestionar solicitudes de ejemplo.
GraphQL: Un lenguaje de consulta para APIs que ofrece una descripción completa y comprensible de los datos en tu API.
VAmPI: Una API deliberadamente vulnerable para práctica práctica, cubriendo las 10 principales vulnerabilidades de API de OWASP.
SOAP/XML Vulnerabilities: Explora vulnerabilidades XXE, aunque las declaraciones DTD a menudo están restringidas. Las etiquetas CDATA pueden permitir la inserción de cargas útiles si el XML sigue siendo válido.
Privilege Escalation: Prueba los puntos finales con diferentes niveles de privilegio para identificar posibilidades de acceso no autorizado.
CORS Misconfigurations: Investiga la configuración de CORS para potenciales explotaciones a través de ataques CSRF desde sesiones autenticadas.
Endpoint Discovery: Aprovecha los patrones de API para descubrir puntos finales ocultos. Herramientas como fuzzers pueden automatizar este proceso.
Parameter Tampering: Experimenta con agregar o reemplazar parámetros en solicitudes para acceder a datos o funcionalidades no autorizadas.
HTTP Method Testing: Varía los métodos de solicitud (GET, POST, PUT, DELETE, PATCH) para descubrir comportamientos inesperados o divulgaciones de información.
Content-Type Manipulation: Cambia entre diferentes tipos de contenido (x-www-form-urlencoded, application/xml, application/json) para probar problemas de análisis o vulnerabilidades.
Advanced Parameter Techniques: Prueba con tipos de datos inesperados en cargas útiles JSON o juega con datos XML para inyecciones XXE. También intenta la contaminación de parámetros y caracteres comodín para pruebas más amplias.
Version Testing: Las versiones más antiguas de la API pueden ser más susceptibles a ataques. Siempre verifica y prueba contra múltiples versiones de API.
kiterunner: Excelente para descubrir puntos finales de API. Úsalo para escanear y forzar rutas y parámetros contra APIs objetivo.
https://github.com/BishopFox/sj: sj es una herramienta de línea de comandos diseñada para ayudar con la auditoría de archivos de definición Swagger/OpenAPI expuestos al verificar los puntos finales de la API asociados en busca de autenticación débil. También proporciona plantillas de comandos para pruebas manuales de vulnerabilidades.
Herramientas adicionales como automatic-api-attack-tool, Astra y restler-fuzzer ofrecen funcionalidades personalizadas para pruebas de seguridad de API, que van desde simulación de ataques hasta fuzzing y escaneo de vulnerabilidades.
Cherrybomb: Es una herramienta de seguridad de API que audita tu API basada en un archivo OAS (la herramienta está escrita en rust).
OWASP API Security Top 10: Lectura esencial para entender las vulnerabilidades comunes de API (OWASP Top 10).
API Security Checklist: Una lista de verificación completa para asegurar APIs (enlace de GitHub).
Logger++ Filters: Para cazar vulnerabilidades de API, Logger++ ofrece filtros útiles (enlace de GitHub).
API Endpoints List: Una lista curada de posibles puntos finales de API para fines de prueba (gist de GitHub).
Usa Trickest para construir y automatizar flujos de trabajo fácilmente impulsados por las herramientas comunitarias más avanzadas del mundo. Obtén acceso hoy:
Aprende y practica Hacking en AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprende y practica Hacking en GCP: HackTricks Training GCP Red Team Expert (GRTE)