Las API son los componentes básicos de las aplicaciones modernas e impulsan modelos empresariales componibles y plataformas digitales. A medida que más organizaciones se dan cuenta de la importancia de la integración de API, el uso de API se dispara.
Actualmente, el número total de API públicas y privadas en uso a nivel mundial se estima en alrededor de . Dado que las API son tan importantes y por diseño, ofrecen acceso rápido y fácil a datos, recursos y funcionalidades; no hay forma de que los atacantes los pasen por alto. Y los bots son herramientas clave en el arsenal de los atacantes, están aprovechando los bots para orquestar ataques de bots API.
¿Qué son exactamente los ataques de bots de API? ¿Cómo usan los actores de amenazas los bots para atacar las API ? ¿Cómo protege sus API de los bots? Continúa leyendo para averiguarlo.
Ataques de bots de API
Primero comprendamos los conceptos básicos de los bots antes de profundizar en qué son los ataques de bots API.
Los bots son programas autónomos que se utilizan para la comunicación de máquina a máquina. Se pueden programar para realizar funciones y realizar solicitudes web sin intervención humana. Envía tráfico HTTP desde una dirección IP a un sistema. Las botnets son una colección de bots que trabajan juntos y pueden aprovechar varias direcciones IP. El tamaño de las botnets varía desde unos pocos cientos hasta varios miles de direcciones IP.
En un ataque de bot, los actores malintencionados aprovechan los bots para manipular, defraudar o interrumpir un sitio web, una aplicación, un usuario final o una API de destino. Los ataques de bot se utilizaron inicialmente para enviar spam a los objetivos. Pero hoy en día, se han vuelto mucho más sofisticados y pueden llevar a cabo ataques complejos que imitan de cerca el comportamiento humano.
Cuando estos programas automatizados se aprovechan para atacar API específicamente o cuando los atacantes aprovechan los bots para aumentar la escala, el impacto y la sofisticación de los ataques API, se trata de un ataque de bot API.
¿Por qué se utilizan bots contra las API?
Exposición programática de datos, recursos y lógica empresarial:
Los bots se han utilizado en durante años. Pero, ¿por qué es motivo de preocupación cuando se usan contra las API? Esto se debe a que las API están diseñadas para conectar diversas aplicaciones, proporcionar acceso programático a datos, recursos, etc., y permitir una fácil integración y uso compartido por varios clientes. Por su propia naturaleza, exponen funcionalidades de alto valor y lógica comercial y hacen que los recursos sean reconocibles. Por lo tanto, aumentan el riesgo de exposición a información sensible.
Falta de visibilidad:
Las API son objetivos atractivos para los ataques de bots porque las organizaciones carecen de visibilidad de las API a lo largo del ciclo de vida. Y el hecho de que trabajen entre bastidores no ayuda demasiado. Cuando no sepa que existen API en su arquitectura, ¿cómo las examinará, administrará y protegerá? Esto lo deja con varias API vulnerables, ocultas, zombis, deshonestas y mal configuradas. Como resultado, a menudo son menos seguros que los terminales tradicionales y aumentan los riesgos de manera exponencial.
Tienes una receta para el desastre cuando agregas bots a esta mezcla. Es posible que las organizaciones no sepan qué API existen, quién las usa, a qué recursos tienen acceso y qué lógica comercial exponen. Pero los actores de amenazas aprovechan los bots para mapear la arquitectura de TI de la organización y husmear en busca de puntos débiles en las API. Los bots realmente hacen que el proceso sea rápido, fácil y ágil para los atacantes.
Los bots de hoy son sigilosos:
Los bots también se utilizan para ataques de API porque pueden ser extremadamente sigilosos y evitar ser detectados por las herramientas de seguridad tradicionales. De hecho, los bots más sofisticados de la actualidad también pueden evitar ser detectados por herramientas de seguridad más avanzadas.
Por ejemplo, es posible que haya ajustado temporalmente las reglas de autenticación de su API para congelar una cuenta después de tres intentos fallidos de inicio de sesión. Los bots simplemente cambiarán a otra dirección IP después de dos intentos fallidos en un ataque de relleno de credenciales. Usando la automatización inteligente, hacen todo esto sin intervención humana, tomando decisiones sobre la marcha en función de las reglas con las que están programados y su aprendizaje a lo largo del tiempo.
Los bots se utilizan como cortinas de humo para otros ataques:
Los ataques de bots de API a menudo se utilizan como distracciones o cortinas de humo por parte de los atacantes que buscan orquestar otros tipos de abuso de API. Por ejemplo, los atacantes pueden aprovechar las botnets para activar miles de alertas de seguridad para que los equipos de seguridad realicen un seguimiento. Pero su intención es enumerar las identificaciones mientras los equipos de seguridad investigan las alertas de seguridad.
Los actores de amenazas aprovechan los bots para atacar las API porque ofrece una velocidad, flexibilidad y agilidad inigualables en el proceso. Por ejemplo, el relleno de credenciales o los ataques de fuerza bruta no se pueden realizar manualmente sin activar las defensas de seguridad. Pero los bots hacen que la fuerza bruta y el relleno de credenciales sean rápidos, fáciles y escalables.
Aquí hay otro ejemplo de cómo los bots ayudan a los atacantes a apuntar a las API. Los atacantes podrían enviar grandes volúmenes de solicitudes de API a un punto final sin autenticación y recopilar grandes volúmenes de datos en poco tiempo.
Las herramientas tradicionales son ineficaces contra los bots modernos:
Las herramientas de seguridad tradicionales se encuentran deficientes incluso con ataques regulares de bots. Pero son más ineficaces para detener los ataques de bots de API porque no están diseñados específicamente para las API. En primer lugar, las herramientas tradicionales no pueden distinguir de manera efectiva entre un bot y la actividad humana y entre una buena y una mala actividad de bot. Esto limita severamente su capacidad para proteger las API contra ataques basados en bots.
En segundo lugar, con menos pistas que dejan los bots y menos detalles que recopilan las API, las herramientas tradicionales no pueden decidir de manera efectiva si una llamada a la API es maliciosa o legítima. Esencialmente, los bots solicitan los mismos datos que lo harían con los ataques del navegador.
La diferencia es que los ataques de bots de API no brindan información sobre la versión del navegador, las cookies utilizadas, el tipo de dispositivo, etc., que utilizan las herramientas tradicionales para detectar la actividad de los bots. Dado que los ataques de API son completamente virtuales, los bots pueden girar alrededor de los ataques, moverse entre diferentes nubes, rotar direcciones IP, usar redes proxy y hacer mucho más para eliminar las defensas tradicionales.
Defectos de la lógica empresarial:
Los desarrolladores tienden a usar conjuntos de reglas genéricos y dejan las API con configuraciones predeterminadas sin tener en cuenta la lógica empresarial. Esto crea fallas en la lógica comercial que los bots pueden aprovechar para causar estragos mientras evaden la detección a través de solicitudes de API aparentemente legítimas.
Los ataques de bots a las API son más fáciles de montar:
Los ataques de bots a las API son mucho más fáciles y rentables de orquestar que los ataques de bots a las aplicaciones móviles y web. Si bien las diferentes aplicaciones necesitan diferentes enfoques y capacidades de bot, los atacantes pueden usar la misma infraestructura y mecanismo de ataque para las API web y directas. Además, las API permiten a los atacantes obtener un acceso más cercano a la infraestructura de TI central y los activos críticos.
Además, los bots, las botnets y los kits de herramientas de ataque están fácilmente disponibles para alquilar y, a menudo, a precios bajos. Por lo tanto, los atacantes no necesitan demasiados recursos o conocimientos técnicos profundos para montar ataques de bots de API.
¿De qué maneras se utilizan los bots en los ataques a las API?
Reconocimiento: los atacantes aprovechan los bots y las botnets para descubrir puntos finales de API vulnerables, probar umbrales de detección, mapear la superficie de ataque, etc.
Ataques: los bots y las botnets se utilizan para atacar las API. Algunos ataques comunes de bots de API son el relleno de credenciales, los ataques de fuerza bruta, los ataques de extracción de contenido, las inyecciones, etc.
Evasión: en los ataques basados en API, los atacantes también aprovechan los bots y las botnets para evadir las defensas de seguridad a través de su comportamiento sigiloso o creando distracciones.
Mitigación de bots de API: 5 formas efectivas
- Recopile inteligencia y cree una línea de base para el comportamiento normal de los bots con respecto a sus API.
- Supervise todas las solicitudes de API entrantes para descubrir y detener el comportamiento anómalo justo en la etapa de reconocimiento.
- La herramienta de seguridad implementada debe poder permitir, bloquear, marcar o desafiar el tráfico entrante de manera inteligente caso por caso sin mucha intervención humana.
- Aproveche el análisis de comportamiento y de patrones, la validación del flujo de trabajo y la toma de huellas digitales para diferenciar de manera eficaz entre la actividad humana, la buena y la mala de los bots.
- Siga escaneando, probando y monitoreando sus API en busca de errores de configuración, vulnerabilidades y fallas en la lógica comercial.
- Fortalezca los controles de acceso y los mecanismos de autenticación con políticas de confianza cero.
- Personalice siempre los conjuntos de reglas de la API.