Sophos News

El repositorio de código abierto PyPI sufre una oleada de malware

Los repositorios públicos de código fuente, desde Sourceforge a GitHub, desde Linux Kernel Archives a ReactOS.org, desde PHP Packagist a Python Package Index, más conocido como PyPI, son una fuente fantástica de sistemas operativos, aplicaciones, bibliotecas de programación y conjuntos de herramientas para desarrolladores gratuitos que han hecho bien a la informática.

La mayoría de los proyectos de software necesitan código “auxiliar” que no es una parte fundamental del problema que el propio proyecto intenta resolver, como funciones de utilidad para escribir en el registro del sistema, producir salidas de colores, subir informes de estado a un servicio web, crear archivos de copia de seguridad de datos antiguos, etc.

En casos así, puedes ahorrar tiempo (y beneficiarte gratuitamente de la experiencia de otras personas) buscando un paquete que ya exista en uno de los muchos repositorios disponibles, y enganchando ese paquete externo a tu propio árbol de código fuente.

En la otra dirección, si estás trabajando en un proyecto propio que incluye algunas utilidades que no puedes encontrar en ningún otro sitio, puede que te sientas inclinado a ofrecer algo a la comunidad empaquetando tu código y poniéndolo gratuitamente a disposición de todos los demás.

El coste de la gratuidad

Sin embargo, como  sabrás, los repositorios comunitarios de código fuente conllevan una serie de retos de ciberseguridad:

Contribuidores deshonestos

Desgraciadamente, parece que PyPI se ha visto afectada por un montón de subidas automatizadas y fraudulentas durante el pasado fin de semana.

El equipo, quizás comprensiblemente, aún no ha dado detalles de cómo se llevó a cabo el ataque, pero el sitio bloqueó temporalmente el registro de nuevos usuarios y la creación de nuevos proyectos por parte de los usuarios existentes:

El registro de nuevos usuarios y nuevos nombres de proyectos en PyPI está temporalmente suspendido. El volumen de usuarios maliciosos y proyectos maliciosos que se han creado en el índice en la última semana ha superado nuestra capacidad de responder a tiempo, especialmente con varios administradores de PyPI de baja.

Mientras nos reagrupamos durante el fin de semana, se suspende temporalmente el registro de nuevos usuarios y nuevos proyectos. [2023-05-20T16:02:00Z]

Suponemos que los atacantes utilizaron herramientas automatizadas para inundar el sitio con paquetes maliciosos, presumiblemente con la esperanza de que, si se esforzaban lo suficiente, parte del contenido malicioso escaparía a la detección y quedaría incluso después de los esfuerzos de limpieza del sitio, completando así lo que podríamos llamar un Ataque de Anulación de Seguridad, o tal vez que los administradores del sitio se sintieran obligados a desconectar todo el sitio para solucionarlo, provocando así un Ataque de Denegación de Servicio, o DoS.

La buena noticia es que, en poco más de 24 horas, el equipo se hizo cargo del problema y pudo anunciar: “Se ha levantado la suspensión”.

En otras palabras, aunque PyPI no funcionó al 100% durante el fin de semana, no hubo una verdadera denegación de servicio contra el sitio o sus millones de usuarios.

¿Qué hacer?