theNet by CLOUDFLARE

La superficie de ataque crece con la proliferación de las API

El rápido crecimiento de las API conlleva riesgos de seguridad

Una interfaz de programación de aplicaciones (API) es una interfaz informática que define y permite las interacciones entre distintos programas informáticos. Muchas tareas cotidianas se realizan gracias a las API. Por ejemplo, compartir información multimedia en las plataformas sociales, procesar pagos en línea y agregar datos de análisis de sitios web. Con la informática en la nube, las empresas pueden implementar más fácilmente infraestructuras globales con la ayuda de las API.

Hoy en día, la mayoría del software o bien utiliza una API o es una API. En los últimos 4 o 5 años, el crecimiento de las API ha sido exponencial. Por ejemplo, Postman, una plataforma de colaboración para el desarrollo de API, vio dispararse su número de carpetas de API de menos de medio millón en 2016 a casi 35 millones en 2021.

A pesar del meteórico aumento de la popularidad de las API, las medidas de seguridad relacionadas se han quedado rezagadas. Ahora, al abrirse aún más las compuertas, han salido a la luz distintas vulnerabilidades importantes. Según Gartner, dada la combinación de crecimiento explosivo y de seguridad infradesarrollada, se prevé que las API se conviertan en la mayor vulnerabilidad de seguridad de la historia.


El auge del desarrollo con priorización de la API

Uno de los principales impulsores del crecimiento de las API ha sido la proliferación de los microservicios, que empezaron a ganar popularidad en 2013. El estilo de arquitectura de los microservicios desarrolla pequeñas aplicaciones individuales que se comunican entre sí mediante las API. De este modo, las tareas complejas se dividen en partes más pequeñas, cada una de las cuales se desarrolla y mantiene de forma independiente.

El mercado mundial de la arquitectura de los microservicios se valoró en 2070 millones de dólares en 2018, y se prevé que alcance los 8070 millones de dólares en 2026 (una tasa de crecimiento anual compuesta del 18,6 % de 2019 a 2026). La adopción de los microservicios ha sido generalizada debido a su flexibilidad, sus ciclos de desarrollo más rápidos y su mayor escalabilidad.

Por ejemplo, para seguir el ritmo de la demanda, Netflix pasó de centros de datos monolíticos centralizados a una arquitectura de microservicios basada en la nube. El resultado fue una enorme libertad para que los desarrolladores mejoraran continuamente la experiencia del cliente, como la posibilidad de adaptar el contenido a regiones geográficas concretas.

Las tendencias que condujeron a este entorno actual que prioriza las API también nos dan una pista acerca de dónde se encuentran las vulnerabilidades. Las API están en todas partes, y su crecimiento sigue en auge. Por tanto, también aumenta el riesgo.


Las API: la nueva y enorme vulnerabilidad de seguridad

El desarrollo y la actividad generalizados relacionados con las API no se traducen en aplicaciones seguras. Según Gartner, el 90 % de las aplicaciones web tendrán una mayor superficie de ataque en las API expuestas que en la interfaz de usuario. Gartner también predijo que, en 2022, la explotación de las vulnerabilidades de las API será el vector de ataque más frecuente, mientras que hoy día es inusual.

Las vulnerabilidades de las API afectan a muchas áreas. Por ejemplo, puntos finales (dispositivos, servidores, entornos virtuales, etc.), exposición de datos, denegación de servicio (DoS), fallos de autorización, errores de configuración del sistema de seguridad y más. Teniendo en cuenta la enorme superficie de ataque que suponen los miles de recursos que abarcan las API en cualquier organización, las vulnerabilidades de las API pueden tener efectos de enorme alcance para una empresa.

Por ejemplo, la destrucción de datos, el robo de fondos, la pérdida de productividad, el robo de propiedad intelectual, el robo de datos personales y financieros, el fraude, la interrupción del funcionamiento de la empresa, así como el coste del restablecimiento o la supresión de los datos y sistemas dañados. La violación de las API también puede causar daños a la reputación que lleven a la pérdida de la confianza, una consecuencia común de cualquier incidente de seguridad grave.

Los casos más destacados, en los que las empresas sufrieron ataques a la API a pesar de contar con fuertes medidas de seguridad, en general, ya han saltado a los titulares. Si nos fijamos en el ejemplo de Facebook, 50 millones de cuentas quedaron expuestas mediante el ataque a una vulnerabilidad de la función "Ver como" del sitio. Esto permitió a los hackers robar tokens de acceso a cuentas después de que Facebook creara una funcionalidad de carga de vídeos compatible con la API.

Uber también quedó expuesta cuando los identificadores únicos universales (UUID) de sus usuarios en las llamadas API causaron la filtración de tokens en la respuesta de la API, que podían utilizarse para secuestrar cuentas. De esta forma, los ciberdelincuentes podían rastrear la ubicación de las víctimas e incluso robar trayectos.

Los casos de Facebook y Uber muestran lo que se conoce como un ataque a la API de "autenticación de usuario sin función". Cuando la autenticación se implementa de forma incorrecta, es posible poner en riesgo los tokens de autenticación y otros fallos que permiten el robo de la identidad del usuario.

El uso intensivo de direcciones IP residenciales debido al aumento del teletrabajo a causa de la COVID-19 hace que sea aún más urgente separar las llamadas maliciosas de la API de las legítimas. Los ataques de relleno de credenciales o de botnet de correo electrónico no deseado pueden utilizar hasta 10 000 direcciones IP distintas formadas por servidores, estaciones de trabajo e incluso dispositivos IoT hackeados.


Impedir los ataques a la API requiere la estrategia adecuada + la red adecuada

Puesto que las API exponen la lógica de la aplicación y datos confidenciales como información de identificación personal, estas son fundamentales para la infraestructura y la estrategia de seguridad de una organización. No obstante, es posible que las estrategias tradicionales de seguridad de las aplicaciones web, muchas de las cuales se basan en un modelo de "seguridad negativa", no logren detener la mayoría de las amenazas a las API.


Protección de las API mediante la seguridad positiva

En un modelo de "seguridad negativa", todas las solicitudes pasan por un firewall de aplicaciones web (WAF), a menos que estén en una lista de bloqueos de amenazas conocidas o sospechosas. Este modelo puede crear falsos positivos, en los que se bloquean las llamadas legítimas de la API, y también puede no detectar algunos de los ataques más selectivos. Sin embargo, los WAF desempeñan un papel fundamental en la seguridad de las API. Por ejemplo, el tráfico autenticado que supera algunas etapas de validación del esquema (por ejemplo, punto final, método y parámetros) aún puede conllevar un ataque de código SQL, que un WAF podría detectar. Además, algunas API no son adecuadas para TLS o plantean problemas de validación de esquemas. Si los esquemas no están actualizados, o si las API están fragmentadas y son difíciles de consolidar en un único esquema, un WAF ayudaría a resolver este fallo.

Dicho esto, depender únicamente de un WAF centrado en listas de bloqueos para la seguridad de la API deja vulnerable a una organización. La mitigación de las amenazas a la API puede evitar estos riesgos con un modelo de "seguridad positiva", como API Shield, que solo permite comportamientos conocidos mientras identifica y rechaza todo lo demás.

Un paso clave hacia un modelo positivo es implementar un sistema de autenticación y autorización eficaz que no sea vulnerable a la reutilización o al uso compartido de contraseñas, como por ejemplo TLS u OAuth. La gestión de los permisos y los certificados compartidos puede llevar mucho tiempo, por lo que los desarrolladores deben priorizar las herramientas que simplifiquen al máximo el proceso de creación de listas de permitidos.

Por supuesto, no es imposible extraer un certificado de un dispositivo y reutilizarlo en otro lugar. Los desarrolladores también necesitan una forma de validar ellos mismos las llamadas de la API. Para ello, pueden utilizar validación de esquemas, que compara el contenido de las solicitudes de API (los parámetros de consulta que siguen a la URL y al contenido del cuerpo POST) con un contrato o "esquema" que contiene las reglas de lo que se espera. Si la validación falla, la llamada de la API se bloquea protegiendo el origen contra una solicitud no válida o contra una carga maliciosa.


Impedir los ataques a la API: las redes refuerzan herramientas individuales

La seguridad positiva mediante la autenticación/autorización y la validación de llamadas de la API es importante, pero también son necesarias medidas de seguridad adicionales. Por ejemplo, las API siguen siendo vulnerables a los ataques volumétricos, por fuerza bruta y de relleno de credenciales. Por lo tanto, la mitigación de DDoS y la limitación de velocidad siguen siendo herramientas necesarias en la postura de seguridad global de una empresa.

La incorporación de nuevas herramientas de seguridad a las ya existentes, como la mitigación de DDoS y la limitación de velocidad, puede resultar compleja. Cuando las llamadas API pasan por muchas herramientas dispares, su supervisión y registro son más engorrosos. Además, la canalización del tráfico a través de diferentes herramientas en centros de datos distribuidos geográficamente puede añadir latencia y ralentizar el rendimiento de las aplicaciones.

Por estas razones, se proporciona una mejor seguridad de las API mediante múltiples funciones de seguridad integradas en una red perimetral mayor, que ofrece ventajas como:

  • Resiliencia: si múltiples ubicaciones de la red perimetral pueden alojar herramientas de seguridad de la API, las interrupciones aisladas suponen menos riesgo.

  • Menor latencia: si múltiples herramientas de seguridad de la API operan en la misma ubicación de la red perimetral, el tráfico no tiene que redireccionarse entre distintas ubicaciones.

  • Información sobre amenazas: si una red perimetral tiene el alcance suficiente, puede analizar los ataques a un gran número de API y utilizar esta información para proteger mejor al resto.

  • Registro más sencillo: el uso de una única red, operada a través de un único panel de control, proporciona a los desarrolladores una única fuente fiable.

Concebida para la arquitectura empresarial moderna, Cloudflare simplifica la protección de las API mediante el uso de una sólida identidad basada en certificados de cliente y una estricta validación basada en esquemas. Una solución inteligente y escalable para proteger tus aplicaciones web críticas para la empresa contra ataques maliciosos sin cambios en tu infraestructura actual.

Este artículo forma parte de un conjunto de publicaciones sobre las últimas tendencias y temas que afectan a los responsables de la toma de decisiones sobre tecnología en la actualidad.


CONCLUSIONES CLAVE

Después de leer este artículo podrás entender:

  • El índice de crecimiento en el uso de las API

  • Cómo la superficie de ataque se amplía con las API

  • Las estrategias para prevenir este riesgo

  • Las ventajas de una plataforma integrada


Recursos relacionados


Más información sobre este tema

Más información sobre la protección contra las vulnerabilidades de las API en el informe Gartner Magic Quadrant sobre la protección de aplicaciones web y API (WAAP).

¿Quieres recibir un resumen mensual de la información más solicitada de Internet?