Las APIs conectan sistemas de pago, CRMs, ERPs y apps móviles. También son el vector de ataque de más rápido crecimiento. Si tu empresa tiene integraciones digitales, tiene APIs que proteger.
El eslabón que conecta todo y expone todo
Si tu empresa tiene una aplicación móvil, un portal de clientes, integración con un sistema de pagos, o cualquier conexión entre sistemas, tienes APIs. Y probablemente no las estás monitoreando desde una perspectiva de seguridad.
Por qué las APIs son un objetivo atractivo
A diferencia de las aplicaciones web con interfaz gráfica y validaciones visibles, las APIs son directas: envía la solicitud correcta y obtienes los datos. Un atacante puede ignorar el sitio web y atacar la API directamente con herramientas automatizadas.
Los ataques más frecuentes en APIs
BOLA (Broken Object Level Authorization): el error más común. La API permite que un usuario autenticado acceda a datos de otros usuarios cambiando un ID en la solicitud. Si la API devuelve facturas con ID 1234, probar 1235, 1236... puede exponer todas las facturas de todos los clientes.
API Keys expuestas: desarrolladores que incluyen claves en código publicado en repositorios públicos, en apps móviles descompilables, o en archivos de configuración accesibles.
Rate limiting ausente: sin límites de solicitudes, un atacante puede realizar miles de intentos automatizados sin que la API lo detecte o bloquee.
Versiones legacy activas: la API v1 puede tener vulnerabilidades corregidas en la v3. Si la v1 sigue accesible en producción, el atacante la usará.
Los controles básicos que toda API necesita
Autenticación robusta: OAuth 2.0 con tokens JWT para APIs con datos sensibles.
Autorización a nivel de objeto: verificar que el usuario tiene permisos no solo para la función, sino para el objeto específico que solicita.
Rate limiting: limitar solicitudes por usuario, por IP, y por endpoint. Detectar patrones de enumeración.
Logging y monitoreo: registrar todas las solicitudes para detectar patrones sospechosos.
Inventario de APIs: el primer paso es saber cuáles tienes, incluyendo las APIs legacy olvidadas que siguen accesibles en producción.