La seguridad de API se puede clasificar en función de las técnicas utilizadas. Entre ellas se incluyen la seguridad del transporte (como el uso de HTTPS para la transmisión de datos), el control de acceso (por ejemplo, claves de API u OAuth para la autenticación y autorización) y la validación de entradas y salidas (lo que garantiza que los datos que recibe y envía una API son los esperados). También existen medidas proactivas, como la limitación de velocidad de API, para evitar abusos, y pruebas de seguridad automatizadas para detectar vulnerabilidades.
API y seguridad
API es la abreviatura de interfaz de programación de aplicaciones. Del mismo modo que protegería su información básica, como la contraseña vinculada a su identidad de usuario en las redes sociales, es igual de importante en el back-end proteger el acceso a las API, para que no se haga un uso indebido de identificadores como las claves de API y las llamadas de API.
No es de extrañar que las API representen un riesgo de seguridad cada vez mayor, ya que las aplicaciones web o servicios web disponibles casi seguramente estén respaldados, de alguna manera, por una API. Desde aplicaciones móviles y dispositivos del Internet de las cosas (IoT) hasta aplicaciones internas, servicios al cliente basados en la nube y arquitecturas de microservicios, las API hacen posible la comunicación y las transacciones en su empresa.
Así pues, la seguridad de las API web y su gestión deben convertirse en una prioridad esencial para sus equipos de TI durante el ciclo de vida completo de estas. Sin embargo, la protección de las API frente a las amenazas de seguridad puede suponer un desafío complejo, puesto que aquí están implicados factores como la migración a la nube, las innovadoras prácticas de desarrollo y operaciones (DevOps) y que las API están en constante evolución.
Seguridad de API: un enfoque sistemático
La seguridad de API es un enfoque sistemático para proteger las API que las organizaciones utilizan para respaldar sus procesos empresariales. Estos pueden incluir:
- API que se implementan para que los clientes o partners comerciales puedan acceder fácilmente a la funcionalidad y los datos.
- API utilizadas por los partners comerciales.
- API que se implementan y utilizan internamente para que la funcionalidad y los datos de las aplicaciones estén disponibles para diversos sistemas e interfaces de usuario de una manera estandarizada y escalable.
Una estrategia de seguridad de API eficaz debe incluir técnicas sistemáticas para:
- Evaluar el riesgo y el impacto potencial.
- Ejecutar las medidas de mitigación apropiadas.
El primer paso para evaluar el riesgo es crear un inventario de todas las API autorizadas y no autorizadas publicadas y utilizadas por la organización. Este inventario debe incluir atributos como los siguientes:
- Clasificaciones de datos que, como mínimo, distingan entre datos “no confidenciales”, “confidenciales” y “muy confidenciales”.
- Indicadores de riesgo, como vulnerabilidades de API y errores de configuración.
Estos son los elementos esenciales para medir el impacto y priorizar los esfuerzos de mitigación.
Las medidas de visibilidad y mitigación de riesgos de las API deben tener en cuenta un conjunto diverso de posibles amenazas, entre las que se incluyen:
- Detectar e impedir el uso de "API en la sombra" no autorizadas.
- Identificar y corregir las vulnerabilidades y las configuraciones incorrectas de las API que los agentes maliciosos podrían aprovechar.
- Prevenir casos de uso indebido de las API, como el abuso de la lógica empresarial y el scraping de datos.
La identificación y mitigación de estos y otros riesgos para la seguridad de API requiere controles de seguridad lo suficientemente sofisticados como para hacer frente a este panorama de amenazas complejo y en rápida evolución. Sin embargo, es igualmente importante encontrar formas de ampliar las prácticas de seguridad de API a flujos de trabajo no relacionados con la seguridad que afecten a la estrategia de seguridad de API, como el desarrollo de software y la documentación.
API web: conceptos básicos
Las API, o interfaces de programación de aplicaciones, son una parte fundamental del desarrollo web moderno. Pero, un gran poder conlleva una gran responsabilidad, y en lo que respecta a las API, esa responsabilidad es la seguridad. La seguridad de API consiste en proteger las interfaces entre las aplicaciones. Sin una seguridad de API adecuada, los datos confidenciales podrían quedar expuestos, los sistemas podrían verse comprometidos y los servicios podrían verse interrumpidos. Básicamente, la seguridad de API es lo que mantiene alejados a los malos mientras deja que los buenos hagan su trabajo.
Autenticación y autorización para la seguridad de API web
Dos aspectos fundamentales de la seguridad de API son la autenticación y la autorización. La autenticación es el proceso de verificación de la identidad de un usuario, dispositivo o sistema. Es como comprobar un documento de identidad en la puerta de una discoteca: hay que asegurarse de que la persona que intenta entrar es quien dice ser. La autorización, por otro lado, consiste en determinar lo que un usuario verificado puede y no puede hacer. Que alguien esté autorizado a entrar en la discoteca no significa que pueda ir detrás de la barra y servirse una copa. En el mundo de las API, la autenticación y la autorización pueden implicar técnicas como claves de API, tokens u OAuth.
Validación de entradas: una clave para la seguridad de API web
Otro aspecto importante de la seguridad de API es la validación de entradas. Se trata de comprobar que los datos enviados a una API son válidos antes de procesarlos. Por ejemplo, imagine que está revisando las entradas en un cine: no dejaría entrar a alguien con una entrada para una película diferente, ¿verdad? Del mismo modo, la validación de entradas ayuda a evitar que datos maliciosos entren en una API y causen problemas.
Conceptos básicos de la seguridad de API
La seguridad de API es una de las prioridades de los ejecutivos de seguridad que está creciendo a mayor velocidad, pero también es posiblemente una de las menos entendidas. La evolución de las API, que han pasado de ser un mero detalle de la implementación hasta convertirse en un factor estratégico para la innovación, ha sido rápida. Como resultado, muchos equipos de seguridad se esfuerzan actualmente por aumentar la sofisticación de sus estrategias y prácticas de seguridad de API. Las API posibilitan el comercio, pero también transportan datos confidenciales.
A continuación se muestra una recopilación de temas que los responsables y profesionales de seguridad pueden utilizar para aumentar sus conocimientos básicos sobre la seguridad de API.
¿Qué es una API web?
Una API web es una interfaz programática que consta de uno o más terminales expuestos públicamente a un sistema de mensajes de solicitud-respuesta definido, normalmente expresado en formato JSON o XML, que se expone a través de la Web, normalmente mediante un servidor web basado en HTTP.
Cuando oyen "API", lo que la mayoría de la gente piensa es en una API web, un conjunto de terminales. Los terminales constan de rutas de acceso a recursos, las operaciones que se pueden realizar en esos recursos y la definición de los datos de recursos (en JSON, XML, protobuf u otro formato).
El término es útil para diferenciar las API web de otras API, como las expuestas por el sistema operativo o las bibliotecas a las aplicaciones que se ejecutan en la misma máquina. Pero cuando hablamos de transformación digital empresarial y seguridad de API, todos entendemos que "API" se refiere a las API basadas en HTTP (web).
Los cuatro tipos habituales de API web
Los cuatro tipos principales de API web que se ven hoy en día, definidas como basadas en HTTP, son:
- API RESTful: la transferencia de estado representacional, que tiene su origen en la tesis doctoral de Roy Fielding en el año 2000, es el tipo más común de API web y utiliza normalmente el formato de datos JSON (notación de objetos de JavaScript). Las API RESTful son fáciles de utilizar por los marcos de front-end modernos (por ejemplo, React y React Native) y facilitan el desarrollo de aplicaciones web y móviles. Se han convertido en el estándar para cualquier API web, incluidas las utilizadas para B2B.
- API SOAP: SOAP utiliza el lenguaje de marcado extensible (XML) detallado para llamadas a procedimientos remotos (RPC). Aún se puede encontrar entre las API heredadas.
- API GraphQL: el nuevo estándar GraphQL desarrollado por Facebook, proporciona acceso a las bases de datos a través de un único terminal POST (normalmente /graphql). Resuelve un problema común de las API RESTful, que requieren varias llamadas para rellenar una sola página de interfaz de usuario, además de introducir otros problemas adicionales.
- API gRPC: un nuevo protocolo binario de alto rendimiento desarrollado por Googlesobre HTTP/2.0, que se utiliza principalmente para la comunicación este-oeste.
¿Qué diferencia a las API B2C de las API B2B?
Las API de empresa a cliente (B2C) son las que respaldan las aplicaciones web y móviles. Normalmente, los clientes de front-end modernos las utilizan para permitir a los usuarios finales acceder a la funcionalidad empresarial expuesta por estas API.
Las API de empresa a empresa (B2B) son las que utilizan los partners comerciales de la empresa (otras empresas), unas veces para prestarles servicios (siendo estas empresas el cliente final) y otras para proporcionar valor a clientes conjuntos (B2B2C).
Las API B2B son fundamentales para la transformación digital de la empresa, ya que permiten a los equipos de TI optimizar la forma en la que trabajan con sus proveedores, distribuidores y otros partners, así como ofrecer una mejor experiencia a sus clientes.
Entre los ejemplos de API B2B se incluyen:
- API de banca abierta
- API de gestión de la cadena de suministros
- API de facturación y pagos electrónicos entre partners comerciales
Dado que los usuarios de las API difieren enormemente (aplicaciones orientadas al usuario que utilizan API B2C frente a aplicaciones empresariales de partners que utilizan API B2B), los controles de seguridad disponibles para proteger estas API también varían.
En lo que respecta a la seguridad, el sector se ha centrado en casos de uso de B2C hasta hace poco, pero incluso en esos casos, no se ha centrado en proteger las API B2C, sino en proteger las aplicaciones web. Los controles de seguridad empleados para proteger las aplicaciones web B2C son poco eficaces para proteger las API B2C (por ejemplo, WAF/WAAP) o no lo son en absoluto (por ejemplo, la mayoría de las soluciones de protección contra bots).
La protección de las API B2B es un problema cada vez mayor. En lo que respecta a las API B2B, entre los proveedores de primera generación no existe una solución de visibilidad y seguridad dedicada que cubra el acceso a los datos en bloque en nombre de los usuarios compartidos (como es el caso, por ejemplo, de la banca abierta, en la que las empresas fintech y las instituciones financieras comparten consensualmente los datos de los clientes).
¿Cuál es la diferencia entre las API y los terminales?
A menudo, se utiliza el término "API" cuando de lo que se habla realmente es de un único terminal de API. Las API, a veces denominadas servicios o productos de API, son grupos de terminales que sirven a una función empresarial. Por otro lado, un terminal es un recurso (o ruta de acceso de recursos, también conocido como URI o Identificador de recursos uniforme) y la operación que se realiza en él (crear, leer, actualizar o eliminar; operaciones que en las API RESTful se asignan normalmente a los métodos HTTP POST, GET, PUT y DELETE).
¿Qué son las API norte-sur?
Se trata de API que las organizaciones exponen a usuarios externos, principalmente a sus partners comerciales. Por ejemplo, los bancos que adoptan la banca abierta pueden exponer sus cuentas a otras organizaciones de servicios financieros o fintech a través de API. Las organizaciones del sector sanitario pueden exponer los registros de los pacientes a compañías de seguros y otras organizaciones médicas a través de API. Las empresas del sector de la hostelería pueden exponer su sistema de reservas a agentes de viajes o agregadores a través de API. Las API son el tejido conectivo que une a las organizaciones. Las API norte-sur suelen considerarse seguras porque el acceso está autorizado y autenticado. Normalmente, son el tipo de API de mayor volumen y crecimiento, por lo que suponen también la mayor superficie de ataque de la mayoría de las organizaciones.
¿Qué son las API este-oeste?
Son las API que las organizaciones utilizan internamente. Estas API conectan aplicaciones internas o unidades de negocio o departamentos. Siempre que no se pueda acceder a ellas desde fuera de la organización, estas API se consideran API este-oeste.
¿Cuál es la diferencia entre las API privadas y las públicas?
Las API privadas, a veces también denominadas API internas, están dirigidas a los desarrolladores y contratistas de la empresa. A menudo forman parte de una iniciativa de arquitectura orientada a servicios (SOA) y están pensadas para agilizar el desarrollo interno al permitir que diferentes departamentos o unidades de negocio accedan a los datos de los demás de forma eficiente y eficaz.
Por el contrario, las API públicas, también conocidas como API externas, están expuestas a usuarios externos a la empresa. En su manifestación más extrema, como API abiertas, cualquiera puede usarlas libremente, pero en cualquier caso, requieren una gestión más estricta y una documentación óptima para que puedan utilizarlas ingenieros externos a la empresa.
Es importante tener en cuenta que las API privadas a las que se puede acceder a través de Internet no son realmente privadas, en el sentido estricto de la palabra. Tomemos, por ejemplo, la API B2C de ACME, utilizada únicamente por las aplicaciones móviles de ACME (desarrollada internamente por ingenieros de ACME). Podría parecer una API privada, pero como el tráfico llega a esta API desde Internet ("fuera de la empresa"), no lo es realmente, simplemente no está documentada. Los hackers atacan estas API a diario, interceptando el tráfico y aplicando ingeniería inversa a las aplicaciones móviles para ver con qué API interactúan.
¿Cuál es la gravedad del problema de la seguridad de API?
Los riesgos de la seguridad de API ya son uno de los más acuciantes a los que se enfrentan los equipos de seguridad de las empresas, y el desafío no deja de crecer a medida que aumenta el número de interacciones con los clientes y de procesos empresariales internos que utilizan las API.
En resumen, el uso de API aumenta exponencialmente y muchos equipos de seguridad están poniendo al día sus estrategias de seguridad de API.
Por este motivo, la seguridad de API se está convirtiendo rápidamente en una de las principales prioridades y áreas de preocupación para los ejecutivos de TI y seguridad. De hecho, según un estudio realizado por Gartner, "para el año 2022, los abusos de las API pasarán de ser un vector de ataque poco frecuente a ser el más frecuente, lo que dará lugar a filtraciones de datos en las aplicaciones web empresariales".
¿En qué se diferencia la seguridad de API de la seguridad de las aplicaciones?
Si bien la seguridad de API y la seguridad de las aplicaciones tradicional son disciplinas relacionadas, la primera plantea un reto distinto por dos razones clave: la escala y la complejidad del problema.
Mayor escala
Hay tres factores que contribuyen al rápido crecimiento del uso de las API:
- El uso creciente de microservicios, una arquitectura que exige el uso de API para la comunicación servicio a servicio.
- En el canal de usuario directo, los marcos de aplicaciones front-end modernos, como React, Angular y Vue, utilizan API y están sustituyendo a las aplicaciones web heredadas que a veces no lo hacen.
- Además, se añaden API para abordar también canales completamente nuevos (canales que son intrínsecamente diferentes) para partners, IoT y automatización empresarial.
Flexibilidad que genera complejidad
A diferencia de las aplicaciones web, las API están diseñadas para utilizarse mediante programación de muchas formas diferentes, lo que hace que diferenciar el uso legítimo de los ataques y el abuso sea extremadamente difícil.
¿Qué es la seguridad de API a API?
Cada vez más organizaciones utilizan API para poner los procesos empresariales y los datos a disposición de clientes y partners de forma bidireccional. La mayoría entiende que las API de empresa a cliente, a veces conocidas como B2C, alimentan los datos de los sitios web o las aplicaciones móviles. Sin embargo, la red de API que se activa en segundo plano también requiere seguridad de API a API. Piense en la aplicación de fintech a la que accede para consultar su información financiera que crea llamadas de API de empresa a empresa, también conocidas como B2B, desde esa aplicación a su banco para autenticarle como usuario. La red de llamadas de API B2C a B2B demuestra que necesita un enfoque holístico para proteger todo el tráfico de API. La enmarañada red de llamadas de API B2C y B2B indica que las organizaciones también deben tener en cuenta la seguridad de API a API.
¿Cuáles son las prácticas recomendadas para las API web?
Para mejorar su seguridad de API, las organizaciones interesadas pueden empezar por las siguientes 12 prácticas recomendadas:
- Buscar formas de integrar los estándares y las prácticas de seguridad de API en el ciclo de vida de desarrollo de software de la organización.
- Incorporar la documentación de las API y las pruebas de seguridad automatizadas en los procesos de integración y entrega continua (CI/CD).
- Asegurarse de que se aplican a las API controles de autenticación y autorización adecuados y eficaces.
- Implementar medidas de limitación de velocidad para evitar el abuso o la sobrecarga de las API.
- Aumentar la limitación de velocidad y otras medidas a nivel de aplicación con puertas de enlace especializadas o redes de distribución de contenido para mitigar el riesgo de ataques distribuidos de denegación de servicio (DDoS).
- Convertir las pruebas de seguridad de API en una parte integral de los procesos de pruebas de aplicaciones más amplios.
- Poner en práctica un proceso de detección continua de API.
- Implementar un enfoque sistemático para identificar y corregir vulnerabilidades comunes de las API, incluidos los 10 principales riesgos de seguridad de API según OWASP.
- Utilizar la detección y prevención de amenazas basadas en firmas como nivel de referencia de protección contra ataques conocidos de API.
- Ampliar la detección basada en firmas con IA y análisis de comportamiento para que la detección de amenazas de API sea más escalable, precisa, relevante para el negocio y resistente frente a nuevas amenazas.
- Asegurarse de que la supervisión y el análisis de la seguridad de API se prolonguen durante varias semanas y sesiones de API.
- Complementar la supervisión y las alertas de seguridad de API con acceso bajo demanda a los datos de actividad e inventario de API para que los utilicen los investigadores de amenazas, los desarrolladores, los equipos de DevOps y el personal de soporte.
La mejor manera de abordar las prácticas recomendadas de seguridad de API es pensar en términos de madurez organizativa utilizando un marco como el que se muestra a continuación.
¿Qué es una vulnerabilidad de API?
Una vulnerabilidad de API es un error de software o de configuración del sistema que puede explotar un atacante para acceder a funciones o datos confidenciales de una aplicación o para hacer algún otro uso indebido de una API.
Los 10 principales riesgos de seguridad de API según OWASP ofrecen una descripción útil de algunas de las vulnerabilidades de API que más se explotan y que las organizaciones deben intentar identificar y corregir.
¿Se incluyen todas las vulnerabilidades de API en los 10 principales riesgos de seguridad de API según OWASP?
Los 10 principales riesgos de seguridad de API según OWASP son un excelente punto de partida para las organizaciones que buscan mejorar su estrategia de protección y seguridad de API. Sus categorías cubren una amplia gama de posibles riesgos de las API. Pero es importante tener en cuenta que las categorías incluidas en los 10 principales riesgos de seguridad de API según OWASP son bastante genéricas. Por lo tanto, es importante profundizar y centrarse en las subáreas de cada una de ellas.
También existen riesgos de seguridad de API que quedan completamente fuera de 10 principales riesgos de seguridad de API según OWASP, como el abuso de errores lógicos. Por ejemplo, los atacantes que apuntan a las API a menudo intentan aprovechar los problemas de autorización (cubiertos ampliamente por OWASP), así como vulnerar errores lógicos (que OWASP no cubre de ningún modo).
¿Cómo se pueden vulnerar las API?
Las API se pueden atacar y vulnerar de muchas formas diferentes, pero algunas de las formas más comunes incluyen:
- Explotación de vulnerabilidades: las vulnerabilidades técnicas de la infraestructura subyacente pueden comprometer el servidor. Los ejemplos de estos tipos de vulnerabilidades incluyen desde las vulnerabilidades de Apache Struts (CVE-2017-9791, CVE-2018-11776 y similares) hasta las vulnerabilidades de Log4j (CVE-2021-44228 y similares).
- Abuso de la lógica empresarial: estos son los escenarios alarmantes que mantienen a los directores de seguridad de la información en vela, ya que los controles de seguridad heredados son inútiles frente a ellos. El abuso de la lógica se produce cuando un atacante aprovecha los defectos de diseño o implementación de una aplicación para generar un comportamiento inesperado y no autorizado.
- Acceso no autorizado a los datos: otra forma común de abuso de API es aprovechar mecanismos de autorización comprometidos para acceder a los datos a los que no se debería tener acceso. Estas vulnerabilidades tienen muchos nombres, como autorización a nivel de objeto comprometida (BOLA) y referencia de objeto directo no segura (IDOR), así como autorización a nivel de función comprometida (BFLA). Puede consultar una lista actualizada de vulnerabilidades en el sitio web del proyecto de seguridad de API de OWASP.
- Robo de cuentas: después de un robo de credenciales o incluso de un ataque de scripts entre sitios (XSS), se puede tomar el control de una cuenta. Cuando esto sucede, el abuso incluso de la API mejor redactada y mejor protegida es posible. Después de todo, si no realiza un análisis de comportamiento, cualquier actividad autenticada se considera un uso legítimo.
- Scraping de datos: cuando las organizaciones ponen a disposición conjuntos de datos a través de API públicas, los atacantes pueden consultar de forma agresiva estos recursos para realizar una captura indiscriminada de grandes volúmenes de información valiosa.
- Denegación de servicio (DoS) empresarial: al pedir al back-end que realice tareas pesadas, los atacantes de API pueden provocar una "erosión del servicio" o una denegación completa de servicio en la capa de aplicación (una vulnerabilidad muy común en GraphQL, pero que puede suceder con cualquier implementación de terminal de API que utilice muchos recursos).
¿Cómo se protegen las API de back-end?
Las API de back-end permiten a los desarrolladores acceder a los servicios centrales de las aplicaciones de forma rápida y muy repetible. Esto es de especial importancia para las organizaciones que ofrecen los datos a través de varias interfaces de usuario diferentes. Uno de los pasos más importantes que se deben tomar para proteger las API de back-end es implementar un modelo eficaz de autenticación y acceso. Pero también es importante no suponer que nunca se abusará de un conjunto bien autenticado de API back-end.
Se han dado numerosos casos de atacantes que aprovechan las vulnerabilidades de las aplicaciones móviles o las interfaces web para hacer que la interfaz de usuario interactúe con las API de back-end de formas inesperadas y no autorizadas. La mejor forma de proteger las API de back-end contra estos y otros tipos de abuso es mediante el uso continuo de análisis de comportamiento. La creación de modelos de uso estándar de las API de back-end permitirá detectar anomalías y tomar medidas proactivas para proteger las API de back-end contra vectores de ataque que pueden no haberse previsto durante el proceso inicial de desarrollo e implementación.
¿Qué es una API zombi?
Debido a los cambios en los requisitos empresariales y en el mercado, las API están en constante evolución. A medida que se lanzan nuevas implementaciones de terminales para satisfacer las nuevas necesidades empresariales, corregir errores e introducir mejoras técnicas, las versiones más antiguas de estos terminales van quedando obsoletas.
La gestión del proceso de retirada de terminales antiguos no es una tarea sencilla. A menudo, las implementaciones de terminales que deberían haberse retirado permanecen activas y son accesibles; es lo que se denomina API zombis.
¿Cómo se pueden identificar los distintos tipos de API en la sombra?
La mejor manera de detectar API en la sombra en toda la empresa es incorporar y analizar los datos de registro de actividad de API de las fuentes, lo que proporciona la cobertura más amplia. La implementación de sensores por aplicación en cada API puede proporcionar información detallada sobre la actividad de la API, pero por definición no puede proporcionar una amplia cobertura, ya que las API heredadas o las API que no se conocen permanecen en la sombra.
Algunos ejemplos de fuentes de registros de datos de actividad de API son:
- Redes de distribución de contenido (CDN)
- Puertas de enlace de API
- Firewalls de aplicaciones web (WAF)
- Orquestación de contenedores Kubernetes
Una vez recopilados los datos sin procesar de todas las fuentes disponibles, se pueden utilizar técnicas de IA para transformarlos en un inventario comprensible para el ser humano de todas las API, los terminales y los parámetros. A partir de ahí, se pueden realizar análisis adicionales para clasificar estos elementos e identificar las API ocultas que deben eliminarse o incorporarse a los procesos de control formales.
¿Cómo se protegen las API de empresa a empresa y las API internas?
En lo que respecta a las API internas, todo depende de lo que se entienda por "interna". Con frecuencia, la gente se refiere a las API expuestas a través de Internet a las aplicaciones web y móviles de su propia organización como "API internas". Aunque la documentación de estas API solo puede ser accesible para empleados y contratistas de la empresa, los hackers son expertos en el análisis de aplicaciones y la ingeniería inversa de las API que las sirven a través de kits de herramientas de desmontaje de aplicaciones y proxies como Burp Suite.
Sin embargo, si por "API internas" se entiende API este-oeste a las que no se puede acceder desde fuera de la organización, el riesgo principal se reduce a las amenazas internas.
Proteja sus API internas (en el sentido anterior de la palabra) y sus API de empresa a empresa (B2B) como haría con la mayoría de las API: comience por proteger su ciclo de vida de desarrollo de software seguro (SSDLC), continúe garantizando el acceso autenticado y autorizado; gestione cuotas, límites de velocidad y detenciones de picos; y protéjase contra firmas conocidas con WAF/WAAP.
En el caso de las API B2B, debido a la naturaleza confidencial y a menudo masiva de las transacciones, considere la posibilidad de añadir, si es posible, mecanismos de autenticación estrictos, como mTLS.
Para ambas, le recomendamos que utilice análisis de comportamiento, especialmente si tiene muchas entidades implicadas, lo que puede dificultar el proceso de distinguir entre comportamientos legítimos e ilegítimos.
Por ejemplo:
- ¿Cómo saber si las credenciales de API de un usuario concreto han sido vulneradas?
- ¿Cómo podría saber si su API de facturación está sufriendo un ataque por parte de un partner que itera números de factura para robar datos de cuentas?
La protección de API B2B y API internas requiere un contexto empresarial que no se puede obtener analizando elementos técnicos, como direcciones IP y tokens de API, por sí solos. El uso de IA y análisis de comportamiento para obtener visibilidad de las entidades relevantes para el negocio es la única forma de comprender y gestionar eficazmente los riesgos de las API internas y las API B2B. El contexto empresarial y los puntos de referencia históricos para el uso normal de las API por parte de entidades específicas, como sus usuarios o partners, o incluso entidades de procesos empresariales (facturas, pagos, pedidos, etc.), permiten detectar anomalías que, de otro modo, pasarían inadvertidas.
¿Las puertas de enlace de API tienen seguridad integrada?
Muchas organizaciones que utilizan un enfoque estratégico para las API utilizan puertas de enlace de API. Algunos ejemplos son Apigee, Kong, MuleSoft, Akamai, AWS API Gateway, y Azure API Management.
La mayoría de las puertas de enlace de API integran funciones de seguridad completas que las organizaciones deberían aprovechar, en primer lugar, la autenticación (y también la autorización, si pueden utilizar OpenID Connect).
Sin embargo, no basta con realizar la autenticación, la autorización y la gestión de cuotas en la puerta de enlace de API, por varios motivos:
- Las deficiencias en la detección de las puertas de enlace de API. Las puertas de enlace de API solo tienen visibilidad y control sobre las API que están configuradas para gestionar, lo que las hace ineficaces a la hora de detectar los terminales y las API en la sombra.
- Las brechas de seguridad de las puertas de enlace de API. Las puertas de enlace de API pueden aplicar la autenticación y, en cierta medida, los esquemas de autorización, pero no inspeccionan las cargas (como hacen los WAF y los WAAP), ni perfilan el comportamiento para detectar abusos.
¿Cuáles son los fallos de configuración de API más comunes?
El número de posibles errores de configuración de API es casi infinito, dada la multitud de formas en que se utilizan las API. Sin embargo, los siguientes son algunos temas recurrentes:
Autenticación ineficaz o inexistente
La autenticación es fundamental para proteger los datos confidenciales que están disponibles a través de las API. El primer paso consiste en asegurarse de que todas las API que contienen datos confidenciales disponen en primer lugar de autenticación. Pero también es importante proteger los mecanismos de autenticación contra ataques de fuerza bruta, Credential Stuffing y el uso de tokens de autenticación robados mediante la limitación de velocidad.
A veces pueden producirse errores de configuración que permiten a los usuarios de API omitir los mecanismos de autenticación, a menudo en torno a la gestión de tokens (por ejemplo, algunos problemas notorios de validación de JWT o no comprobar el ámbito de los tokens).
Autorización comprometida
Uno de los usos más comunes de las API es proporcionar acceso a datos o contenido, incluida información confidencial. La autorización es el proceso de verificación de que un usuario de API es apto para acceder a los datos a los que intenta acceder, antes de ponerlos a su disposición. Esto se puede hacer en el nivel de objeto o recurso (por ejemplo, puede acceder a sus pedidos, pero no a los de otra persona), o en el nivel de función (como suele ocurrir con las capacidades administrativas).
La autorización es difícil de implementar correctamente debido al elevado número de casos y condiciones, y debido a los diversos flujos que las llamadas de API pueden tomar entre microservicios. Si no tiene un motor de autorización centralizado, es probable que la implementación de API incluya algunas de estas vulnerabilidades, como BOLA (autorización a nivel de objeto comprometida) y BFLA. (autorización a nivel de función comprometida).
Errores de configuración de seguridad
Existen muchos tipos posibles de errores de configuración de seguridad más allá de los problemas de autenticación y autorización mencionados anteriormente, como la comunicación no segura (por ejemplo, no usar SSL/TLS o usar conjuntos de cifrado vulnerables), el almacenamiento en la nube sin protección y las políticas de uso compartido de recursos entre orígenes demasiado permisivas.
Falta de recursos y limitación de velocidad
Cuando las API se implementan sin ningún límite en el número de llamadas que los usuarios de API pueden realizar, los agentes maliciosos pueden saturar los recursos del sistema, lo que provoca la degradación del servicio y la denegación de servicio (DoS) a gran escala. Como mínimo, se deben aplicar límites de velocidad al acceso a cualquier terminal no autenticado, siendo los terminales de autenticación de vital importancia; de lo contrario, los ataques de fuerza bruta, de Credential Stuffingy de validación de credenciales ocurrirán sin remedio.
¿Qué son los ataques a las API?
Los ataques a las API son intentos de utilizar API con fines maliciosos o no autorizados. Los ataques a las API adoptan muchas formas, entre las que se incluyen:
- Explotación de vulnerabilidades técnicas en implementaciones de API.
- Uso de credenciales robadas, así como de otras técnicas de robo de cuentas para hacerse pasar por un usuario legítimo.
- Abuso de la lógica empresarial que permite el uso de API de formas inesperadas.
¿Qué es el Credential Stuffing para las API?
La filtración de información de ID de usuario y contraseña de sitios web y plataformas de SaaS se ha convertido en algo habitual. A menudo, estos incidentes provocan que se compartan ampliamente en línea grandes conjuntos de credenciales.
El Credential Stuffing es la práctica de utilizar credenciales de autenticación filtradas de sitios web que se han vulnerado anteriormente para realizar intentos de inicio de sesión automatizados en otros sitios web. Esta técnica se basa en la premisa de que algún porcentaje de usuarios utiliza las mismas credenciales para varios sitios.
Cada vez más, esta práctica se aplica a las API directamente (no a través del front-end, ya sea una aplicación web o móvil). Esto permite a los atacantes automatizar el ataque más fácilmente, pues, al fin y al cabo, las API se crean para facilitar el uso.
¿Qué es la exfiltración de datos a través de API?
La exfiltración de datos se suele producir cuando los ataques a las API y los abusos a estas consiguen su objetivo. En algunos casos, al hablar de exfiltración de datos se hace referencia a información con un alto nivel de confidencialidad y no pública robada por un atacante a través de ataques a las API y el abuso de estas. Sin embargo, también se puede aplicar a tipos menos graves de abuso de API, incluido el scraping agresivo de datos disponibles públicamente para recopilar grandes conjuntos de datos valiosos en su conjunto.
¿Cuáles son las últimas tendencias en seguridad de API?
Prácticas de desarrollo. A continuación se muestran las tendencias clave que los ejecutivos de seguridad deben tener en cuenta al desarrollar una estrategia de seguridad y protección de API.
Análisis de comportamiento y detección de anomalías: además de intentar predecir posibles ataques y depender de la detección basada en firmas y de políticas predefinidas (por ejemplo, WAF) para mitigar el riesgo, las organizaciones recurren cada vez más a la IA y al análisis de comportamiento para ver la actividad de API en un contexto empresarial y detectar anomalías.
Transición del entorno local al software como servicio: aunque muchos productos de seguridad de API de primera generación se implementaron en el entorno local, los enfoques de software como servicio (SaaS) son cada vez más populares debido a su velocidad y facilidad de implementación, y a su capacidad para aprovechar el potencial de la IA y el aprendizaje automático a escala.
Análisis de periodos de tiempo más amplios: los enfoques de seguridad de API que solo analizan llamadas de API individuales o actividad de sesión a corto plazo se están sustituyendo por plataformas que analizan la actividad de API a lo largo de días y, a veces, semanas, desde completar la optimización automatizada de políticas WAF básicas hasta realizar análisis de comportamiento y detectar anomalías.
DevSecOps: incorporación de partes interesadas no relacionadas con la seguridad: una de las mejores formas de reducir los riesgos de las API es establecer una conexión más estrecha entre las estrategias y herramientas de seguridad de API y los desarrolladores y sistemas implicados en la creación, implementación y configuración de las API.
Seguridad de API habilitada para API: aunque es fundamental detectar y mitigar los ataques activos a las API y los casos de abuso, las organizaciones con visión de futuro están buscando formas de utilizar el acceso bajo demanda a los datos y la información de seguridad de API para mejorar la búsqueda de amenazas, la respuesta a incidentes y las API.
¿Qué se entiende por seguridad de API basada en firmas?
Las técnicas de seguridad de API basada en firmas supervisan las características y patrones de ataque conocidos, y generan alertas de seguridad y otras respuestas automatizadas cuando se observan coincidencias. El valor de la detección basada en firmas es limitado (para la seguridad de API y en general), ya que muchos ataques a las API y técnicas de abuso simplemente no tienen firma.
Toda la premisa de la detección basada en firmas es que exista alguna señal reveladora en un solo paquete o solicitud. Al no tener que preocuparse por el contexto (¿Quién es este usuario? ¿A cuántos terminales accedió el mes pasado?), los motores de comparación de firmas pueden trabajar a velocidades extremadamente altas. Sin embargo, eso también hace que pasen por alto la mayoría de los ataques a las API.
La seguridad de API requiere contexto: es necesario comprender cada solicitud de API en el contexto del usuario que la realiza, sus solicitudes anteriores y los patrones generales de solicitud de todos los usuarios. Por lo tanto, se deben utilizar técnicas de seguridad de API basadas en el análisis de comportamiento y el aprendizaje automático para detectar usos anómalos.
¿Qué es la detección y respuesta de API?
La detección y respuesta de API es una categoría emergente de seguridad de API centrada en un análisis profundo de los datos históricos con los siguientes fines:
- Establecer un estándar de comportamiento para todos los usuarios de API.
- Detectar ataques y anomalías que indiquen un posible abuso y uso incorrecto de las API.
Para ser eficaces a gran escala, las soluciones de detección y respuesta de API deben ofrecerse bajo un modelo de software como servicio (SaaS) debido al enorme tamaño de los conjuntos de datos que requieren las técnicas de IA y aprendizaje automático, que consumen muchos recursos.
¿Qué es la protección avanzada contra amenazas de API?
La protección avanzada contra amenazas de API es un enfoque basado en SaaS para la seguridad de API que combina los análisis de comportamiento con la búsqueda de amenazas con los siguientes fines:
- Detectar todas las API que utiliza una organización, incluidas las API en la sombra o zombis.
- Aplicar el aprendizaje automático para superponer el contexto empresarial sobre cómo se utilizan las API y se abusa de ellas.
- Realizar análisis de comportamiento y búsqueda de amenazas en las API y en los datos de actividad de esas API que abarquen periodos de tiempo prolongados.
¿Qué es una plataforma de seguridad de API?
Una plataforma de seguridad de API es una oferta basada en SaaS especialmente diseñada con los siguientes fines:
- Crear un inventario continuamente actualizado de todas las API en uso en toda la empresa (tanto si están autorizadas como si no).
- Analizar las API y su uso con técnicas de IA y aprendizaje automático para descubrir el contexto empresarial y establecer un estándar de comportamiento esperado.
- Detectar anomalías en el uso de las API y, cuando sea necesario, proporcionar alertas y datos de apoyo a los flujos de trabajo de gestión de eventos e información de seguridad (SIEM) y de orquestación, automatización y respuesta de seguridad (SOAR).
- Proporcionar acceso bajo demanda a la información de inventario, actividad y amenazas de API tanto a las partes interesadas del área de seguridad como a las de otros ámbitos.
¿Qué tipos de seguridad de API existen?
Las organizaciones utilizan muchos tipos diferentes de técnicas de seguridad de API para proteger sus aplicaciones y datos confidenciales contra el uso indebido y otros tipos de ataques. Algunos tipos comunes de seguridad de API son:
- Análisis del código de las API en busca de fallos y vulnerabilidades durante el desarrollo y las pruebas.
- Desarrollo de modelos de amenazas de API e implementación de medidas defensivas como la validación de entradas.
- Implementación de API con prácticas recomendadas como el cifrado TLS y modelos de autenticación y autorización eficaces y escalables.
- Despliegue en primera línea de herramientas especializadas como firewalls de aplicaciones web, plataformas de mitigación de bots y puertas de enlace de API.
- Realización periódica de evaluaciones de vulnerabilidades para identificar cualquier error de configuración u otros fallos de implementación.
- Detección continua de API para garantizar que todas las API en uso están protegidas o, en caso necesario, retiradas.
- Supervisión de técnicas conocidas de ataque a las API mediante firmas.
- Supervisión de formas más sofisticadas de abuso de las API mediante el uso de análisis de comportamiento y detección de anomalías.
- Realización de actividades continuas de búsqueda de amenazas para identificar y mitigar los riesgos en una fase temprana y proporcionar orientación proactiva en materia de seguridad a los equipos de desarrollo y operaciones.
Todos estos tipos de seguridad de API pueden desempeñar un papel en su estrategia general de seguridad, pero es importante implementarlos de forma integrada centrándose en el perfil de riesgo específico de su organización.
¿Qué es una empresa de API?
Ahora que los responsables de TI y seguridad utilizan las API de forma más estratégica, es posible que tengan que recurrir a partners especializados en API. Los dos tipos más comunes de empresas de API son:
- Empresas que ofrecen puertas de enlace de API y que proporcionan la tecnología necesaria para aceptar las llamadas de API de forma centralizada y dirigirlas a los recursos de back-end y microservicios adecuados.
- Empresas que ofrecen plataformas de seguridad de API y que ayudan a las empresas a identificar todas las API activas, detectar casos de ataques y abusos, y les proporcionan datos enriquecidos sobre cómo se utilizan esas API.
¿Qué es la búsqueda de amenazas en las API?
Muchos equipos de seguridad llevan a cabo actividades proactivas de búsqueda de amenazas para identificar las posibles amenazas con antelación y responder con medidas defensivas. Muchos productos de seguridad de API de primera generación ofrecen un valor limitado a los equipos de búsqueda de amenazas, ya que se centran en las alertas y no almacenan actividad de API en absoluto, lo que significa que no hay datos que consultar ni buscar. Las empresas de seguridad de API más avanzadas almacenan conjuntos de datos de actividad de API de gran tamaño y con contexto, y hacen que esta información esté disponible tanto en una interfaz gráfica de usuario como a través de API, de modo que los investigadores de amenazas puedan utilizar los datos.
¿Qué es WAAP?
La protección de API y aplicaciones web (WAAP) es una categorización que la empresa de investigación Gartner utiliza para su cobertura en el sector de amenazas web y API emergentes. Se trata de una evolución de la cobertura anterior del sector en el mercado de los firewalls de aplicaciones web (WAF) en respuesta a la creciente importancia estratégica de la seguridad de API y al paso de las plataformas WAF a la nube como servicio SaaS gestionado.
¿Qué es un ejemplo de documentación de API?
La forma más común de documentación de API para API RESTful (que son el tipo más común de API web) es una colección de archivos Swagger basados en la especificación OpenAPI. Lo ideal es que los desarrolladores creen la documentación de API cuando se diseña o implementa una API. Sin embargo, la documentación de API suele estar obsoleta, lo que provoca una discrepancia entre esa documentación y el uso de la API en el mundo real. Para solucionar este problema, algunas plataformas de seguridad de API pueden generar archivos Swagger a partir de la actividad real de la API, lo que pone de relieve las brechas entre lo que se documenta y lo que se implementa realmente, un componente integral de cualquier evaluación de riesgos de API.
¿Hay una lista de comprobación de seguridad de API que las empresas deberían seguir?
Una seguridad de API eficaz requiere muchos pasos detallados y prácticas continuas. A continuación se muestra una lista de comprobación que los equipos de seguridad pueden utilizar como punto de partida a medida que avanzan hacia un enfoque más sofisticado de la seguridad de API:
- ¿Su enfoque de seguridad de API incluye un mecanismo para la detección continua de API en toda la empresa?
- ¿Está aprovechando la nube o el SaaS para obtener acceso a las técnicas de IA y aprendizaje automático, evitando, así, complicar innecesariamente la implementación?
- ¿Su enfoque de seguridad de API analiza los datos a lo largo de un horizonte temporal lo suficientemente largo (lo ideal es que sea de al menos 30 días)?
- ¿Proporcionará su enfoque a sus equipos el contexto empresarial que necesitan para comprender realmente la actividad de las API y los posibles riesgos que se están observando?
- ¿Cuenta con una estrategia de automatización bidireccional entre su plataforma de seguridad de API y otros procesos empresariales relacionados, como SIEM/SOAR, búsqueda de amenazas, documentación, herramientas de DevOps, etc.?
- ¿Está tomando medidas para hacer partícipes a las partes interesadas que no pertenecen al ámbito de la seguridad, como los desarrolladores, de sus herramientas y procesos de seguridad de API?
¿Hay alguna taxonomía de API que los equipos de seguridad deberían comprender?
A continuación se muestran las categorizaciones y descripciones comunes de las API que pueden aparecer en un contexto de seguridad.
Categorizaciones de seguridad de API
API autorizadas | API no autorizadas | API obsoletas |
---|---|---|
API publicada (con documentación de Swagger o similar) | API en la sombra |
API obsoleta |
API no aprobada | API heredada | |
API zombi | API zombi | |
API oculta | API huérfana |
¿Cuáles son los términos de API y los tipos de API más comunes?
Resulta útil para los equipos de seguridad familiarizarse con los siguientes términos que hacen referencia a los diferentes modelos de uso y enfoques tecnológicos para las implementaciones de API.
API según la intención de uso
Modelo de uso de la API |
Descripción |
---|---|
API pública |
Una API que está disponible y se comparte libremente con todos los desarrolladores a través de Internet. |
API externa | Una API externa, término que a menudo se utiliza indistintamente con el de API pública, es una API expuesta a través de Internet. |
API privada | Una API que se implementa en un centro de datos protegido o un entorno de nube para su uso por parte de desarrolladores de confianza. |
API interna | Término que a menudo se utiliza indistintamente con el de API privada. |
API de terceros | Proporciona acceso programático a funciones especializadas o datos de un origen de terceros para su uso en una aplicación. |
API de partner | Tipo de API de terceros que se pone a disposición de forma selectiva para los partners comerciales autorizados. |
API autenticada | API a la que solo pueden acceder los desarrolladores a los que se han otorgado credenciales (o que han obtenido acceso no autorizado a ellas). |
API no autenticada | API a la que se puede acceder programáticamente sin necesidad de credenciales específicas. |
Tecnologías y términos de API comunes
Modelo de uso de la API | Descripción |
---|---|
API HTTP | API que utiliza el protocolo de transferencia de hipertexto como protocolo de comunicación para llamadas API. |
API RESTful | La transferencia de estado representacional (RESTful), que tiene su origen en la tesis doctoral de Roy Fielding en 2000, es el tipo más común de API web y utiliza normalmente el formato de datos JSON (notación de objetos de JavaScript). Las API RESTful son fáciles de utilizar por los marcos de front-end modernos (por ejemplo, React y React Native) y facilitan el desarrollo de aplicaciones web y móviles. Se han convertido en el estándar para cualquier API web, incluidas las utilizadas para B2B. |
GraphQL | Las API GraphQL son el nuevo estándar desarrollado por Facebook que proporciona acceso a bases de datos a través de un único terminal POST (normalmente /graphql). Resuelve un problema común de las API RESTful, que requieren varias llamadas para rellenar una sola página de interfaz de usuario, además de introducir otros problemas adicionales. |
SOAP | SOAP utiliza el lenguaje de marcado extensible (XML) detallado para llamadas a procedimientos remotos (RPC). Aún se puede encontrar entre las API heredadas. |
XML-RPC | XML-RPC es un método para realizar llamadas a procedimientos a través de Internet que utiliza una combinación de XML para la codificación y HTTP como protocolo de comunicaciones. |
gRPC | Las API gRPC son un nuevo protocolo binario de alto rendimiento desarrollado por Google sobre HTTP/2.0, que se utiliza principalmente para la comunicación este-oeste. |
OpenAPI | OpenAPI es una descripción y especificación de documentación para API. En sus versiones anteriores, OpenAPI se conocía como Swagger, y, a menudo, los términos se siguen utilizando indistintamente (al igual que SSL y TLS). |
¿Qué incluye una solución de seguridad de API?
Las soluciones de seguridad de API son un conjunto de herramientas y prácticas utilizadas para garantizar la seguridad de las interfaces de programación de aplicaciones (API) frente a ataques maliciosos y filtraciones de datos. Las empresas y organizaciones utilizan las API para permitir que sus aplicaciones se comuniquen entre sí, compartan datos y realicen diversas funciones.
Sin embargo, a medida que se ha extendido el uso de las API, también lo han hecho los riesgos de seguridad asociados a ellas. Las API pueden ser vulnerables a una serie de amenazas de seguridad, como el acceso no autorizado, los ataques de denegación de servicio y los ataques de inyección. Para mitigar estos riesgos, las empresas deben implementar soluciones de seguridad de API eficaces.
Entre las soluciones de seguridad de API se incluyen:
- Autenticación y autorización: las soluciones de seguridad de API requieren autenticar y autorizar a los usuarios que acceden a las API para garantizar que solo los usuarios autorizados puedan acceder a los datos y manipularlos. Los métodos de autenticación incluyen la autenticación multifactorial, OAuth, OpenID Connect y las claves de API, mientras que los métodos de autorización incluyen el control de acceso basado en funciones y el control de acceso basado en atributos.
- Puerta de enlace de API: una puerta de enlace de API es un componente de las soluciones integrales de seguridad de API que actúa como punto de entrada para todas las solicitudes de API. La puerta de enlace puede realizar varias funciones, como la autenticación, la limitación de velocidad, la gestión del tráfico y el almacenamiento en caché. También puede ayudar a prevenir ataques como los distribuidos de denegación de servicio (DDoS).
- Cifrado: las soluciones de seguridad de API también incluyen el cifrado, que garantiza que los datos transmitidos a través de las API son seguros y no pueden ser interceptados por los atacantes. Las técnicas de cifrado incluyen el cifrado SSL, TLS y AES, que se pueden utilizar para cifrar las solicitudes de API, las respuestas y los datos en reposo.
- Limitación de velocidad: la limitación de velocidad es una función de las soluciones de seguridad de API que ayuda a evitar los ataques de denegación de servicio al limitar el número de solicitudes que un usuario puede realizar en un periodo de tiempo determinado. La limitación de velocidad se puede basar en direcciones IP, cuentas de usuario u otros parámetros, y puede ayudar a evitar que los atacantes saturen las API con solicitudes.
- Auditoría y registro: las soluciones de seguridad de API también deben incluir auditoría y registro, que pueden ayudar a detectar y mitigar las amenazas de seguridad al proporcionar visibilidad de la actividad de las API. La auditoría consiste en realizar un seguimiento de las solicitudes y respuestas de API, mientras que el registro se ocupa de registrar los eventos y actividades de las API de forma segura y a prueba de manipulaciones.
- Pruebas de API: las soluciones de seguridad de API también requieren la realización de pruebas de API para identificar vulnerabilidades y posibles riesgos de seguridad. Las pruebas de API se pueden realizar manualmente o mediante herramientas automatizadas, y pueden ayudar a garantizar que las API son seguras y que funcionan según lo previsto.
- Supervisión de API y protección del tiempo de ejecución: el comportamiento de las API debe supervisarse en una solución de seguridad de API. Comprender el comportamiento normal frente al abuso anormal es un componente esencial para proteger las API de los usuarios malintencionados.
- Gestión de vulnerabilidades: las soluciones de seguridad de API también suponen la gestión de vulnerabilidades, que consiste en identificar y abordar las vulnerabilidades de seguridad de las API. La gestión de vulnerabilidades puede implicar el análisis, la aplicación de parches y la corrección de vulnerabilidades, y puede ayudar a evitar que los atacantes aprovechen las vulnerabilidades conocidas de las API.
Las soluciones de seguridad de API son fundamentales para garantizar la seguridad y la integridad de las API. Mediante la implementación de autenticación y autorización, puertas de enlace de API, cifrado, limitación de velocidad, auditoría y registro, pruebas de API, supervisión, protección del tiempo de ejecución y gestión de vulnerabilidades, las empresas tienen la certeza de que sus API están seguras y protegidas frente a toda una serie de amenazas de seguridad.
A medida que las API se vuelven más integrales para las operaciones empresariales, las empresas deben invertir en soluciones de seguridad de API sólidas para proteger sus datos confidenciales y su propiedad intelectual.
¿Qué es el análisis de comportamiento?
El análisis de comportamiento es un enfoque de seguridad que utiliza el aprendizaje automático y el análisis de datos para identificar anomalías y patrones en el comportamiento de los usuarios. Este enfoque se utiliza para detectar y prevenir amenazas de seguridad como amenazas internas, robo de cuentas y fraude.
El análisis de comportamiento es cada vez más importante en el campo de la seguridad de API, ya que las API se utilizan cada vez más y son un objetivo cada vez más frecuente de los ciberdelincuentes.
Las empresas utilizan las API para permitir que sus aplicaciones se comuniquen entre sí, compartan datos y realicen diversas funciones. Sin embargo, a medida que se ha extendido el uso de las API, también lo han hecho los riesgos de seguridad asociados a ellas.
Las API pueden ser vulnerables a una serie de amenazas de seguridad, como el acceso no autorizado, los ataques de denegación de servicio y los ataques de inyección. El análisis de comportamiento puede ayudar a detectar estas amenazas analizando el comportamiento de los usuarios e identificando patrones anómalos que podrían indicar un ataque.
¿Qué relación guarda el análisis de comportamiento con la seguridad de API?
El análisis de comportamiento es un componente fundamental de la seguridad de API, ya que las API pueden ser el objetivo de los ciberdelincuentes que buscan obtener acceso no autorizado a datos confidenciales o interrumpir las operaciones empresariales. El análisis de comportamiento puede ayudar a detectar estas amenazas analizando el comportamiento de los usuarios e identificando patrones anómalos que podrían indicar un ataque.
Las soluciones de seguridad de API que incorporan análisis de comportamiento pueden ayudar a identificar y prevenir ataques como:
Robo de cuentas: el robo de cuentas se produce cuando un atacante obtiene acceso a la cuenta de un usuario legítimo y la utiliza para acceder a datos confidenciales o realizar acciones maliciosas. El análisis de comportamiento puede ayudar a detectar si una cuenta se ha visto comprometida analizando el comportamiento de los usuarios e identificando patrones anómalos que indiquen que un atacante ha obtenido acceso a la cuenta de un usuario.
Amenazas internas: las amenazas internas se producen cuando un usuario de confianza con acceso autorizado a una API utiliza ese acceso con fines maliciosos. El análisis de comportamiento puede ayudar a detectar amenazas internas analizando el comportamiento de los usuarios e identificando patrones anómalos que podrían indicar que un usuario se está comportando de forma sospechosa o maliciosa.
Ataques de inyección: los ataques de inyección se producen cuando un atacante inyecta código o comandos maliciosos en una solicitud de API para aprovechar una vulnerabilidad y obtener acceso no autorizado a datos confidenciales. El análisis de comportamiento puede ayudar a detectar ataques de inyección analizando el comportamiento de los usuarios e identificando patrones anómalos que podrían indicar que un atacante está intentando aprovechar una vulnerabilidad de API.
Ataques de denegación de servicio: los ataques de denegación de servicio (DoS) se producen cuando un atacante satura una API con solicitudes para interrumpir las operaciones empresariales. El análisis de comportamiento puede ayudar a detectar ataques DoS analizando el comportamiento de los usuarios e identificando patrones anómalos que podrían indicar que un atacante está intentando inundar una API con solicitudes.
A medida que el uso de las API se generaliza y se convierten en objetivo de los ciberdelincuentes, las empresas deben invertir en soluciones de seguridad de API eficaces que incorporen análisis de comportamiento para proteger sus datos confidenciales y su propiedad intelectual.
Búsqueda gestionada de amenazas
La búsqueda gestionada de amenazas es un enfoque de seguridad proactivo que consiste en utilizar herramientas y técnicas avanzadas para identificar y mitigar las posibles amenazas de seguridad antes de que puedan causar daños.
La búsqueda gestionada de amenazas es un tipo de servicio ofrecido por algunas empresas de seguridad de API, en el que una empresa paga a un proveedor externo para que gestione y lleve a cabo la búsqueda de amenazas en su nombre. Este servicio permite a las empresas beneficiarse de la experiencia y los recursos de un equipo de seguridad especializado, sin tener que invertir en sus propias capacidades internas de búsqueda de amenazas.
La búsqueda gestionada de amenazas se denomina así porque una empresa paga a una empresa de seguridad de API para que realice la búsqueda de amenazas en su nombre. Para ello, la empresa de seguridad de API debe llevar a cabo una supervisión proactiva de la infraestructura de API de la empresa, analizar los registros y otras fuentes de datos, y utilizar técnicas avanzadas como el aprendizaje automático y el análisis de comportamiento para identificar posibles amenazas de seguridad.
A continuación, la empresa de seguridad de API trabaja con la empresa para corregir cualquier amenaza identificada y proporcionar recomendaciones para mejorar su estrategia de seguridad.
La búsqueda gestionada de amenazas es especialmente importante en el contexto de la seguridad de API, ya que las API pueden ser vulnerables a una serie de amenazas de seguridad, incluidos los ataques de inyección, el robo de cuentas y los ataques de denegación de servicio.
La búsqueda gestionada de amenazas puede ayudar a identificar y mitigar estas amenazas antes de que puedan causar daños, lo que permite a las empresas proteger sus datos confidenciales y su propiedad intelectual.
Los componentes clave de la búsqueda gestionada de amenazas incluyen:
- Supervisión e investigaciones proactivas: la búsqueda gestionada de amenazas implica la supervisión proactiva de las API de una empresa para identificar posibles amenazas de seguridad. Esto puede incluir la supervisión de todos los datos de actividad de API, incluidos los registros del sistema y otras fuentes de datos, o la investigación de las alertas detectadas.
- Almacenamiento de datos históricos de API: todos los datos de API deben almacenarse para que sea posible realizar investigaciones y buscar amenazas. El acceso a los datos es un requisito previo para la búsqueda gestionada de amenazas.
- Técnicas de detección avanzadas: la búsqueda gestionada de amenazas utiliza técnicas avanzadas de tecnología, como el aprendizaje automático y el análisis de comportamiento, para identificar posibles amenazas de seguridad. Estas técnicas pueden ayudar a identificar amenazas que pueden no ser detectables mediante los enfoques tradicionales basados en firmas.
- Equipo de búsqueda de amenazas: la búsqueda gestionada de amenazas requiere un equipo especializado de profesionales de seguridad formados y con experiencia en la identificación y mitigación de posibles amenazas de seguridad. La empresa de seguridad de API que presta el servicio suele contar con un equipo de expertos con conocimientos especializados sobre las amenazas de seguridad de API.
- Corrección y recomendaciones: la búsqueda gestionada de amenazas implica trabajar con la empresa para corregir cualquier amenaza identificada y proporcionar recomendaciones para mejorar su estrategia de seguridad. Para ello, puede ser necesario aplicar parches a las vulnerabilidades, mejorar los controles de acceso o implementar otros controles de seguridad en otras herramientas como WAF, CDN u otros proxies.
En el contexto de la seguridad de API, la búsqueda gestionada de amenazas puede ayudar a identificar y mitigar una serie de amenazas, incluidos los ataques de inyección, el robo de cuentas y los ataques de denegación de servicio.
Al invertir en la búsqueda gestionada de amenazas, las empresas pueden asegurarse de que sus API estén seguras y protegidas frente a una serie de amenazas de seguridad.
Preguntas frecuentes
Los fundamentos de la seguridad de API se resumen en una serie de principios clave: autenticación, autorización, cifrado y validación de entradas.
La autenticación verifica la identidad de los usuarios o sistemas que interactúan con la API. La autorización determina lo que puede hacer un usuario verificado. El cifrado garantiza que los datos transmitidos entre sistemas sigan siendo confidenciales e ilegibles ante miradas curiosas. Por último, la validación de entradas comprueba la legitimidad de los datos entrantes para evitar resultados perjudiciales o inesperados.
La seguridad de las API consiste en garantizar el uso seguro y previsto de las API (interfaces de programación de aplicaciones). Esto implica proteger las API de amenazas y ataques, proteger los datos confidenciales y garantizar un servicio fiable.
Entre los riesgos de seguridad de API más comunes se encuentran el acceso no autorizado, las filtraciones de datos, los ataques de denegación de servicio y los ataques de inyección. El acceso no autorizado puede producirse si un agente malicioso consigue acceder a operaciones confidenciales.
Las filtraciones de datos pueden exponer información confidencial. Los ataques de denegación de servicio pueden saturar una API y dejarla inutilizable, y los ataques de inyección pueden engañar a una API para que ejecute comandos no deseados.
Para proteger sus API, debe seguir varios pasos. En primer lugar, utilice siempre HTTPS para la transmisión de datos a fin de garantizar el cifrado. Implemente controles eficaces de autenticación y autorización mediante técnicas como las claves de API, OAuth o JWT.
Valide las entradas para protegerse de los ataques de inyección. Audite y pruebe sus API de forma periódica en busca de vulnerabilidades. Por último, considere la posibilidad de utilizar una solución de seguridad de API como la que ofrece Akamai para disponer de una capa de protección adicional.
La falta de seguridad de API puede tener graves consecuencias económicas. Las filtraciones de datos, las interrupciones del servicio o las infracciones de la normativa pueden acarrear multas cuantiosas, por no mencionar el coste potencial de la corrección.
También hay que tener en cuenta el daño a la reputación y a la confianza de los clientes, que puede tener repercusiones económicas a largo plazo. En resumen, no invertir en seguridad de API puede costarle mucho más caro a la larga.
Mientras que la seguridad de API se centra en proteger las API de las amenazas, la gestión de API se ocupa de supervisar el ciclo de vida de las API. Esto incluye el diseño, la publicación, la documentación y el análisis de las API.
La gestión de API también suele incluir aspectos de seguridad de API, como el control de acceso y la limitación de velocidad. Es decir, la seguridad de API forma parte de la gestión de API, pero la gestión de API abarca mucho más que la seguridad.
Las API y los servicios web son similares a cuadrados y rectángulos; todos los cuadrados son rectángulos, pero no todos los rectángulos son cuadrados. Del mismo modo, todos los servicios web son API, pero no todas las API son servicios web. Un servicio web es un tipo específico de API que funciona a través de la web, normalmente utilizando protocolos como HTTP. Por otro lado, una API es un concepto más general que puede utilizarse en muchos contextos diferentes, no solo en la web.
Por qué los clientes eligen Akamai
Akamai potencia y protege la vida online. Las empresas líderes de todo el mundo eligen Akamai para crear, proteger y ofrecer sus experiencias digitales, ayudando así a millones de personas a vivir, trabajar y jugar cada día. Akamai Connected Cloud, plataforma de nube distribuida de forma masiva en el Edge, acerca las aplicaciones y las experiencias a los usuarios y mantiene las amenazas más alejadas.