APIs, ¿el principal vector de acceso inicial del futuro?

El comercio electrónico continúa con una tendencia creciente en cuanto a los nuevos negocios que se integran a internet para establecer sus operaciones. Se estima que actualmente existen más de 1,132 millones de sitios en internet, lo cual representa una enorme superficie de exposición de recursos tecnológicos.

Uno de los de vectores de ataque que continúa en auge es el acceso inicial mediante la explotación de vulnerabilidades de sistemas expuestos (T1190). Por supuesto, muchos de estos sistemas van ligados estrechamente con la tecnología de servicios Web; por ende, la superficie de ataque para los actores de amenazas se ha incrementado exponencialmente en los últimos años.

Uno de los recursos más utilizados para brindar servicios en internet es el uso de las APIs (Interfaz de programación de aplicaciones). Estas interfaces son programas que funcionan como intermediarios entre dos sistemas para permitir a una aplicación comunicarse con otra para la obtención de datos y ejecución de acciones específicas.

Debido al gran auge de las APIs, la preocupación por su seguridad se ha incrementado. Los actores de amenazas han aprovechado para apuntar a tecnologías Web como PHP con vulnerabilidades de Local File Inclusion (LFI), que permiten leer cualquier archivo que se encuentre dentro del servidor víctima, inclusive fuera de los directorios de los servicios Web.

¿A qué se debe este tipo de vulnerabilidades?

Una de las principales causas es la falta de metodologías de desarrollo seguro, es decir, las aplicaciones mal codificadas. Éstas se han encargado de abrir brechas importantes o críticas de ciberseguridad en las infraestructuras. Existen registros que dio a conocer la compañía Akamai, donde se informa la presencia de aproximadamente 100 millones de ataques a aplicaciones Web. Entre las victimas recientes se encuentra una compañía de telecomunicaciones australiana, la cual sufrió un ataque de ransomware con una demanda de 1.5 millones de dólares australianos, donde el vector inicial fue una API vulnerable. En términos simples, el problema radicó en la inclusión de archivos locales, es decir, se presentó una ausencia de un filtrado adecuado de las solicitudes de los archivos PHP de sus sitios Web.

¿Cómo puede afectar a una organización las vulnerabilidades LFI?

Los sitios basados en PHP comúnmente presentan vulnerabilidades LFI, y considerando estudios estadísticos de la empresa W3Techs, se estima que actualmente casi 8 de cada 10 servidores web utilizan PHP, superando ataques como inyección SQL y ataques basados en inyección de scripts. De materializarse una explotación de LFI, un adversario puede acceder a cualquier contenido confidencial alojado en el servidor. Por otro lado, puede realizar ejecución remota de código, lo que permite la carga de cualquier artefacto incluyendo, por ejemplo, troyanos, WebShells, y ransomware. El impacto podrá variar y será subsecuente al tipo y nivel de adversario que realice la explotación.

Las APIs podrían pasar a convertirse en los principales objetivos para el vector de acceso inicial de los diversos actores o grupos de amenazas. Los programadores deberían adoptar metodologías estandarizadas que los guíen durante el proceso de desarrollo y no confiar del todo en los datos que reciben de las APIs de terceros; por ejemplo, los desarrolladores deben reforzar la validación de entrada y sanitización de los datos. Por otro lado, pueden basarse en metodologías o iniciativas que los ayuden a disminuir el riesgo de ataques exitosos a sus aplicaciones y garantizar la maduración de sus sistemas, es decir, en la mejora continua de sus productos.

Metodología en auge:

Microsoft Initiativa: Trustworthy Computing

OSSTMM (Open-Source Security Testing Methodology Manual)

OWASP (Open Web Application Security Project)

OASIS Web Application Security (WAS) project

Fuentes:

https://www.akamai.com/newsroom/press-release/akamai-research-finds-137-percent-increase-in-application-and-api-attacks

https://attack.mitre.org/techniques/T1190/

https://www.lavoz.com.ar/tecnologia/el-dato-actualizado-cuantas-paginas-web-hay-en-toda-la-web

https://www.upguard.com/blog/how-did-the-optus-data-breach-happen

https://www.akamai.com/es/resources/infographic/soti-security-api-the-attack-surface-that-connects-us-all-infographic