daxonix
CHECKLIST · 002DXN-CL-2026-002
Checklist · Auditoría real

OWASP API
Top 10 2023.

Checklist accionable que tu equipo o un auditor externo puede usar para validar las diez categorías de vulnerabilidad más comunes en APIs modernas.

EDITADO POR Daxonix Offensive Security
2026 EDITION · 6 PÁG · CONFIDENCIAL
OWASP API TOP 10 · DXN-CL-2026-002DAXONIX
CONTEXTO

Cómo usar este checklist.

Cada categoría incluye 4 controles concretos a verificar manualmente, las herramientas mínimas que necesitas y la severidad típica observada en producción. Marca cada caja al confirmar el control. Las categorías con todas las cajas vacías son tu superficie de ataque más probable.

API1 Broken Object Level Authorization
CRÍTICA
BOLA · IDOR · Authorization bypass por ID

El servidor recibe un identificador de recurso del cliente y lo procesa sin verificar si el usuario autenticado es el dueño legítimo.

Cada endpoint que recibe ID valida ownership contra el JWT del request
UUIDs en lugar de enteros secuenciales en producción
Operaciones bulk validan ownership por cada ID, no solo el primero
Multi-tenant: middleware filtra todas las queries por tenant del usuario
Tools Burp + AuthMatrix · enumeración con dos cuentas · 403 explícito esperado
API2 Broken Authentication
CRÍTICA
JWT misconfig · session abuse · credential stuffing

Implementación incorrecta de mecanismos de autenticación que permite forge de tokens, reuso de sesiones o bypass total del flujo de login.

JWT firmado con algoritmo asimétrico (RS256/ES256), nunca alg:none
Secreto de firma no expuesto en bundle de frontend ni en repos públicos
Rate limiting agresivo en endpoints de login y password reset
Sesiones invalidadas tras logout y tras cambio de password
Tools jwt_tool · trufflehog en bundle · Burp Intruder con throttle
API3 Broken Object Property Level Authorization
ALTA
Mass assignment · excessive data exposure

El cliente puede sobrescribir o leer propiedades del objeto que no debería tocar (rol, balance, hash de password).

Allowlist explícita de campos aceptados al deserializar input
Allowlist explícita de campos devueltos al serializar output (DTOs)
Tests de regresión que verifican ausencia de campos sensibles en respuestas
Sin uso directo del modelo de DB como contrato del API
Tools Burp Repeater con campos extras · Postman para inspección de responses
DAXONIX02
OWASP API TOP 10 · DXN-CL-2026-002DAXONIX
API4 Unrestricted Resource Consumption
ALTA
Rate limiting bypass · DoS · billing abuse

Falta de controles sobre recursos consumidos por petición permite agotar capacidad del servicio o disparar costos exponenciales.

Rate limit por IP, por usuario y por endpoint (no solo global)
Tamaño máximo de payloads en JSON, archivos subidos y query strings
Paginación obligatoria con límite máximo en endpoints de listado
Timeouts en operaciones costosas: SMS, email, ML inference, queries externas
Tools Burp Intruder · ffuf con concurrencia · custom scripts para bursts
API5 Broken Function Level Authorization
ALTA
BFLA · privilege escalation horizontal y vertical

Usuarios con bajo privilegio acceden a endpoints administrativos porque el control de autorización no se aplica consistentemente por función.

Endpoints administrativos en rutas separadas con middleware de role check
Tests automáticos por endpoint con cuenta de bajo privilegio
Métodos HTTP no permitidos retornan 405, no procesan
Documentación API/OpenAPI no expone endpoints sin auth
Tools Burp con Autorize · enumeración por método (PUT/DELETE/PATCH)
API6 Unrestricted Access to Sensitive Business Flows
CRÍTICA
Business logic abuse · race conditions · workflow bypass

Flujos críticos del negocio carecen de límites contra abuso automatizado: compra con cupones replay, transferencias duplicadas, brute-force de operaciones.

Idempotency keys en operaciones que mueven dinero o estado crítico
Locks transaccionales o tokens de un solo uso en flujos multi-step
Validación de máquina de estados explícita en cambios de status
Captcha/MFA en operaciones de alto riesgo: high-value transfers, mass operations
Tools Burp Turbo Intruder · race condition tests · revisión manual del flujo
API7 Server Side Request Forgery
ALTA
SSRF · cloud metadata exfiltration · port scanning interno

El servidor procesa una URL provista por el cliente sin validación, permitiendo al atacante hacer peticiones desde el contexto del servidor.

Allowlist estricta de dominios y schemas (https only) en cualquier URL fetch
Bloqueo de IPs privadas, link-local y metadata cloud (169.254.*)
IMDSv2 obligatorio en AWS, sin redirecciones HTTP automáticas
Network policies: la app no debe poder llamar a servicios admin internos
Tools Burp Collaborator · oastify · payloads de DNS rebinding
DAXONIX03
OWASP API TOP 10 · DXN-CL-2026-002DAXONIX
API8 Security Misconfiguration
MEDIA
Defaults inseguros · headers ausentes · servicios expuestos

Configuraciones por defecto no endurecidas, headers de seguridad faltantes, endpoints administrativos accesibles públicamente.

CORS configurado con allowlist de orígenes, sin * ni reflection
Headers de seguridad: HSTS, CSP, X-Content-Type-Options, X-Frame-Options
Endpoints de framework no expuestos (Spring Actuator, Django admin, debug routes)
Mensajes de error genéricos en producción, sin stack traces
Tools nuclei con templates de misconfig · curl manual con headers de prueba
API9 Improper Inventory Management
MEDIA
Versiones legacy expuestas · documentación fuera de sync · shadow APIs

Versiones antiguas del API permanecen activas en producción con menos controles que la versión actual, o documentación pública revela endpoints internos.

Inventario completo de versiones API expuestas: /v1, /v2, /api/old
Versiones deprecadas con sunset date pública y rate limit reducido
Documentación de OpenAPI/Swagger no expuesta sin autenticación en producción
Subdominios staging/dev no accesibles desde internet o protegidos con auth básica
Tools subdomain enumeration · wayback machine · directory bruteforce con ffuf
API10 Unsafe Consumption of APIs
ALTA
Trust ciego en APIs externas · supply chain · 3rd party data

El servidor consume APIs externas y trata sus respuestas como confiables, exponiéndose a inyecciones, redirects maliciosos o data poisoning.

Validación y sanitización de toda respuesta de API externa antes de usarla
TLS verification estricta en clientes HTTP (no verify=False)
Sin redirecciones HTTP automáticas a destinos no validados
Logs y alertas en respuestas anómalas de proveedores externos
Tools revisión de código fuente · MITM con Burp · análisis de dependencias
★ Cómo interpretar el resultado

Si tu equipo no puede marcar 4/4 cajas en al menos 7 de las 10 categorías, tu superficie de ataque tiene gaps explotables. Las categorías críticas (API1, API2, API6) son no-negociables: cualquier caja vacía justifica una auditoría externa.

DAXONIX04
OWASP API TOP 10 · DXN-CL-2026-002DAXONIX
METODOLOGÍA

Cómo verificar manualmente.

Este checklist es accionable solo si se ejecuta con rigor. Una caja "marcada" debe respaldarse por evidencia técnica: petición HTTP que demuestra el control activo, no una afirmación del equipo.

Setup mínimo

Orden de ejecución sugerido

  1. Reconocimiento (1-2h). Mapear todos los endpoints, parámetros, métodos. Identificar archivos sensibles en frontend.
  2. Auth y session (2-3h). API2 + API5. Validar JWT, rate limits, persistencia de sesiones.
  3. Authorization horizontal/vertical (4-6h). API1 + API3 + API5. Endpoint por endpoint con dos cuentas.
  4. Business logic (4-8h). API6. Race conditions, replay, machine state abuse.
  5. Server-side (2-4h). API7 + API4 + API10. SSRF, rate limits, consumo externo.
  6. Configuración y exposición (1-2h). API8 + API9. Headers, versiones, documentación.

Tiempo total mínimo: 14-25 horas para un API con 30 endpoints. Auditorías ejecutadas en menos tiempo no son creíbles.

DAXONIX05
daxonix

¿Marcaste menos de 28 cajas?
Hablemos.

Este checklist es el mínimo viable. Una auditoría externa profundiza cada categoría con técnicas avanzadas que un equipo interno no aplica.

EMAIL
CALENDLY
calendly.com/daxonix
LINKEDIN
/in/isaac-milan-soto