PyTorch Machine Learning Framework compromis par une dépendance malveillante

02 janvier 2023Ravie LakshmananChaîne d’approvisionnement / Apprentissage automatique

Apprentissage automatique PyTorch

Les mainteneurs du package PyTorch ont averti les utilisateurs qui ont installé les versions nocturnes de la bibliothèque entre le 25 décembre 2022 et le 30 décembre 2022 de désinstaller et de télécharger les dernières versions suite à une attaque de confusion de dépendance.

« Les packages Linux PyTorch-nightly installés via pip pendant cette période ont installé une dépendance, torchtritonqui a été compromis sur le référentiel de code Python Package Index (PyPI) et a exécuté un binaire malveillant », a déclaré l’équipe PyTorch dans une alerte ce week-end.

PyTorch, analogue à Keras et TensorFlow, est un framework d’apprentissage automatique open source basé sur Python qui a été initialement développé par Meta Platforms.

L’équipe PyTorch a déclaré avoir pris connaissance de la dépendance malveillante le 30 décembre à 16h40 GMT. L’attaque de la chaîne d’approvisionnement impliquait le téléchargement de la copie contenant des logiciels malveillants d’une dépendance légitime nommée torchtriton dans le référentiel de code Python Package Index (PyPI).

Étant donné que les gestionnaires de paquets comme pip vérifient les registres de code public tels que PyPI pour un paquet avant les registres privés, cela a permis au module frauduleux d’être installé sur les systèmes des utilisateurs par opposition à la version réelle extraite de l’index tiers.

« L’attaquant a profité du fait que PyTorch consomme plusieurs packages de dépendance à partir d’un index de packages dédié et du fait que le gestionnaire de packages » pip « donne la priorité à l’index de packages PyPI par rapport aux autres indices », a déclaré Zack Tzachi, chercheur chez Checkmarx.

La version malveillante, pour sa part, est conçue pour exfiltrer les informations système, y compris les variables d’environnement, le répertoire de travail actuel et le nom d’hôte, en plus d’accéder aux fichiers suivants –

  • /etc/hosts
  • /etc/passwd
  • Les 1 000 premiers fichiers dans $HOME/*
  • $HOME/.gitconfig
  • $HOME/.ssh/*

Aqua Security, dans sa propre analyse du faux module torchtriton, a déclaré que le package est presque 100% identique à son homologue légitime, à l’exception d’un changement crucial qui lui permet d’exécuter un binaire malveillant appelé triton pour récolter les données sensibles.

Dans une déclaration partagée avec Bleeping Computer, le propriétaire du domaine auquel les données volées ont été transmises a affirmé que cela faisait partie d’un exercice de recherche éthique et que toutes les données ont depuis été supprimées.

En guise d’atténuation, torchtriton a été supprimé en tant que dépendance et remplacé par pytorch-triton. Un paquet factice a également été enregistré sur PyPI en tant qu’espace réservé pour éviter d’autres abus.

« Ce n’est pas le vrai paquet torchtriton mais téléchargé ici pour découvrir les vulnérabilités de confusion des dépendances », lit un message sur la page PyPI pour torchtriton. « Vous pouvez obtenir le vrai torchtriton sur https://download.pytorch[.]org/whl/nightly/torchtriton/. »

Le développement intervient également alors que JFrog a divulgué les détails d’un autre package connu sous le nom de cookiezlog qui a été observé en utilisant des techniques anti-débogage pour résister à l’analyse, marquant la première fois que de tels mécanismes ont été incorporés dans les logiciels malveillants PyPI.

Vous avez trouvé cet article intéressant ? Suivez-nous sur Twitter et LinkedIn pour lire plus de contenu exclusif que nous publions.

www.actusduweb.com
Suivez Actusduweb sur Google News


Ce site utilise des cookies pour améliorer votre expérience. Nous supposerons que cela vous convient, mais vous pouvez vous désinscrire si vous le souhaitez. J'accepte Lire la suite