Le paquet qui imitait SymPy et les cryptomones extraites en mémoire de PyPI

Publié 5 min de lectura 144 lecture

Un paquet malveillant a atteint le Python Package Index (PyPI) prétendant être une version de développement d'une bibliothèque connue pour le calcul symbolique, et son modus operandi mérite l'attention : il n'installe pas seulement le code suspect, mais agit comme un chargeur capable d'apporter et de faire fonctionner des binaires en mémoire pour mettre cryptomoneda mine dans les systèmes Linux.

La pièce supplantante est apparue sous le nom Symphy-dev et même reproduit la description du projet légitime pour confondre celui qui a installé ce qui semblait être une variante de SymPy. Selon les données publiques de PyPI, le paquet a accumulé plus de mille téléchargements depuis sa publication à la mi-janvier 2026, un chiffre qui ne correspond pas nécessairement au nombre de machines engagées mais indique que certains développeurs pourraient l'installer par erreur. L'inscription de la page de paquet dans PyPI peut être trouvée ici: https: / / pypi.org / projet / symphy-dev /.

Le paquet qui imitait SymPy et les cryptomones extraites en mémoire de PyPI
Image générée avec IA.

La recherche technique menée par le Socket détaille comment le code malveillant modifie les fonctions spécifiques de la bibliothèque pour agir comme lanceurs. Ces fonctions ne sont activées que lorsque certaines routines polynomiques sont invoquées, une stratégie délibérée pour retarder la détection : le comportement nocif est caché jusqu'à ce que le flux légitime de la bibliothèque atteigne ces points.

Lorsque les routines compromises sont exécutées, le paquet contacte un serveur distant et d'abord télécharger une configuration JSON puis un ou deux binaires ELF conçus pour Linux à partir de l'adresse IP observée par les chercheurs. Au lieu d'écrire ces binaires sur disque, l'attaquant les charge directement dans la mémoire et les exécute en utilisant des techniques spécifiques au noyau, comme memfd _ créer descripteurs/ proc / auto / fd, qui réduit les empreintes sur le système de fichiers et complique l'analyse médico-légale. La référence à l'utilisation de memfd _ create se trouve dans la documentation système : homme 2 memfd _ créer.

L'objectif à ce jour était la mise en œuvre d'une mine de cryptomoneda compatible avec XMRig. Les fichiers de configuration téléchargés indiquent un schéma pour l'extraction de CPU, avec les moteurs GPU désactivés, et se connecter aux serveurs Stratum cryptés dans le port 3333 qui appartiennent à l'infrastructure de l'agresseur. XMRig est un projet minier connu et son code source est accessible au public : https: / / github.com / xmrig / xmrig. Bien que l'utilisation de la campagne ait été minière, le vecteur est beaucoup plus dangereux: Les modules Python agissent comme un Chargeur à usage général capable de télécharger et exécuter n'importe quelle seconde étape sous les privilèges du processus compromis Python.

Ce type d'opération n'est pas entièrement inédit: d'autres acteurs ont utilisé pour exécuter des binaires directement en mémoire pour éviter de laisser des artefacts sur disque, une tactique documentée dans les campagnes de cryptojacking précédentes. Le code de fonctionnement en mémoire nécessite de combiner la détection par signature avec la surveillance du processus et du trafic réseau, car l'analyse statique des fichiers disque peut être courte.

La présence de ce paquet dans PyPI soulève plusieurs réflexions sur la sécurité de l'écosystème du paquet : la facilité de publier des paquets avec des noms qui imitent des projets populaires, la confiance implicite de l'installation d'unités sans les vérifier, et la difficulté de protéger les environnements de développement contre les dispositifs conçus pour être légitimes. Les outils d'emballage et les services de réputation aident, mais la première ligne de défense est toujours dans la pratique de l'équipe: vérifier les noms, vérifier les hachages, définir des versions sur les exigences et préférer les dépendances officielles et signées si possible.

Le paquet qui imitait SymPy et les cryptomones extraites en mémoire de PyPI
Image générée avec IA.

Si vous gérez des environnements Python ou des serveurs Linux, il est approprié d'auditer les installations récentes et de surveiller les processus avec une utilisation inhabituelle de CPU, des connexions Stratum sortantes ou des exécutions qui invoquent memfd _ create. Changer les mots de passe s'il y a suspicion d'intrusion et de réinstallation à partir de sources fiables sont des mesures prudentes. De plus, la collectivité et les responsables des dépôts publics continuent d'améliorer et de contrôler les politiques afin de réduire le risque de remplacement des paquets, mais la prévention au niveau des promoteurs demeure cruciale.

Pour compléter l'analyse de cas et l'analyse technique, le rapport Socket présente un examen détaillé des indicateurs de rendement et d'engagement : Analyse des chaussettes. Le paquet PyPI est toujours disponible à son entrée publique et la bibliothèque légitime qui a été supplantée est disponible sur le site officiel de SymPy : https: / / www.symphy.org.

En bref, la menace mixte ingénierie sociale (supplantation de projet), techniques d'évitement (activation conditionnée et exécution de mémoire) et l'utilisation d'un implantateur générique qui, bien que observé comme une mine de XMRig, pourrait être utilisé pour déployer tout autre code malveillant dans le cadre du processus Python permet. L'histoire rappelle que dans les logiciels tiers la prudence n'est pas facultative, et que la petite confiance implicite peut ouvrir la porte à des engagements à impact élevé.

Couverture

Autres

Plus de nouvelles sur le même sujet.