Se ha encontrado una dependencia maliciosa en PyTorch que engaña a los desarrolladores de Python (se abre en una pestaña nueva) en descargarlo y luego robar sus datos confidenciales.
PyTorch reveló recientemente que había descubierto una dependencia maliciosa que comparte su nombre con la biblioteca «torchtriton» del marco. Se dijo que los administradores que instalaron PyTorch-nightly durante las vacaciones se vieron comprometidos, y la plataforma los instó a desinstalar el marco y la dependencia falsa ‘torchtriton’, de inmediato.
El truco con el mismo nombre funciona así: al capturar dependencias, PyPI tiene prioridad sobre PyTorch-nightly. En consecuencia, los usuarios extraen la dependencia maliciosa en lugar de la legítima.
Miles de víctimas
«Dado que el índice PyPI tiene prioridad, este paquete malicioso se instaló en lugar de la versión de nuestro repositorio oficial. Este diseño permite que alguien registre un paquete con el mismo nombre que uno que existe en un índice de terceros, y pip instalará su versión predeterminada», dijo el equipo de PyTorch en su advertencia.
Los informes afirman que la dependencia maliciosa ya se ha descargado más de 2000 veces, y captura todo tipo de datos confidenciales, desde direcciones IP y nombres de usuario, hasta directorios de trabajo actuales. También lee el contenido de /etc/hosts, /etc/passwd y Los primeros 1000 archivos en $HOME/*, entre otras cosas.
Los datos robados se cargan en el dominio h4ck.cfd a través de consultas DNS encriptadas, utilizando el servidor DNS wheezy.io.
La historia, sin embargo, viene con un giro en la trama: un aviso en el dominio h4ck.cfd parece afirmar que todo el ejercicio fue una investigación ética:
«Hola, si se topó con esto en sus registros, probablemente se deba a que su Python estaba mal configurado y era vulnerable a un ataque de confusión de dependencias», dice el aviso. Para identificar las empresas que son vulnerables, el script envía los metadatos sobre el host ( como su nombre de host y el directorio de trabajo actual). Después de identificar quién es vulnerable y [reported] la búsqueda de todos los metadatos sobre su servidor se eliminará».
Sin embargo, algunos expertos han afirmado que el binario recopila más que «metadatos»: obtiene claves SSH, .gitconfig, hosts y archivos de contraseña, todo lo cual un hacker ético no tocaría. Además, se observó ‘torchtriton’ utilizando técnicas anti-VM conocidas para asegurarse de que permanece bajo el radar y, finalmente, la carga útil se ofusca y se contiene completamente en formato binario.
¿Malas intenciones?
Aún así, en un comunicado a la BleepingEquipoel dueño del dominio mantuvo su historia del hacker blanco:
«Oye, soy yo quien reclamó el paquete torchtriton en PyPi. ¡Tenga en cuenta que esto no tenía la intención de ser malicioso!
Entiendo que podría haber hecho un mejor trabajo para no enviar todos los datos del usuario. La razón por la que envié más metadatos es que, en el pasado, cuando investigaba problemas de confusión de dependencias, en muchos casos no era posible identificar a las víctimas por su nombre de host, nombre de usuario y CWD. Esa es la razón por la que esta vez decidí enviar más datos, pero mirando hacia atrás, fue una decisión equivocada y debería haber sido más cuidadoso.
Acepto la culpa y pido disculpas. Al mismo tiempo quiero asegurar que no fue mi intención robar los secretos de nadie. Ya reporté esta vulnerabilidad a Facebook el 29 de diciembre (casi tres días antes del anuncio) luego de haber verificado que la vulnerabilidad efectivamente existe. También hice numerosos informes a otras empresas que se vieron afectadas a través de sus programas HackerOne. Si mis intenciones hubieran sido maliciosas, nunca habría llenado ningún informe de recompensas por errores y simplemente habría vendido los datos al mejor postor.
Una vez más, me disculpo por causar interrupciones, aseguro que todos los datos que recibí han sido eliminados.
Por cierto, en mi informe de error a Facebook ya les ofrecí transferirles el paquete PyPi, pero hasta ahora no he recibido ninguna respuesta de ellos».
Vía: BleepingComputer (se abre en una pestaña nueva)