Libera tu mente y alcanza tus metas
Descubren paquetes PyPI maliciosos y miles de "secretos" en paquetes legales
Descubren paquetes PyPI maliciosos y miles de "secretos" en paquetes legales

Descubren paquetes PyPI maliciosos y miles de "secretos" en paquetes legales

Se ha observado que un actor de amenazas desconocido ha publicado paquetes typosquat en el repositorio Python Package Index (PyPI) durante casi seis meses con el objetivo de entregar malware capaz de ganar persistencia, robar datos confidenciales y acceder a billeteras de criptomonedas para obtener ganancias financieras.

En el typosquatting, se publican paquetes maliciosos con nombres similares a los legítimos, esperando que el desarrollador los instale.

Los 27 paquetes, que se hicieron pasar por bibliotecas populares legítimas de Python, atrajeron miles de descargas, dijo Checkmarx en un nuevo informe. La mayoría de las descargas se originaron en EE.UU., China, Francia, Hong Kong, Alemania, Rusia, Irlanda, Singapur, Reino Unido y Japón.

"Una característica definitoria de este ataque fue la utilización de esteganografía para ocultar una carga maliciosa dentro de un archivo de imagen de apariencia inocente, lo que aumentó el sigilo del ataque", dijo la firma de seguridad de la cadena de suministro de software.

Algunos de los paquetes son pyefflorer, pyminor, pyowler, pystallerer, pystob y pywool, el último de los cuales se plantó el 13 de mayo de 2023. Los demás paquetes pueden ser consultados Checkmarx.

Un denominador común de estos paquetes es el uso del script setup.py para incluir referencias a otros paquetes maliciosos (como, pystob y pywool) que implementan un script de Visual Basic (VBScript) para descargar y ejecutar un archivo llamado "Runtime.exe" para lograr persistencia en el host. Incrustado en el binario hay un archivo compilado que es capaz de recopilar información de navegadores web, billeteras de criptomonedas y otras aplicaciones.

Se dice que una cadena de ataque alternativa observada por Checkmarx ocultó el código ejecutable dentro de una imagen PNG ("uwu.png"), que posteriormente se decodifica y ejecuta para extraer la dirección IP pública y el identificador único universal (UUID) del sistema afectado.

Pystob y Pywool, en particular, se publicaron bajo la apariencia de herramientas para la administración de API, solo para filtrar los datos a un webhook de Discord e intentar mantener la persistencia colocando el archivo VBS en la carpeta de inicio de Windows.

El desarrollo se produce cuando ReversingLabs descubrió una nueva ola de paquetes npm de protestware que "ocultan scripts que transmiten mensajes de paz relacionados con los conflictos en Ucrania, Israel y la Franja de Gaza".

Uno de los paquetes, llamado @snyk/sweater-comb (versión 2.1.1), determina la ubicación geográfica del host y, si se encuentra que es Rusia, muestra un mensaje criticando la "invasión injustificada de Ucrania" a través de otro módulo llamado "es5-ext".

Otro paquete, e2eakarev, tiene la descripción "paquete de protesta libre de Palestina" en el archivo package.json y lleva a cabo comprobaciones similares para ver si la dirección IP se resuelve en Israel y, de ser así, registra lo que se describe como un "mensaje de protesta inofensivo", que insta a los desarrolladores a crear conciencia sobre la lucha palestina.

No son sólo los actores de amenazas los que se infiltran en los ecosistemas de código abierto. A principios de esta semana, GitGuardian reveló la presencia de un total de 3.938 secretos o credenciales únicos en 2.922 proyectos PyPI, de los cuales 768 secretos aún eran válidos.

Esto incluye claves de AWS, claves API de Azure Active Directory, claves de aplicaciones GitHub OAuth, claves de Dropbox, claves SSH y credenciales asociadas con MongoDB, MySQL, PostgreSQL, Coinbase y Twilio.

En PyPI, existe un mecanismo llamado yanking (¿tirar / descartar?), donde se marca una versión para que un instalador la ignore a menos que sea la única versión que coincida con un especificador de versión. Si bien esto hace que sea poco probable que obtenga una versión prevista, tampoco significa que el código no esté disponible, como el nombre podría hacer creer a alguien. Al contrario de lo que sugiere el nombre, "tirar" un paquete en realidad no elimina el paquete de PyPI. El archivo aún se puede descargar si tiene la URL. Los archivos solo se eliminan al 100% de PyPI si contienen código malicioso conocido. Todo lo demás queda ahí para siempre.

Sólo se han eliminado 300 publicaciones, en comparación con 56.566 publicaciones que contenían secretos.

"Exponer secretos en paquetes de código abierto conlleva riesgos significativos tanto para los desarrolladores como para los usuarios", dijo Tom Forbes de GitGuardian. "Los atacantes pueden explotar esta información para obtener acceso no autorizado, hacerse pasar por los mantenedores de paquetes o manipular a los usuarios mediante tácticas de ingeniería social".

La continua ola de ataques dirigidos a la cadena de suministro de software también ha llevado al gobierno de Estados Unidos a emitir este mes nuevas directrices para que los desarrolladores y proveedores de software mantengan y proporcionen conciencia sobre la seguridad del software.

"Se recomienda que las organizaciones de adquisición asigne evaluaciones de riesgos de la cadena de suministro a sus decisiones de compra, dados los recientes incidentes de alto perfil en la cadena de suministro de software", dijeron la Agencia de Seguridad de Infraestructura y Ciberseguridad (CISA), la Agencia de Seguridad Nacional (NSA) y la Oficina del Director y el Departamento de Inteligencia Nacional (ODNI).

"Los desarrolladores y proveedores de software deberían mejorar sus procesos de desarrollo de software y reducir el riesgo de daño no sólo a los empleados y accionistas, sino también a sus usuarios".

Fuente: THN