GitHub touché par le cybergang Banana Squad

Des pirates utilisent du typo-squatting, de l’obfuscation et des faux comptes pour glisser des logiciels malveillants basés sur Python dans des projets open source sur GitHub. Une situation qui montre que la sécurité de la chaîne d’approvisionnement des logiciels libres est loin d’être préservée des attaques.

Un groupe de cybercriminels surnommé Banana Squad, actif depuis avril 2023, a inséré plus de 60 dépôts GitHub corrompus dans le cadre d’une campagne en cours, proposant des kits de piratage basés sur Python avec des charges utiles malveillantes. Découverts par ReversingLabs, les dépôts publics malveillants imitent chacun un outil de piratage bien connu pour paraître légitimes, mais injectent une porte dérobée cachée. « À première vue, ils semblent être des outils de piratage écrits en Python, mais il s’agit en fait de sosies trojanisés d’autres dépôts portant le même nom », a fait savoir Robert Simmons, chercheur principal en logiciels malveillants, dans un billet de blog.Les dépôts ont été découverts en travaillant à rebours à partir des indicateurs d’URL malveillantes dans l’ensemble de données de renseignements sur les menaces du réseau de ReversingLabs. M. Simmons note que cette campagne représente une évolution des contrefaçons flagrantes de npm/PyPI vers une exploitation plus subtile de plates-formes telles que GitHub.

Chacun des 67 dépôts empoisonnés trouvés se faisait passer pour un utilitaire légitime, comme un voleur d’identifiants, un scanner de vulnérabilités ou d’autres outils de sécurité informatique. Mais ces versions contiennent du code malveillant furtivement intégré dans des chaînes massives de caractères, des espaces blancs, ou chiffré. « Il y a beaucoup d’espaces sur la ligne de code trojanisée, ce qui fait que même sur un grand écran à 4K avec une fenêtre maximisée, le code malveillant n’est pas visible », a déclaré M. Simmons. « Cependant, l’affichage du fichier dans la fonction de prévisualisation de Spectra Analyze montre clairement le contenu. » Les auteurs de l’attaque ont regroupé les codes Python nuisibles sur une seule ligne trop longue pour être lue, en espérant que les utilisateurs ne fassent jamais défiler la page assez loin pour s’en apercevoir. Banana Squad a déjà diffusé des centaines de logiciels malveillants pour Windows dans l’écosystème du code source ouvert, notamment dans les systèmes de contrôle de version et les gestionnaires de paquets PyPI et npm, sous de multiples pseudonymes. Ces paquets, repérés en avril 2023, volaient des données sensibles, notamment des détails du système et des portefeuilles de crypto-monnaie, et ont été téléchargés près de 75 000 fois avant d’être retirés.

Des indicateurs de compromission partagés

ReversingLabs a observé plusieurs signes révélateurs concernant les dépôts qui peuvent aider à attraper l’infection à la source. « Pour la majorité des dépôts malveillants, le propriétaire n’a qu’un seul dépôt répertorié sous son compte GitHub », explique M. Simmons. « Cela indique que ces types de comptes d’utilisateurs sont presque certainement faux et créés dans le but exprès d’héberger un dépôt malveillant. Les noms des dépôts se sont avérés identiques à un ou plusieurs autres dépôts non trojanisés, ce qui indique qu’une forme de typo-squatting est à l’œuvre. En outre, la section « À propos » de ces dépôts était truffée de mots-clés de recherche liés au thème du dépôt original et comportait souvent un emoji, généralement une flamme ou une fusée, ce qui laissait supposer l’utilisation de l’IA.

ReversingLabs a partagé une liste d’indicateurs de campagne, notamment des domaines, des URL et des noms de fichiers, ainsi que les 67 dépôts signalés, afin que les développeurs puissent s’en méfier. « Pour les développeurs qui s’appuient sur ces plateformes open source (GitHub), il est essentiel de toujours vérifier que le dépôt que vous utilisez contient réellement ce que vous attendez », a averti M. Simmons. « Cependant, la meilleure façon d’éviter cette menace est de comparer le dépôt souhaité à une version précédente, connue et bonne, du logiciel ou du code source. »

chevron_left
chevron_right