Vulnerabilidad en CocoaPods expone a aplicaciones iOS y macOS a ataques a la cadena de suministro

Se han identificado múltiples vulnerabilidades en el gestor de dependencias CocoaPods, lo que representa un riesgo significativo de ataques a la cadena de suministro. Esta falla permite a actores maliciosos tomar el control de miles de pods no reclamados e inyectar código malicioso en numerosas aplicaciones conocidas de Mac y iOS.

Un ataque al ecosistema de aplicaciones móviles podría infectar casi todos los dispositivos Apple, poniendo en riesgo a miles de organizaciones con potenciales daños financieros y reputacionales severos.

CocoaPods permite gestionar bibliotecas externas en un formato a nivel de aplicación para Objective-C, Swift y otros lenguajes que utilizan el runtime de Objective-C, como RubyMotion.

 

Vulnerabilidades en el Ecosistema CocoaPods

Con una puntuación CVSS de 9.3, una vulnerabilidad crítica identificada como CVE-2024-38368 permite a un atacante explotar el proceso de reclamar pods y hacerse cargo de un paquete. “El atacante podría manipular el código fuente o insertar contenido malicioso en el nuevo pod reclamado. Según investigadores de E.V.A Information Security, este pod infectaría muchas dependencias descendentes y podría llegar a una gran proporción de dispositivos Apple actualmente en uso”.

Al investigar el código fuente del servidor ‘Trunk’, los investigadores descubrieron que todos los pods huérfanos fueron asignados a un propietario predeterminado de CocoaPods, cuya dirección de correo electrónico era [email protected].

Numerosos pods no reclamados siguen en uso generalizado. Los pods huérfanos son utilizados como dependencias por numerosos otros paquetes de CocoaPods. En total, los investigadores encontraron 685 pods con una dependencia explícita en un pod huérfano; en bases de código propietarias, puede haber cientos o incluso miles más. En algún momento, todos estos fueron vulnerables a ataques a la cadena de suministro.

Con una puntuación CVSS de 10.0, la segunda vulnerabilidad significativa está registrada como CVE-2024-38366. Esta permite ejecutar código arbitrario en el servidor Trunk, lo que podría utilizarse para modificar o reemplazar los paquetes. Esto se logra aprovechando un proceso de verificación de correo electrónico inadecuado.

Finalmente, con una puntuación CVSS de 8.2, un problema significativo de secuestro de verificación de sesión se registró como CVE-2024-38367. Debido a esta vulnerabilidad, un atacante puede enviar la solicitud utilizando el encabezado XFH falsificado. La URL que contiene el dominio falso se incluirá en el correo electrónico que genera el servidor ‘Trunk’ de CocoaPods.

“Después de recibir el token de validación de sesión, es posible acceder al nuevo enlace para validar la sesión y tomar el control de la cuenta”, dice el informe. Falsificar un encabezado HTTP y utilizar herramientas de seguridad de correo electrónico mal configuradas puede ‘actualizar’ esto a un ataque de toma de cuenta sin clics.

“Hemos encontrado que casi todos los propietarios de pods están registrados con su correo electrónico organizacional en el servidor Trunk, lo que los hace vulnerables a nuestra vulnerabilidad de toma de cuenta sin clics”, dijeron los investigadores.

Conclusiones

Desde octubre de 2023, CocoaPods ha parcheado los tres errores. En respuesta a las revelaciones, se reinició cada sesión de usuario en ese momento. Aun así, las empresas deben ser conscientes de este posible punto de ataque y continuar aprendiendo sobre las diversas técnicas de gestión de paquetes y dependencias que utilizan los desarrolladores.

Related Posts
Devel Group
Privacy Preferences
When you visit our website, it may store information through your browser from specific services, usually in form of cookies. Here you can change your privacy preferences. Please note that blocking some types of cookies may impact your experience on our website and the services we offer.