Las APIs con fugas amenazan con arrastrar la reputación de las empresas

Publicado el 24 de junio de 2021
por Pieter Danhieux
ESTUDIO DE CASO

Las APIs con fugas amenazan con arrastrar la reputación de las empresas

Publicado el 24 de junio de 2021
por Pieter Danhieux
Ver recurso
Ver recurso

En la vida, por lo general, la comunicación es una gran cosa. No hay forma más rápida de llegar a un entendimiento, aprender algo nuevo o construir una relación. En el ámbito del software, las API cumplen una función comunicativa que permite que las aplicaciones se comuniquen entre sí, potenciando las funciones y la facilidad de uso. Esa conectividad suele crear una experiencia más rica que los usuarios finales adoran y, cada vez más, esperan del software en su vida cotidiana. 

Sin embargo, como en la vida real, es un gran problema cuando hablan demasiado. Experian lo ha comprobado recientemente por las malas, cuando una de sus API -utilizada por un socio externo- filtró potencialmente las puntuaciones de crédito de... bueno, de casi todos los ciudadanos estadounidenses.

El problema fue parcheado rápidamente, pero siguen existiendo dudas sobre si esta vulnerabilidad fue realmente detenida en su camino. Si un proveedor se vio afectado, es muy probable que otros también lo estuvieran, y existe la posibilidad de que se trate de un fallo sistémico, que afecte a cualquiera que haga uso de esa API insegura.

La seguridad de las API es un tema que no está lejos de la mente de la mayoría de los expertos en seguridad, y es algo que tenemos que equiparnos con los conocimientos necesarios para combatirlo. 

Cualquier geek de pacotilla puede saltarse la mala autentificación de la API

Una característica de muchas filtraciones de datos, brechas e incidentes de seguridad, es que rara vez se necesita una mente maestra para lograrlos. Los ataques complejos, insidiosos y dañinos como el que vimos con SolarWinds requieren equipos de genios cibercriminales para llevarse a cabo, y son la excepción más que la regla. 

Cuando una API se construye con una autenticación débil, es bastante fácil que sea explotada. Bill Demirkapi, el investigador de seguridad que descubrió el fallo de la API de Experian, determinó que se podía acceder a ella sin ninguna autenticación. Al introducir el 00/00/0000 en el campo de la fecha de nacimiento, accedió a la puntuación de crédito de una persona, utilizando únicamente información disponible públicamente como el nombre y la dirección postal asociada. Aunque esto no se ha reportado, el potencial de estos registros para ser raspados y contextualizados como un volcado de datos relacionados con el crédito (y por lo tanto valiosos) está ciertamente allí.

Procesos de autenticación limpios y funcionales deben estar en su lugar, no importa lo pequeño que sea el caso de uso; una API de chatterbox que no está debidamente asegurada, y que potencialmente abre el acceso a múltiples sistemas, es una responsabilidad.

Broken Authentication es el número dos en la lista de las 10 principales vulnerabilidades de API de OWASP. Lee más aquí sobre cómo puedes evitar este fallo, y prueba tus habilidades en nuestra plataforma una vez que hayas terminado de alimentar tu cerebro.

Los malos controles de seguridad de las API son un problema generalizado que requiere un cambio cultural

No es justo señalar con el dedo únicamente a organizaciones como Experian, pero la falta de matiz y de diligencia en el control de la seguridad mostrada en esta exposición particular de la API no presagia nada bueno para las muchas empresas que navegan por las API como parte de sus sistemas de TI y puntos finales. 

En general, tenemos mucho más trabajo que hacer no sólo para encontrar y arreglar las vulnerabilidades de las APIs, sino para entenderlas como parte de la superficie de ataque que debemos proteger. La visibilidad sobre las APIs - y cómo se han construido - es una gran preocupación, y es algo que debería exigirse como parte de las mejores prácticas de seguridad. Incluso una organización con las medidas de seguridad más estrictas puede verse perjudicada por una API que se publica y funciona fuera de los controles de seguridad de la empresa. Es más importante que nunca preguntarse de dónde procede una API, quién la mantiene en última instancia (¿es un proveedor externo? ¿Cómo de estrictos son con la seguridad?), y a qué información está accediendo. 

Las vulnerabilidades de inyección siguen siendo un problema para todos los CISO.

La seguridad de las APIs puede parecer un módulo bastante nuevo para incluir en un programa de seguridad, pero puede ser explotado mediante algunos trucos (muy) antiguos que estamos acostumbrados a ver en el software web de toda la vida.

Un ataque recientemente revelado contra Acc ellion reveló que la inyección SQL encadenada y los ataques de ejecución de comandos del sistema operativo permitieron a los actores de la amenaza manipular las APIs, extrayendo un importante botín de datos sensibles, incluyendo los números de la Seguridad Social. Determinaron que los atacantes debían tener un amplio conocimiento del software FTA de Accellion para llevar a cabo el atraco, lo que habría sido posible mediante una importante ingeniería inversa.

Dado que la brecha se produjo en diciembre de 2020 y enero de 2021, los ladrones tuvieron tiempo suficiente para causar daños. Otros descubrimientos en febrero de 2021 revelaron una vulnerabilidad XSS almacenada, con un análisis forense que descubrió que solo un punto final de la API que tenía una entrada de usuario incorrectamente desinfectada hizo posible inyectar un argumento al llamar al script admin.pl.

Con más de 3.000 clientes, entre ellos muchas instituciones educativas de prestigio, esta brecha podría tener un gran alcance. Lo lamentable es que estos exploits fueron posibles aprovechando vulnerabilidades comunes, muchas de las cuales podrían haber sido abordadas a nivel de código, antes de la producción, por un desarrollador consciente de la seguridad. Como vemos una y otra vez, basta con dejar una pequeña ventana abierta para crear grandes problemas. Y una cultura de ciberdefensa dirigida por el ser humano debe formar parte de la estrategia para resolver un problema muy humano.


¿Quiere poner a prueba sus conocimientos de seguridad de la API ahora en Java Spring API, Kotlin Spring API, C# (.NET) Web API ¿y más? Pruebe algunos retos de API en nuestro Learning Platform (consulte todos los lenguajes:frameworks a través del desplegable):

Banner que dice que pruebe sus habilidades de seguridad de la API con código real, a su manera
Vamos, inténtalo.


Ver recurso
Ver recurso

Autor

Pieter Danhieux

Pieter Danhieux es un experto en seguridad mundialmente reconocido, con más de 12 años de experiencia como consultor de seguridad y 8 años como instructor principal de SANS enseñando técnicas ofensivas sobre cómo atacar y evaluar organizaciones, sistemas y personas en busca de debilidades de seguridad. En 2016, fue reconocido como una de las personas más cool de la tecnología en Australia (Business Insider), galardonado como Profesional de Seguridad Cibernética del Año (AISA - Asociación Australiana de Seguridad de la Información) y tiene certificaciones GSE, CISSP, GCIH, GCFA, GSEC, GPEN, GWAPT, GCIA.

¿Quieres más?

Sumérjase en nuestras últimas ideas sobre codificación segura en el blog.

Nuestra amplia biblioteca de recursos tiene como objetivo potenciar el enfoque humano de la mejora de la codificación segura.

Ver blog
¿Quieres más?

Obtenga las últimas investigaciones sobre la seguridad impulsada por los desarrolladores

Nuestra amplia biblioteca de recursos está repleta de recursos útiles, desde libros blancos hasta seminarios web, que le ayudarán a iniciarse en la codificación segura orientada a los desarrolladores. Explórela ahora.

Centro de recursos

Las APIs con fugas amenazan con arrastrar la reputación de las empresas

Publicado el 24 de junio de 2021
Por Pieter Danhieux

En la vida, por lo general, la comunicación es una gran cosa. No hay forma más rápida de llegar a un entendimiento, aprender algo nuevo o construir una relación. En el ámbito del software, las API cumplen una función comunicativa que permite que las aplicaciones se comuniquen entre sí, potenciando las funciones y la facilidad de uso. Esa conectividad suele crear una experiencia más rica que los usuarios finales adoran y, cada vez más, esperan del software en su vida cotidiana. 

Sin embargo, como en la vida real, es un gran problema cuando hablan demasiado. Experian lo ha comprobado recientemente por las malas, cuando una de sus API -utilizada por un socio externo- filtró potencialmente las puntuaciones de crédito de... bueno, de casi todos los ciudadanos estadounidenses.

El problema fue parcheado rápidamente, pero siguen existiendo dudas sobre si esta vulnerabilidad fue realmente detenida en su camino. Si un proveedor se vio afectado, es muy probable que otros también lo estuvieran, y existe la posibilidad de que se trate de un fallo sistémico, que afecte a cualquiera que haga uso de esa API insegura.

La seguridad de las API es un tema que no está lejos de la mente de la mayoría de los expertos en seguridad, y es algo que tenemos que equiparnos con los conocimientos necesarios para combatirlo. 

Cualquier geek de pacotilla puede saltarse la mala autentificación de la API

Una característica de muchas filtraciones de datos, brechas e incidentes de seguridad, es que rara vez se necesita una mente maestra para lograrlos. Los ataques complejos, insidiosos y dañinos como el que vimos con SolarWinds requieren equipos de genios cibercriminales para llevarse a cabo, y son la excepción más que la regla. 

Cuando una API se construye con una autenticación débil, es bastante fácil que sea explotada. Bill Demirkapi, el investigador de seguridad que descubrió el fallo de la API de Experian, determinó que se podía acceder a ella sin ninguna autenticación. Al introducir el 00/00/0000 en el campo de la fecha de nacimiento, accedió a la puntuación de crédito de una persona, utilizando únicamente información disponible públicamente como el nombre y la dirección postal asociada. Aunque esto no se ha reportado, el potencial de estos registros para ser raspados y contextualizados como un volcado de datos relacionados con el crédito (y por lo tanto valiosos) está ciertamente allí.

Procesos de autenticación limpios y funcionales deben estar en su lugar, no importa lo pequeño que sea el caso de uso; una API de chatterbox que no está debidamente asegurada, y que potencialmente abre el acceso a múltiples sistemas, es una responsabilidad.

Broken Authentication es el número dos en la lista de las 10 principales vulnerabilidades de API de OWASP. Lee más aquí sobre cómo puedes evitar este fallo, y prueba tus habilidades en nuestra plataforma una vez que hayas terminado de alimentar tu cerebro.

Los malos controles de seguridad de las API son un problema generalizado que requiere un cambio cultural

No es justo señalar con el dedo únicamente a organizaciones como Experian, pero la falta de matiz y de diligencia en el control de la seguridad mostrada en esta exposición particular de la API no presagia nada bueno para las muchas empresas que navegan por las API como parte de sus sistemas de TI y puntos finales. 

En general, tenemos mucho más trabajo que hacer no sólo para encontrar y arreglar las vulnerabilidades de las APIs, sino para entenderlas como parte de la superficie de ataque que debemos proteger. La visibilidad sobre las APIs - y cómo se han construido - es una gran preocupación, y es algo que debería exigirse como parte de las mejores prácticas de seguridad. Incluso una organización con las medidas de seguridad más estrictas puede verse perjudicada por una API que se publica y funciona fuera de los controles de seguridad de la empresa. Es más importante que nunca preguntarse de dónde procede una API, quién la mantiene en última instancia (¿es un proveedor externo? ¿Cómo de estrictos son con la seguridad?), y a qué información está accediendo. 

Las vulnerabilidades de inyección siguen siendo un problema para todos los CISO.

La seguridad de las APIs puede parecer un módulo bastante nuevo para incluir en un programa de seguridad, pero puede ser explotado mediante algunos trucos (muy) antiguos que estamos acostumbrados a ver en el software web de toda la vida.

Un ataque recientemente revelado contra Acc ellion reveló que la inyección SQL encadenada y los ataques de ejecución de comandos del sistema operativo permitieron a los actores de la amenaza manipular las APIs, extrayendo un importante botín de datos sensibles, incluyendo los números de la Seguridad Social. Determinaron que los atacantes debían tener un amplio conocimiento del software FTA de Accellion para llevar a cabo el atraco, lo que habría sido posible mediante una importante ingeniería inversa.

Dado que la brecha se produjo en diciembre de 2020 y enero de 2021, los ladrones tuvieron tiempo suficiente para causar daños. Otros descubrimientos en febrero de 2021 revelaron una vulnerabilidad XSS almacenada, con un análisis forense que descubrió que solo un punto final de la API que tenía una entrada de usuario incorrectamente desinfectada hizo posible inyectar un argumento al llamar al script admin.pl.

Con más de 3.000 clientes, entre ellos muchas instituciones educativas de prestigio, esta brecha podría tener un gran alcance. Lo lamentable es que estos exploits fueron posibles aprovechando vulnerabilidades comunes, muchas de las cuales podrían haber sido abordadas a nivel de código, antes de la producción, por un desarrollador consciente de la seguridad. Como vemos una y otra vez, basta con dejar una pequeña ventana abierta para crear grandes problemas. Y una cultura de ciberdefensa dirigida por el ser humano debe formar parte de la estrategia para resolver un problema muy humano.


¿Quiere poner a prueba sus conocimientos de seguridad de la API ahora en Java Spring API, Kotlin Spring API, C# (.NET) Web API ¿y más? Pruebe algunos retos de API en nuestro Learning Platform (consulte todos los lenguajes:frameworks a través del desplegable):

Banner que dice que pruebe sus habilidades de seguridad de la API con código real, a su manera
Vamos, inténtalo.


Nos gustaría contar con su permiso para enviarle información sobre nuestros productos y/o temas relacionados con la codificación segura. Siempre trataremos sus datos personales con el máximo cuidado y nunca los venderemos a otras empresas con fines de marketing.

Enviar
Para enviar el formulario, habilite las cookies "Analytics". Siéntase libre de desactivarlas de nuevo una vez que haya terminado.