lowCWE-200A05:2021

Documentación de API Expuesta en Producción

Swagger UI, ReDoc u otras interfaces de documentación de API accesibles públicamente en producción, dándole a los atacantes un mapa interactivo gratuito de cada endpoint, parámetro y método de autenticación.

Cómo Funciona

Los docs de API como Swagger exponen cada endpoint, formato de input esperado, requisitos de autenticación y ejemplos de respuesta. Esto elimina el tiempo de reconocimiento para los atacantes — pueden explorar tu API interactivamente y probar vulnerabilidades directamente desde la página de docs. Los docs también revelan la estructura interna y nombres de campos.

Código Vulnerable
// MAL: Swagger UI disponible en producción
app.use('/api-docs', swaggerUi.serve, swaggerUi.setup(swaggerDocument));
// Accesible en: https://tuapi.com/api-docs
Código Seguro
// BIEN: deshabilita los docs en producción
if (process.env.NODE_ENV !== 'production') {
  app.use('/api-docs', swaggerUi.serve, swaggerUi.setup(swaggerDocument));
}
// O: protege con middleware de auth

Ejemplo Real

Los pentesters rutinariamente verifican /swagger, /api-docs, /swagger-ui.html, /openapi.json como primeros pasos. Encontrar Swagger expuesto en producción reduce inmediatamente el tiempo para encontrar endpoints explotables de horas a minutos.

Cómo Prevenirlo

  • Deshabilita o elimina las rutas de documentación de API en builds de producción
  • Si los docs deben ser accesibles, protégelos con autenticación (solo equipo interno)
  • Alternativamente, aloja los docs en una URL interna separada
  • Verifica paths comunes de docs: /swagger, /api-docs, /redoc, /openapi.json, /swagger.json

Tecnologías Afectadas

nodejsNext.jsPythonGo

Data Hogo detecta esta vulnerabilidad automáticamente.

Escanea Tu Repo Gratis

Vulnerabilidades Relacionadas