Dos bibliotecas maliciosas de Python eliminadas de PyPI


olgired2017.png

Imagen: ZDNet

El equipo de seguridad de Python eliminó dos bibliotecas de Python troyanizadas de PyPI (Python Package deal Index), su repositorio oficial de paquetes.

Las dos bibliotecas fueron creadas por el mismo desarrollador e imitaron otras bibliotecas más populares, utilizando una técnica llamada Typosquatting para registrar nombres de aspecto comparable.

El primero es «python3-dateutil, «que imitaba lo popular»dateutil«biblioteca. El segundo es»jeIlyfish«(la primera L es una I), que imitaba el»Medusa«biblioteca.

Los dos clones maliciosos fueron descubierto el domingo 1 de diciembre, por el desarrollador de software program alemán Lukas Martini. Ambas bibliotecas se eliminaron el mismo día después de que Martini notificó a los desarrolladores de dateutil y al equipo de seguridad de PyPI.

Mientras que python3-dateutil fue creado y cargado en PyPI dos días antes, el 29 de noviembre, la biblioteca jeIlyfish había estado disponible durante casi un año, desde el 11 de diciembre de 2018.

Código malicioso misterioso

Según Martini, el código malicioso solo estaba presente en la biblioteca jeIlyfish. El código descargado y leído una lista de hashes almacenado en un repositorio de GitLab.

La naturaleza y el propósito de estos hashes son actualmente desconocidos, ya que ni Martini ni el equipo de PyPI detallaron el comportamiento en gran profundidad antes de que la biblioteca fuera eliminada rápidamente de PyPI.

El paquete python3-dateutil no contenía código malicioso propio, pero sí importaba la biblioteca jeIlyfish, lo que significa que era malicioso por asociación.

Ambas bibliotecas fueron cargadas en PyPI por el mismo desarrollador, que utilizó el nombre de usuario de olgired2017, también utilizado para la cuenta de GitLab.

Se cree que olgired2017 creó el clon dateutil en un intento de capitalizar la popularidad de la biblioteca first y aumentar el alcance del código malicioso sin embargo, esto también atrajo más atención de más desarrolladores y finalmente terminó exponiendo toda su operación.

Se recomienda a los desarrolladores que revisen los proyectos.

Excluyendo el código malicioso, ambos paquetes tipográficos eran copias idénticas de las bibliotecas originales, lo que significa que habrían funcionado como los originales.

Los desarrolladores que no prestaron atención a las bibliotecas que descargaron o importaron en sus proyectos deben verificar si han usado los nombres de paquete correctos y no usaron accidentalmente las versiones con errores tipográficos.

Esta es la tercera vez que el equipo de PyPI interviene para eliminar las bibliotecas Python malintencionadas con errores tipográficos del repositorio oficial. Incidentes similares han sucedido en Septiembre de 2017 (diez bibliotecas), octubre de 2018 (12 bibliotecas) y julio de 2019 (tres bibliotecas).



Enlace a la noticia first