Ou comment un simple pip install
 peut ruiner tout votre SI. Et si c’Ă©tait Banana Squad ?
Ah, GitHub. Ce formidable vivier de projets open source, de scripts miracles et de README réconfortants. Un petit git clone
, un pip install
, et hop : le problÚme est résolu. Ou plutÎt remplacé par un RAT silencieux, une exfiltration de vos secrets AWS et un accÚs SSH ouvert sur toute la prod.
Bienvenue dans le monde merveilleux de la supply chain compromise version 2025, propulsĂ©e par un petit groupe bien organisĂ© nommĂ© Banana Squad. Non, ce nâest pas une sĂ©rie Netflix. Câest pire : câest du Python toxique avec un badge de couverture de code et un guide dâinstallation clair. Et ça cible vous.
𧏠La recette du crime : une bibliothÚque Python, un nom crédible, un peu de feinte
Banana Squad ne fait rien de rĂ©volutionnaire. Leur talent, câest le mimĂ©tisme.
Ils créent de faux dépÎts GitHub avec :
- des noms quasi-identiques à des bibliothÚques connues (
reqeusts
,Âflaks
,Âdjango-guard
) - un README soigné, avec des badges de qualité (
Build: Passing
,ÂCoverage: 98%
,ÂPyPI version: 1.0.3
) - et un code sournois glissĂ© dansÂ
setup.py
, dansÂ__init__.py
, ou dans des hooks dâinstallation pip.
RĂ©sultat : quand vous installez leur package en croyant gagner du temps, eux gagnent lâaccĂšs Ă votre machine. Et bien souvent, Ă bien plus.
đŻ Les cibles ? Les devs comme vous
Pourquoi viser des dĂ©veloppeurs ? Parce que ce sont des portes dâentrĂ©e dorĂ©es :
- Leurs postes contiennent des clĂ©s API, des secrets dansÂ
.env
,Â.aws
,Â.npmrc
, des jetons GitHub. - Ils ont parfois un accĂšs SSH direct vers les serveurs de staging ou de prod.
- Ils utilisent des pipelines CI/CD qui déploient du code automatiquement.
- Et surtout⊠ils sont pressĂ©s, dĂ©bordĂ©s, et nâont pas le temps de lire les issues dâun dĂ©pĂŽt GitHub avant de lâinstaller en prod. (Avouez.)
J’en parlais justement dans mes dernier articles :
đ§Ș ChaĂźne de confiance en ruine : GitHub, PyPI et la prolifĂ©ration des malwares open source
«âŻChimera, mais en rĂ©alitĂ© ChimĂšreâŻÂ» : quand un paquet PyPI se prend pour un helpâdev et finit en Robin des Secrets
đ ïž Et si ce nâĂ©tait pas que Banana SquadâŠ
Le cas de Banana Squad est symptomatique dâun problĂšme bien plus large.
On tâen a dĂ©jĂ parlĂ© ici sur SecuSlice :
- Dans lâarticle sur le Shadow SaaS et les outils installĂ©s en douce par des devs pressĂ©s ;
- Dans notre dossier sur les identitĂ©s non humaines, oĂč lâon montre Ă quel point unÂ
.env
 mal protĂ©gĂ© vaut un open bar pour un attaquant ; - Et dans notre sĂ©rie « How to write Secure Code », oĂč on vous suppliait de ne pas importer des libs au hasard comme on goĂ»te des tapas dans un buffet douteux.
La compromission de la chaĂźne dâapprovisionnement logicielle, ce nâest pas une thĂ©orie. Câest le quotidien de 2025. Et ça commence par un copier-coller innocent depuis StackOverflow.
đ Du poste de dev Ă la prod en 3 Ă©tapes
- Vous installez un paquet foireux.
Il vole vos secrets locaux, modifie vosÂ~/.ssh/config
 et exfiltre vos clés GitHub. - Il pousse une backdoor dans un repo pro.
GrĂące Ă votre token GitHub, il modifie un script dans un projet dâĂ©quipe. - Le script est dĂ©ployĂ© en prod.
Boom. Ransomware. Data breach. Reputation down. Câest la supply chain Ă lâenvers.
đ§Ż Ce quâil fallait faire (avant le drame)
Parce que les leçons apprises aprĂšs une compromission, câest un peu tard.
- Utilisez des outils dâanalyse de dĂ©pendances comme socket.dev, deps.dev, ou encoreÂ
pip-audit
. - Activez le 2FA sur vos GitHub, GitLab, JetBrains, etc. Oui, mĂȘme pour les comptes secondaires.
- Mettez en place des politiques de sĂ©curitĂ© sur vos CI/CD : pas dâinstallation de dĂ©pendances non validĂ©es, pas de secrets en clair.
- Passez vosÂ
requirements.txt
 à la moulinette rĂ©guliĂšrement. Une dĂ©pendance, câest aussi du code que vousportez juridiquement. - Sensibilisez vos Ă©quipes, avec des cas comme Banana Squad. Faites-leur lire cet article (et les deux autres, aussi).
đ€ En conclusion : README â sĂ©curitĂ©
Il est temps dâarrĂȘter de croire que la sĂ©curitĂ© se mesure Ă la beautĂ© du badge Travis.
Les groupes comme Banana Squad misent sur lâaveuglement volontaire de dĂ©veloppeurs bien intentionnĂ©s, mais pressĂ©s. Et ça marche.
Parce que la confiance aveugle dans GitHub, PyPI et les écosystÚmes open source sans processus de vérification est une faille⊠humaine.
Prochain article ? Peut-ĂȘtre un tuto sur comment auditer vos packages avec un minimum de sueur et un maximum dâironie.
Ou mieux : un cas concret dâanalyse dâun paquet vĂ©rolĂ© en Python, avec dĂ©tection de code obfusquĂ©. TentĂ© ?