Las API se utilizan cada vez más para conectar diferentes servicios y sistemas, lo que las convierte en el objetivo principal de los atacantes. Proteger las API es crucial para proteger los datos confidenciales, garantizar la integridad de las transacciones y mantener la disponibilidad de los servicios.
El Proyecto Abierto de Seguridad de Aplicaciones Web (OWASP) es una fundación sin ánimo de lucro dedicada a mejorar la seguridad del software. OWASP proporciona recursos gratuitos y de código abierto, como herramientas, metodologías y documentación, para ayudar a las organizaciones a proteger sus aplicaciones web. Una de las contribuciones más conocidas de OWASP es la lista de los 10 principales riesgos de seguridad de las API, que destaca los riesgos más importantes para la seguridad de las API. Una actualización de 2023 reflejaba la creciente importancia y los desafíos únicos de proteger las interfaces de programación de aplicaciones (API) y las aplicaciones web.
¿Qué son las API?
Las API son conjuntos de protocolos y definiciones que permiten que diferentes aplicaciones de software se comuniquen entre sí. Una función clave de las API es facilitar un intercambio eficiente de datos entre tecnologías. Como tecnología fundamental para la arquitectura de aplicaciones moderna, las API permiten que una aplicación solicite información y aproveche la funcionalidad de otras aplicaciones y servicios, en lugar de tener que replicar esos datos o crear esos servicios desde cero. Las API se sitúan en el centro de nuestro mundo digital y conectan aplicaciones, sistemas y datos.
¿Por qué están amenazadas las API?
El 84 % de las organizaciones ha sufrido incidentes de seguridad de las API en los últimos 12 meses, según más de 1200 profesionales de TI y seguridad que participaron en el Estudio sobre el impacto de la seguridad de API de 2024. Con el rápido aumento de las API en la arquitectura de aplicaciones moderna, los ciberdelincuentes se han visto cada vez más atraídos por las API como vector de ataque por varias razones.
- Adopción generalizada: Las API son omnipresentes en el desarrollo de software moderno, ya que impulsan aplicaciones web y móviles, dispositivos del IoT e integraciones entre varias plataformas. Esta adopción generalizada crea muchos nuevos objetivos potenciales para los atacantes y amplía la superficie de ataque de una organización.
- Acceso a datos confidenciales: Las API a menudo gestionan datos confidenciales, como información personal, información financiera y datos empresariales privados. Al explotar las API, los atacantes pueden obtener acceso a información valiosa y confidencial que se puede utilizar para el robo de identidad, el fraude financiero o el espionaje corporativo.
- Acceso directo a los sistemas back-end: Las API proporcionan acceso directo a las bases de datos y los sistemas back-end, a menudo eludiendo las interfaces de usuario tradicionales. Este acceso directo se puede aprovechar para recuperar, modificar o eliminar datos sin pasar por las comprobaciones y los equilibrios de seguridad habituales de las aplicaciones front-end.
- Complejidad y errores de configuración: Las API pueden ser complejas, con muchos terminales y versiones, cada una de las cuales requiere una configuración y seguridad adecuadas. Los errores de configuración y los fallos de seguridad son comunes, lo que hace que las probabilidades de éxito en un ataque a las API sean bastante elevadas.
- Automatización y escalabilidad de los ataques: Los atacantes pueden usar herramientas y scripts automatizados para convertir las API en sus objetivos y escalar sus ataques. Los ataques automatizados pueden explotar rápidamente vulnerabilidades de API, como mecanismos de autenticación débiles y otros defectos de seguridad.
- Integración de terceros: Las API suelen facilitar las integraciones con servicios de terceros, lo que puede introducir riesgos de seguridad adicionales. Si un servicio de terceros se ve comprometido, puede proporcionar un punto de entrada para que los atacantes exploten la API principal.
- Registro y supervisión insuficientes: Muchas organizaciones carecen de un registro y una supervisión adecuados para sus API, lo que dificulta la detección y la respuesta a actividades sospechosas en tiempo real. Esto permite a los atacantes explotar las vulnerabilidades de seguridad sin que se les detecte durante periodos prolongados.
Tecnología y conceptos clave de API
Para comprender las amenazas específicas de los 10 principales riesgos de seguridad de las API según OWASP, resulta útil revisar algunos conceptos y términos clave relacionados con las API.
- Terminales de API: Los terminales de API son URL o rutas específicas con las que un cliente puede acceder a una API. Cada terminal proporciona acceso a diferentes funciones o recursos, como enviar un formulario, actualizar una entrada de base de datos o recuperar información de usuario.
- Llamadas y solicitudes: Una llamada o solicitud de API es un mensaje enviado por un cliente a un terminal de API para solicitar datos o realizar una acción. Una llamada o solicitud de API genera una respuesta desde el terminal de API.
- Objetos: Los objetos son estructuras de datos que representan entidades reales como usuarios, productos o pedidos. Los objetos pueden tener atributos/propiedades y métodos/funciones. En una API de redes sociales, por ejemplo, un objeto puede ser un perfil de usuario con atributos como nombre, imagen de perfil y correo electrónico, y métodos como enviar una solicitud de amigo y actualizar el perfil.
- Enlace de datos: El enlace de datos es el proceso de asignar datos de entrada de solicitudes de API a objetos.
- Autenticación: La autenticación es el proceso de verificación de la identidad de un usuario o sistema. El propósito de la autenticación de entidad o de usuario es determinar que la entidad es quien (o lo que) afirma ser.
- Autorización: La autorización determina el nivel de permisos de acceso de un usuario o sistema autenticado.
Los 10 principales riesgos de seguridad de las API según OWASP de 2023
Los 10 principales riesgos de seguridad de las API según OWASP ponen de relieve los riesgos de seguridad más importantes para las API.
- API1:2023 – Autorización a nivel de objeto comprometida: Esta amenaza se produce cuando una API no restringe correctamente el acceso a determinados objetos en función de los permisos de usuario. Esto significa que los usuarios no autorizados pueden acceder a datos a los que no deberían acceder o modificarlos, lo que podría exponer información confidencial o permitir acciones maliciosas.
- API2:2023 – Autenticación comprometida: La autenticación comprometida se produce cuando los métodos utilizados para verificar la identidad de los usuarios son defectuosos. Puede permitir que los atacantes se apoderen de las cuentas de usuario, obtengan acceso no autorizado y realicen acciones como si fueran usuarios legítimos.
- API3:2023 – Autorización a nivel de propiedad de objeto comprometida: Este problema se produce cuando las API no comprueban correctamente los permisos en el nivel de propiedad de los objetos. Puede permitir a los atacantes obtener acceso no autorizado o modificar campos de datos específicos de un objeto, y exponer datos confidenciales o facilitar acciones maliciosas.
- API4:2023 – Uso de recursos sin restricciones: Las API necesitan recursos como ancho de banda de red, CPU, memoria y almacenamiento para funcionar. Cuando las API no tienen límites adecuados en el consumo de recursos, los atacantes pueden saturar la API realizando un exceso de solicitudes, lo que provoca la denegación de servicio o un aumento de los costes operativos.
- API5:2023 – Autorización a nivel de función comprometida: La autorización a nivel de función comprometida significa que la API no restringe correctamente el acceso a determinadas funciones o acciones según las funciones de usuario. Esto permite a los usuarios realizar acciones que no deberían poder realizar, como acceder a funciones administrativas.
- API6:2023 – Acceso sin restricciones a flujos empresariales confidenciales: Las API pueden exponer procesos empresariales, como la compra de artículos o la publicación de comentarios, sin controlar de forma adecuada cómo se pueden usar indebidamente estas funciones. Los atacantes pueden automatizar el mal uso de estas funcionalidades para perjudicar al negocio.
- API7:2023 – Falsificación de solicitudes del lado del servidor (SSRF): La SSRF se produce cuando una API recupera recursos de otro servidor sin validar correctamente la URL proporcionada por el usuario. Los atacantes pueden explotarla para conseguir que el servidor de API envíe solicitudes a ubicaciones no deseadas, eludiendo los firewalls o accediendo a sistemas internos.
- API8:2023 – Configuración de seguridad incorrecta: La configuración de seguridad incorrecta implica tener ajustes incorrectos o incompletos en una API, lo que la hace vulnerable a los ataques. Esto puede ocurrir porque la configuración predeterminada, la falta de parches o la inadecuada configuración de controles de seguridad desemboquen en posibles ataques.
- API9:2023 – Gestión inadecuada del inventario: Este riesgo se produce cuando las API exponen más terminales de los necesarios o carecen de la documentación y la gestión de versiones adecuadas. Los atacantes pueden explotar terminales obsoletos, retirados o desprotegidos y versiones de API que los desarrolladores podrían haber olvidado.
- API10:2023 – Uso inseguro de API: Los desarrolladores pueden confiar demasiado en los datos de API de terceros y no aplicar los mismos estándares de seguridad que utilizan para las entradas de los usuarios. Los atacantes pueden aprovechar las vulnerabilidades de estos servicios de terceros para poner en peligro la API de forma indirecta.

Otras amenazas
Una versión anterior del proyecto de seguridad de las API de OWASP incluía varios tipos adicionales de ataques y vulnerabilidades que aún suponen una gran amenaza para las organizaciones:
- Exposición excesiva de datos: La exposición excesiva de los datos se produce cuando las API proporcionan más datos de los necesarios en sus respuestas. Puede revelarse de forma involuntaria información confidencial a los atacantes, incluso si el usuario no la solicita directamente.
- Falta de limitación de velocidad: Esta amenaza implica que las API no limiten el número de solicitudes que un usuario puede realizar en un periodo determinado. Sin limitación de velocidad, los atacantes pueden sobrecargar la API con demasiadas solicitudes, lo que provoca una denegación de servicio o explota operaciones que consumen muchos recursos.
- Asignación masiva: La asignación masiva se produce cuando las API enlazan automáticamente la entrada de las solicitudes a los objetos de programa, lo que permite a los atacantes modificar o establecer campos de datos no deseados. Esto puede dar lugar a cambios no autorizados en los datos o configuraciones que el usuario no debería poder controlar.
- Inyección: Los defectos de inyección se producen cuando se envían datos que no son de confianza a un intérprete como parte de un comando o consulta. Por ejemplo, SQL, NoSQL e inyecciones de comandos, que pueden desembocar en el robo, la pérdida o la corrupción de los datos engañando a la API para que ejecute comandos no intencionados.
- Registro y supervisión insuficientes: Cuando los administradores no registran los registros ni supervisan las API correctamente, las actividades sospechosas pueden pasar desapercibidas, lo que demora la detección de filtraciones y dificulta la respuesta eficaz a los incidentes de seguridad.
- Gestión de activos inadecuada: Una gestión inadecuada de los activos se refiere al mantenimiento y la supervisión incorrectas de los terminales y las versiones de una API. Esto puede dar lugar a la exposición de terminales antiguos, obsoletos o inseguros que los atacantes pueden aprovechar.
Cómo defenderse de los 10 principales riesgos de seguridad de las API según OWASP
Para proteger sus API de los 10 principales riesgos de seguridad de las API según OWASP y otras amenazas, los equipos de TI y seguridad deben implementar una estrategia multicapa para la seguridad de las API.
En el núcleo de este enfoque está la implementación de una solución de seguridad de API completa que brinde cuatro funciones clave: detección de API, gestión de la estrategia de seguridad de API, protección del tiempo de ejecución y pruebas de seguridad de API.
Este enfoque integral funciona como un complemento importante de las herramientas existentes de una organización para gestionar y proteger las API, como las puertas de enlace de API y los firewalls de aplicaciones web (WAF), a lo largo de su ciclo de vida.
Detección de API: La mayoría de las organizaciones tienen poca o ninguna visibilidad sobre un gran porcentaje de su tráfico de API, a menudo porque asumen que todas sus API se enrutan a través de una puerta de enlace de API. Sin embargo, este no es el caso. Muchas de las API de una organización típica no se gestionan (por ejemplo, API inactivas que quedan olvidadas, pero que siguen funcionando y siguen en contacto con datos confidenciales). Sin un inventario completo y preciso, su empresa está expuesta a toda una serie de riesgos. Capacidades principales necesarias:
- Localización y realización de un inventario de todas sus API, independientemente de cuál sea su configuración o tipo.
- Detección de las API inactivas, heredadas y zombis.
- Identificación de los dominios ocultos olvidados, descuidados o desconocidos.
- Eliminación de los puntos ciegos y descubrimiento de posibles rutas de ataque.
Gestión de la estrategia de API: Con un inventario completo de las API, es fundamental conocer qué tipos de datos se transmiten a través de las API y cómo afecta esto a su capacidad para cumplir los requisitos normativos. La gestión de la estrategia de las API proporciona una visión completa del tráfico, el código y las configuraciones para evaluar el nivel de seguridad de las API de su organización. Capacidades principales necesarias:
- Análisis automático de la infraestructura para detectar errores de configuración y riesgos ocultos.
- Creación de flujos de trabajo personalizados para informar acerca de las vulnerabilidades a los principales interesados.
- Identificación de las API y los usuarios internos que pueden acceder a los datos confidenciales.
- Clasificación de los problemas detectados en función de la gravedad para priorizar la corrección de los más críticos.
Seguridad de API en tiempo de ejecución: Sin duda, ya conoce el concepto de "asumir que se va a producir una filtración". Las filtraciones y los ataques específicos de las API están alcanzando el mismo grado de inevitabilidad. Para todas las API activas en fase de producción, debe ser capaz de detectar y bloquear los ataques en tiempo real. Capacidades principales necesarias:
- Supervisión de la manipulación y filtración de datos, las infracciones de políticas, el comportamiento sospechoso y los ataques a las API.
- Análisis del tráfico de las API sin necesidad de realizar cambios adicionales en la red ni implementar agentes difíciles de instalar.
- Integración de los flujos de trabajo existentes (incidencias, gestión de eventos e información de seguridad [SIEM], etc.) para alertar a los equipos de seguridad y operaciones.
- Prevención de los ataques y del uso indebido de los datos en tiempo real con correcciones parcial o totalmente automatizadas.
Pruebas de seguridad de las API: Los equipos de desarrollo de las API se ven sometidos a la presión de trabajar con la mayor rapidez posible. La velocidad es esencial para todas las aplicaciones desarrolladas, lo que facilita que se produzca una vulnerabilidad o un defecto de diseño y que, posteriormente, no se detecte. Probar las API durante el desarrollo antes de que se envíen a la fase de producción reduce en gran medida tanto el riesgo como el coste de corregir una API vulnerable. Capacidades principales necesarias:
- Ejecución de una amplia variedad de pruebas automatizadas que simulan tráfico malicioso.
- Detección de las vulnerabilidades antes de poner las API en funcionamiento, lo que reduce el riesgo de que un ataque logre su objetivo.
- Análisis de las especificaciones de sus API con respecto a las políticas y normativas de control establecidas.
- Realización de pruebas de seguridad bajo demanda dirigidas a las API o como parte de un proceso de integración e implementación continuas (CI/CD).
Nota: Además de las soluciones de seguridad de API, las organizaciones pueden explorar las capacidades de la protección de API y aplicaciones web (WAAP). Diseñada para identificar y mitigar rápidamente las amenazas procedentes de diversos vectores de ataque, la WAAP amplía las protecciones tradicionales de un WAF. Una solución de seguridad de API, que funciona conjuntamente con WAF y WAAP, amplía las protecciones incluso más allá del firewall para crear la defensa más sólida posible.
Las organizaciones que deseen reforzar sus enfoques de seguridad de API también pueden utilizar las siguientes técnicas y tecnologías.
Autenticación y autorización
- Implementar autorización detallada: Asegurarse de que cada solicitud de API compruebe los permisos del usuario para acceder a objetos específicos. Utilizar el control de acceso basado en funciones (RBAC) o el control de acceso basado en atributos (ABAC) para aplicar estas reglas.
- Utilizar mecanismos de autenticación sólidos: Implementar la autenticación multifactorial (MFA) y utilizar protocolos seguros como OAuth 2.0 y OpenID Connect para verificar las identidades de los usuarios.
- Aplicar políticas de contraseñas seguras: Requerir contraseñas complejas y aplicar políticas de rotación de contraseñas para mejorar la seguridad.
Control de acceso
- Control de acceso a nivel de propiedad: Aplicar controles de acceso en el nivel de propiedad de los objetos para garantizar que los usuarios solo puedan acceder o modificar las propiedades para las que tienen permisos.
- Control de acceso a nivel de función: Asegurarse de que el acceso a cada función de API está restringido según las funciones y los permisos de usuario. Utilizar los principios de privilegios mínimos para minimizar el acceso.
Limitación de velocidad, regulación y supervisión de recursos
- Implementación de limitación y regulación de velocidad: Establecer límites en el número de solicitudes de API que un usuario puede realizar en un periodo determinado para evitar el agotamiento de recursos.
- Supervisión y escalabilidad de recursos: Supervisar continuamente el uso de recursos y escalar la infraestructura de forma dinámica para gestionar los picos de tráfico legítimos sin comprometer la disponibilidad.
Validación y saneamiento
- Validar y sanear las entradas de los usuarios: Asegurarse de que las URL u otras entradas en las solicitudes del servidor se validan y sanean correctamente para evitar solicitudes maliciosas.
- Validar y sanear las respuestas de API: Someter los datos de las API de terceros al mismo escrutinio que las entradas de los usuarios, validándolos y saneándolos antes de su uso.
Segmentación
- Segmentación de red: Restringir las solicitudes del lado del servidor solo a los servicios internos necesarios y utilizar la segmentación de red para limitar el impacto de posibles ataques de SSRF.
Configuración e inventario
- Reforzar los ajustes de configuración: Revisar y actualizar periódicamente los ajustes de configuración de las API para seguir las prácticas recomendadas de seguridad. Desactivar las funciones y los servicios innecesarios.
- Automatizar la gestión de la configuración de seguridad: Utilizar herramientas automatizadas para gestionar y aplicar configuraciones de seguridad de forma coherente en todos los entornos.
Pruebas y auditorías
- Pruebas de seguridad continuas: Probar periódicamente los terminales de API para detectar vulnerabilidades y solucionar cualquier problema con prontitud.
- Auditorías periódicas: Realizar auditorías de seguridad periódicas para identificar y corregir fallos de autorización.
Inventario, documentación y revisiones
- Mantener un inventario de API: Mantener un inventario actualizado de todos los terminales de API, incluidas sus versiones y uso. Asegurarse de que los terminales obsoletos se retiren correctamente.
- Documentar y supervisar las API: Documentar la funcionalidad de las API y supervisar su uso para detectar y mitigar los riesgos de seguridad asociados a una gestión inadecuada.
- Supervisar la actividad anómala: Implementar la supervisión continua para detectar y responder a patrones inusuales de uso de API que puedan indicar un intento de explotar los flujos empresariales.
- Revisiones de seguridad periódicas: Revisar y actualizar periódicamente las políticas de control de acceso para garantizar que sigan siendo eficaces.
- Utilizar bibliotecas y marcos seguros: Asegurarse de que las bibliotecas y los marcos utilizados para interactuar con API de terceros sean seguros y se actualicen periódicamente.
Cifrado
Cifrar los datos en tránsito: Utilizar la seguridad de la capa de transporte (TLS) para cifrar los datos en tránsito y proteger la información confidencial de ser interceptada por los atacantes.
Firewalls y puertas de enlace
- Implementar firewalls de aplicaciones web (WAF): Los firewalls de aplicaciones web protegen las API de los ataques basados en web más comunes, como la inyección SQL y los scripts entre sitios (XSS), bloqueando las solicitudes maliciosas.
- Usar una puerta de enlace de API: Las puertas de enlace de API sirven como punto de entrada para todas las solicitudes de API y realizan tareas como la autenticación de clientes, la implementación de limitación de velocidad, la gestión del tráfico y la prevención de ataques DDoS en tiempo real.
Aplicación de parches y actualizaciones
- Gestión de parches: Aplicar regularmente parches, actualizaciones y correcciones de seguridad para abordar vulnerabilidades conocidas. Establecer un entorno de prueba para garantizar que los parches no introduzcan problemas de compatibilidad ni consecuencias no deseadas.
Zero Trust
- Adoptar un enfoque Zero Trust: Un marco Zero Trust asume que ningún usuario, dispositivo ni aplicación dentro o fuera de un entorno de TI puede ser de confianza por naturaleza. Al exigir que todos los clientes que soliciten acceso a las API se autentiquen y validen continuamente, el enfoque Zero Trust evita el acceso no autorizado y limita los daños de los ataques que tengan éxito.
Preguntas frecuentes
OWASP, el Proyecto Abierto de Seguridad de Aplicaciones Web, es una fundación sin ánimo de lucro que trabaja para mejorar la seguridad del software. Proporciona herramientas, recursos y proyectos comunitarios gratuitos y de código abierto para ayudar a los desarrolladores y profesionales de la seguridad a proteger las aplicaciones web.
Los 10 principales riesgos de seguridad de las API según OWASP son una lista de los riesgos de seguridad más importantes para las API. La lista de las 10 principales vulnerabilidades tiene como objetivo proporcionar información sobre las vulnerabilidades más comunes y cómo mitigarlas a los desarrolladores, arquitectos y profesionales de la seguridad.
Por qué los clientes eligen Akamai
Akamai es la empresa de ciberseguridad y cloud computing que potencia y protege los negocios online. Nuestras soluciones de seguridad líderes en el mercado, nuestra inteligencia ante amenazas consolidada y nuestro equipo de operaciones globales proporcionan una defensa en profundidad para proteger los datos y las aplicaciones empresariales. Las soluciones integrales de cloud computing de Akamai garantizan el rendimiento y una buena relación calidad-precio en la plataforma más distribuida del mundo. Las grandes empresas confían en Akamai, ya que les ofrece una fiabilidad, una escalabilidad y una experiencia inigualables en el sector, idóneas para crecer con seguridad.