API Discovery

Ai & Modern Apis Security Notes Jan 14, 2026 BASH
governance security inventory tooling

Definición

API Discovery es el proceso continuo de identificar todos los endpoints API que existen en la infraestructura de una organización, estén documentados o no. Responde a la pregunta fundamental: “¿Qué APIs tenemos realmente ejecutándose en producción?”

El descubrimiento es crítico porque las organizaciones rara vez tienen inventarios precisos de sus APIs. Según investigación de la industria, el 50% de las organizaciones no saben cuántas APIs tienen en producción. Esta brecha entre APIs documentadas y APIs realmente desplegadas crea puntos ciegos de seguridad, riesgos de cumplimiento y confusión arquitectónica.

API Discovery usa tres enfoques complementarios: análisis de tráfico (observando requests de red), escaneo de código (analizando código fuente e infraestructura), y escaneo de infraestructura (examinando recursos desplegados). Juntas, estas técnicas revelan Shadow APIs, APIs Zombie y endpoints olvidados que eluden la documentación oficial.

Ejemplo

La Auditoría de la Plataforma de Salud

Una empresa de salud creía que tenían 127 APIs documentadas. Durante un ejercicio de API Discovery:

Análisis de Tráfico: Los logs del API Gateway revelaron 189 endpoints únicos recibiendo requests Escaneo de Código: El análisis del repositorio de GitHub encontró 214 rutas API definidas en código Escaneo de Infraestructura: El escaneo de Kubernetes y Lambda descubrió 231 funciones desplegadas

Resultado: Realmente tenían 231 APIs, incluyendo:

  • 47 Shadow APIs (nunca documentadas)
  • 23 APIs Zombie (documentadas pero propietarios se fueron)
  • 34 endpoints de debug/internos expuestos accidentalmente

Sin API Discovery, estas 104 APIs no documentadas representaban superficie de ataque desconocida y violaciones de cumplimiento (procesando datos de pacientes sin logging de HIPAA).

Analogía

La Inspección Arqueológica: Imagina inspeccionar una ciudad antigua. Tienes mapas viejos (documentación), pero no sabes si son precisos. Así que usas tres técnicas:

  1. Fotografía aérea (análisis de tráfico) - Ver qué caminos realmente tienen huellas
  2. Radar de suelo (escaneo de código) - Detectar cimientos enterrados de edificios
  3. Excavación física (infraestructura) - Desenterrar lo que realmente está ahí

Descubres calles que no están en los mapas, edificios que los mapas dicen que existen pero no, y ruinas que nadie conocía. API Discovery hace lo mismo para tu infraestructura.

El Censo: Los gobiernos no confían en datos de población autorreportados—conducen censos reales, yendo puerta a puerta contando residentes. API Discovery es el censo para tu infraestructura, contando activamente lo que existe en lugar de confiar en la documentación.

Código de Ejemplo

1. Enfoque de Análisis de Tráfico:


# Analizar logs de API Gateway para encontrar todos los endpoints accedidos
cat api-gateway.log | grep "HTTP/1.1" | awk '{print $7}' | sort -u > actual-endpoints.txt

# Comparar con APIs documentadas
comm -23 actual-endpoints.txt documented-endpoints.txt > shadow-apis.txt

# Resultado: 47 endpoints en shadow-apis.txt no en documentación

2. Enfoque de Escaneo de Código:


# Encontrar todas las definiciones de rutas Express en el código
grep -r "app\.get\|app\.post\|app\.put\|app\.delete" --include="*.js" . \
  | grep -oP '["'\'']\/api\/[^"'\'']+' \
  | sort -u > code-endpoints.txt

# Encontrar decoradores de ruta de FastAPI
grep -r "@app\.\(get\|post\|put\|delete\)" --include="*.py" . \
  | grep -oP '["'\'']\/api\/[^"'\'']+' \
  | sort -u >> code-endpoints.txt

# Comparar con endpoints documentados
comm -23 code-endpoints.txt documented-endpoints.txt > undocumented-in-code.txt

3. Enfoque de Escaneo de Infraestructura:


# Escanear servicios de Kubernetes por puertos expuestos
kubectl get services -A -o json \
  | jq -r '.items[] | select(.spec.type=="LoadBalancer" or .spec.type=="NodePort")
  | "\(.metadata.name):\(.spec.ports[].port)"' > k8s-exposed.txt

# Escanear funciones Lambda de AWS
aws lambda list-functions \
  | jq -r '.Functions[] | select(.Environment.Variables.API_ENDPOINT)
  | .FunctionName' > lambda-apis.txt

# Escanear servicios de Google Cloud Run
gcloud run services list --format="value(name,url)" > cloudrun-apis.txt

Diagrama

graph TB
    A[API Discovery] --> B[Análisis de Tráfico]
    A --> C[Escaneo de Código]
    A --> D[Escaneo de Infraestructura]

    B --> B1[Logs de API Gateway]
    B --> B2[Logs de Load Balancer]
    B --> B3[Logs de WAF]

    C --> C1[Repositorios Git]
    C --> C2[Código Fuente]
    C --> C3[Templates IaC]

    D --> D1[Kubernetes]
    D --> D2[Lambda/Cloud Functions]
    D --> D3[Servicios Cloud]

    B1 --> E[Inventario Consolidado]
    B2 --> E
    B3 --> E
    C1 --> E
    C2 --> E
    C3 --> E
    D1 --> E
    D2 --> E
    D3 --> E

    E --> F[Comparar con Documentación]
    F --> G[Encontrar Shadow APIs]
    F --> H[Encontrar APIs Zombie]
    F --> I[Encontrar APIs Huérfanas]

    style A fill:#bbdefb
    style E fill:#c8e6c9
    style F fill:#fff9c4
    style G fill:#ffcdd2
    style H fill:#ffcdd2
    style I fill:#ffcdd2

Notas de Seguridad

SECURITY NOTES

CRÍTICO - API Discovery es la base de la seguridad de APIs. No puedes asegurar lo que no sabes que existe.

Por Qué el Descubrimiento Importa para Seguridad:

  • Mapeo de superficie de ataque: Entender todos los puntos de entrada que los atacantes pueden apuntar
  • Gestión de vulnerabilidades: No puedes parchear endpoints que no conoces
  • Auditoría de cumplimiento: GDPR, HIPAA, SOC2 requieren saber qué datos procesan las APIs
  • Respuesta a incidentes: Durante brechas, necesitas inventario completo de APIs inmediatamente
  • Implementación Zero Trust: “No confiar en nada” requiere conocer todo lo que existe

El Descubrimiento Revela:

  • APIs sin autenticación (riesgo crítico inmediato)
  • APIs procesando PII sin logging apropiado (violación de cumplimiento)
  • APIs deprecadas que siguen recibiendo tráfico (vulnerabilidades potenciales)
  • SDKs de terceros haciendo llamadas externas no autorizadas (fuga de datos)

Mejor Práctica: Ejecutar API Discovery continuamente (diario o semanalmente), no solo durante auditorías. Las APIs aparecen constantemente en entornos modernos de CI/CD.

Comparación de Enfoques de Descubrimiento

EnfoqueProsContrasMejor Para
Análisis de TráficoVe uso real, encuentra endpoints expuestosPierde APIs sin usar, requiere acceso a logsSistemas de producción con buen logging
Escaneo de CódigoEncuentra APIs antes del desplieguePierde endpoints generados en runtimeOrganizaciones con acceso a todos los repos
InfraestructuraVista completa de desplieguesSe necesitan herramientas específicas de cloudEntornos multi-cloud
CombinadoMás completoMás complejo de implementarOrganizaciones críticas en seguridad

Errores Comunes

Error 1: Descubrimiento de una sola vez Las APIs se crean diariamente en entornos modernos. Una auditoría de una sola vez encuentra lo que existía ese día. El descubrimiento debe ser continuo para ser efectivo.

Error 2: Depender de un solo método El análisis de tráfico pierde APIs sin usar. El escaneo de código pierde rutas generadas dinámicamente. El escaneo de infraestructura pierde APIs detrás de proxies. Usa los tres enfoques.

Error 3: Sin proceso de seguimiento Descubrir 50 Shadow APIs es inútil sin un proceso de triage: ¿Cuáles son de alto riesgo? ¿Quién las posee? ¿Cuál es el plan de remediación?

Error 4: Asumir que los desarrolladores se auto-reportarán “Por favor registra tus APIs en el catálogo” no funciona. El descubrimiento debe ser automatizado y forzado, no voluntario.

Herramientas de Descubrimiento

Open Source:

  • Akto: Análisis de tráfico y descubrimiento de APIs desde logs
  • OWASP ZAP: Escaneo activo para descubrir endpoints
  • Nuclei: Escaneo basado en plantillas para endpoints API
  • Spectral: Escaneo de código para definiciones de APIs y secretos

Empresariales:

  • Salt Security: Descubrimiento continuo de APIs vía análisis de tráfico
  • 42Crunch: Plataforma de seguridad de APIs con funciones de descubrimiento
  • Traceable AI: Descubrimiento de APIs y evaluación de riesgo con ML
  • Noname Security: Descubrimiento e inventario de APIs en tiempo real

Cloud-Native:

  • Azure API Center: Inventario y gobernanza de APIs de Microsoft
  • AWS API Gateway: Logging y analytics integrados
  • Google Apigee: Gestión de APIs con funciones de descubrimiento

Enfoque DIY:

  • Agregación de logs: ELK Stack, Splunk, Datadog para análisis de tráfico
  • Escaneo de código: Scripts personalizados con grep/ripgrep
  • Escaneo IaC: Parsear Terraform, CloudFormation, YAML de Kubernetes

Hoja de Ruta de Implementación

Fase 1: Descubrimiento Base (Semana 1-2)

  1. Exportar APIs documentadas de herramientas actuales (Swagger, Postman)
  2. Ejecutar análisis de tráfico en logs de API Gateway (últimos 30 días)
  3. Escanear repositorios de código principales por definiciones de rutas
  4. Documentar hallazgos: X documentadas, Y descubiertas, Z brecha

Fase 2: Mapeo de Infraestructura (Semana 3-4)

  1. Escanear clusters de Kubernetes por servicios expuestos
  2. Listar todas las funciones Lambda/Cloud con triggers HTTP
  3. Auditar load balancers y API gateways en la nube
  4. Cruzar referencias con hallazgos de Fase 1

Fase 3: Automatización (Semana 5-8)

  1. Configurar análisis automático de logs (ejecuciones diarias)
  2. Integrar escaneo de código en pipeline de CI/CD
  3. Programar escaneos de infraestructura (semanalmente)
  4. Crear dashboard mostrando: APIs documentadas vs descubiertas

Fase 4: Gobernanza (Mes 3+)

  1. Establecer proceso de triage para APIs recién descubiertas
  2. Asignar propietarios a todas las APIs (incluyendo Shadow APIs)
  3. Implementar requisitos de registro de APIs en CI/CD
  4. Monitorear nuevas Shadow APIs continuamente

Mejores Prácticas

  1. Automatizar todo: El descubrimiento manual no escala y queda desactualizado inmediatamente
  2. Combinar enfoques: Tráfico + Código + Infraestructura da imagen completa
  3. Ejecutar continuamente: Diario o semanal, no trimestral
  4. Triage por riesgo: No todas las Shadow APIs son iguales—priorizar por sensibilidad de datos y tráfico
  5. Arreglar la causa raíz: Descubrir Shadow APIs es paso 1; prevenir nuevas es paso 2
  6. Documentar todo: Mantener inventario vivo, no reportes estáticos

Herramienta de Evaluación

Comienza Aquí: Usa la Herramienta de Detección de Shadow APIs para:

  • Evaluar la madurez de descubrimiento de APIs de tu organización
  • Obtener enfoques de descubrimiento recomendados para tu arquitectura
  • Estimar el esfuerzo requerido para inventario completo de APIs
  • Identificar victorias rápidas para proyecto inicial de descubrimiento

Lectura Adicional

📚 Libro: “Cómo Identificar Shadow APIs Con Herramientas Open Source”

Guía completa para API Discovery con detalles prácticos de implementación:

Capítulos clave:

  • Capítulo 3: Análisis de Tráfico para Descubrimiento de APIs (Akto, scripts personalizados)
  • Capítulo 4: Estrategias de Escaneo de Código (GitHub, GitLab, Bitbucket)
  • Capítulo 5: Escaneo de Infraestructura (Kubernetes, AWS, Azure, GCP)
  • Capítulo 7: Construcción de un Pipeline Automatizado de Descubrimiento
  • Capítulo 9: Matriz de Comparación de Herramientas (20+ herramientas evaluadas)

Términos Relacionados