Plusieurs paquets open source malveillants ont été découverts dans le populaire dépôt PyPI. Ils utilisent de nouvelles techniques pour ne pas être détectés.
PyPI (Python Package Index) est le dépôt officiel de logiciels pour les applications tierces dans le langage de programmation Python où des milliers de programmeurs publient leurs développements. Toutefois, les développeurs de logiciels malveillants profitent également de cette plateforme pour atteindre leurs objectifs.
L’équipe de recherche de JFrog Security a découvert jusqu’à 11 nouveaux paquets malveillants hébergés sur PyPI, avec plus de 40 000 téléchargements au total. Leurs auteurs ont utilisé plusieurs techniques avancées pour éviter la détection et rester dans le dépôt afin d’infecter le plus grand nombre de machines possible.

Les techniques utilisées sont les suivantes :
- Utilisation du CDN Fastly pour faire croire que le trafic envoyé au serveur de commande et de contrôle (C2) est une communication légitime avec pypi.org.
- Utilisation du cadre TrevorC2 pour masquer les communications client-serveur en les faisant ressembler à une navigation normale sur un site web, en envoyant des requêtes à des intervalles aléatoires et en cachant la charge utile malveillante dans des requêtes HTTP GET d’apparence normale.
- L’utilisation des requêtes DNS comme canal de communication entre la machine victime et le serveur C2, en profitant du fait que ces requêtes ne sont normalement pas inspectées par les outils de sécurité. Lorsqu’un serveur DNS reçoit une demande, il recherche dans ses enregistrements l’adresse IP correspondant au nom de domaine demandé et, s’il ne la trouve pas, il envoie la demande au premier nom de domaine connu de l’adresse. En d’autres termes, si la demande est du type payload.domainemalveillant.com, comme le serveur DNS légitime qui reçoit la demande ne connaît pas la résolution de cette adresse, il la transmettra à domainemalveillant.com et il saura que la chaîne utilisée comme sous-domaine est le payload.
- La division des paquets malveillants en deux parties : l’une étant l’élément malveillant et l’autre un paquet « légitime » qui précise simplement le paquet malveillant à importer. A partir de ces derniers, l’installation du paquet malveillant serait effectuée par « typosquattage » (paquets dont les noms sont des fautes de frappe de paquets populaires) ou « confusion de dépendance » (paquets malveillants portant le nom de paquets privés légitimes avec une version supérieure téléchargés dans des dépôts publics, forçant ainsi le gestionnaire de paquets à télécharger et installer le module malveillant).
Selon les déclarations des chercheurs en sécurité, ces paquets ne se distinguent pas par leur dangerosité, mais ce qui est remarquable, c’est le niveau croissant de sophistication avec lequel ils ont été développés.
Il convient de noter que les administrateurs du dépôt PyPI ont supprimé les paquets malveillants après avoir reçu le rapport.
Plus d’information:
https://jfrog.com/blog/python-malware-imitates-signed-pypi-traffic-in-novel-exfiltration-technique/
Laisser un commentaire