High-Tech

Logiciel téléchargé 30 000 fois depuis les machines des développeurs saccagées par PyPI


Logiciel téléchargé 30 000 fois depuis les machines des développeurs saccagées par PyPI

Les packages open source téléchargés environ 30 000 fois à partir du référentiel open source PyPI contenaient du code malveillant qui volait subrepticement des données de carte de crédit et des identifiants de connexion et injectait du code malveillant sur des machines infectées, ont déclaré jeudi des chercheurs.

Dans un Publier, les chercheurs Andrey Polkovnichenko, Omer Kaspi et Shachar Menashe du fournisseur de logiciels devops JFrog ont déclaré avoir récemment trouvé huit packages dans PyPI qui menaient une série d’activités malveillantes. Basé sur des recherches sur https://pepy.tech, un site qui fournit des statistiques de téléchargement pour les packages Python, les chercheurs estiment que les packages malveillants ont été téléchargés environ 30 000 fois.

Menace systémique

Cette découverte est la dernière d’une longue série d’attaques de ces dernières années qui abusent de la réceptivité des référentiels open source, sur lesquels des millions de développeurs de logiciels s’appuient quotidiennement. Malgré leur rôle crucial, les référentiels manquent souvent de contrôles de sécurité et de vérification robustes, une faiblesse susceptible de provoquer de graves attaques de la chaîne d’approvisionnement lorsque les développeurs s’infectent sans le savoir ou insèrent du code malveillant dans le logiciel qu’ils publient.

« La découverte continue de packages logiciels malveillants dans des référentiels populaires comme PyPI est une tendance alarmante qui peut conduire à des attaques généralisées de la chaîne d’approvisionnement », a écrit le directeur technique de JFrog, Asaf Karas, dans un e-mail. « La possibilité pour les attaquants d’utiliser des techniques d’obscurcissement simples pour introduire des logiciels malveillants signifie que les développeurs doivent être concernés et vigilants. Il s’agit d’une menace systémique, et elle doit être activement combattue sur plusieurs niveaux, à la fois par les responsables de la maintenance des référentiels de logiciels et par les développeurs.

Les chercheurs ont remercié le mainteneur de PyPI Dustin Ingram « pour avoir répondu rapidement et supprimé les packages malveillants » lorsqu’ils ont été informés. Ingram n’a pas immédiatement répondu à une demande de commentaire.

Différents colis du transport de jeudi ont mené différents types d’activités néfastes. Six d’entre eux avaient trois charges utiles, une pour collecter les cookies d’authentification pour les comptes Discord, une seconde pour extraire les mots de passe ou les données de carte de paiement stockés par les navigateurs, et la troisième pour collecter des informations sur le PC infecté, telles que les adresses IP, le nom de l’ordinateur et Nom d’utilisateur.

Les deux packages restants contenaient des logiciels malveillants qui tentaient de se connecter à une adresse IP désignée par l’attaquant sur le port TCP 9009, puis d’exécuter le code Python disponible à partir du socket. On ne sait pas maintenant quelle était l’adresse IP ou s’il y avait des logiciels malveillants hébergés dessus.

Comme la plupart des logiciels malveillants Python novices, les packages n’utilisaient qu’un simple obscurcissement tel que celui des encodeurs Base64. Voici une ventilation des forfaits :

Nom du paquet Mainteneur Charge utile
noblesse xin1111 Voleur de jetons Discord, Voleur de cartes de crédit (Basé sur Windows)
robot de genèse xin1111 Identique à la noblesse
est xin1111 Identique à la noblesse
souffrir souffrir Identique à la noblesse , obscurcie par PyArmor
noblesse2 souffrir Identique à la noblesse
noblessev2 souffrir Identique à la noblesse
pytagore leonora123 Injection de code à distance
pytagora2 leonora123 Identique à Pytagora

Karas m’a dit que les six premiers packages avaient la capacité d’infecter l’ordinateur du développeur mais ne pouvaient pas entacher le code écrit par les développeurs avec des logiciels malveillants.

« Pour les packages pytagora et pytagora2, qui permettent l’exécution de code sur la machine sur laquelle ils ont été installés, cela serait possible. » a-t-il déclaré dans un message direct. « Après avoir infecté la machine de développement, ils permettraient l’exécution de code, puis une charge utile pourrait être téléchargée par l’attaquant qui modifierait les projets logiciels en cours de développement. Cependant, nous n’avons aucune preuve que cela a été réellement fait.

Méfiez-vous des logiciels malveillants « Frankenstein »

Plutôt que de passer des jours à développer du code qui effectue des tâches quotidiennes, les codeurs peuvent plutôt se tourner vers des référentiels tels que PyPI, RubyGems ou npm pour obtenir des packages d’applications matures que leurs pairs ont déjà développés. Parmi les 2,7 millions de packages disponibles sur PyPI, par exemple, sont ceux que les développeurs peuvent utiliser pour créer des applications ​​prévoir le prix de vente d’une maison en utilisant des données récupérées sur Internet, envoyer des e-mails via Amazon’Service de courrier électronique simple, ou alors vérifier le code source ouvert pour les vulnérabilités. PyPI fournit des packages pour les logiciels écrits en Python, tandis que RubyGems et npm fournissent des packages pour les applications Ruby et JavaScript.

Ce rôle crucial fait des référentiels le cadre idéal pour les attaques de la chaîne d’approvisionnement, qui sont de plus en plus courantes à l’aide de techniques connues sous le nom de typosquattage ou alors confusion de dépendance.

Les attaques de la chaîne d’approvisionnement des référentiels remontent au moins à 2016, lorsqu’un étudiant téléchargé des packages malveillants sur PyPI. Sur une période de plusieurs mois, son code imposteur a été exécuté plus de 45 000 fois sur plus de 17 000 domaines distincts, et plus de la moitié du temps, son code a reçu des droits administratifs tout-puissants. Depuis, attaques de la chaîne d’approvisionnement sont devenus un occurrence régulière pour RubyGems et au dessus du niveau de la mer. Au cours des derniers mois, les pirates informatiques ont concocté un nouveau type d’attaque de chaîne d’approvisionnement qui fonctionne en téléchargeant des packages malveillants dans des référentiels de code publics et en leur donnant un nom identique à un package stocké dans le référentiel interne d’un logiciel populaire. Ces soi-disant attaques de confusion de dépendance ont déjà pris au piège Apple, Microsoft et 33 autres sociétés.

Les chercheurs de JFrog ont déclaré que, sur la base de l’état actuel de la sécurité des référentiels, Internet est susceptible de voir davantage d’attaques à l’avenir.

« Presque tous les extraits de code analysés dans cette recherche étaient basés sur des outils publics connus, avec seulement quelques paramètres modifiés », ont-ils écrit. « L’obscurcissement était également basé sur des obfuscateurs publics. Nous nous attendons à voir davantage de ces logiciels malveillants « Frankenstein » assemblés à partir de différents outils d’attaque (avec des paramètres d’exfiltration modifiés). »



Source link

Quelle est votre réaction ?

Excité
0
Heureux
0
J'adore
0
Pas certain
0
ridicule
0

Vous aimerez aussi

Laisser une réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Plus dans:High-Tech