SleeperGem Uses Three Malicious RubyGems Packages to Target Developer Machines
Mis à jour :
SleeperGem : Une attaque sophistiquée sur la supply chain RubyGems
La campagne « SleeperGem » cible l’écosystème Ruby en détournant des comptes développeurs inactifs pour injecter des charges malveillantes dans des packages légitimes. Cette attaque de type « supply chain » vise spécifiquement les postes de travail des développeurs en évitant les environnements d’intégration continue (CI).
Points clés :
- Mode opératoire : Les attaquants prennent le contrôle de comptes RubyGems dormants depuis des années pour publier des versions vérolées sans aucune trace dans les dépôts sources (GitHub).
- Ciblage : Les malwares détectent la présence de variables d’environnement CI (Jenkins, GitHub Actions, etc.) pour s’auto-exclure et garantir qu’ils ne s’exécutent que sur des machines de développement.
- Persistence : Les versions malveillantes téléchargent des scripts et des binaires depuis une instance Forgejo. Ils installent des démons en arrière-plan, utilisent des tâches Cron et tentent une élévation de privilèges (via
sudo) pour planter un shellsetuid root. - Propagation : Le package
git_credential_manager(usurpant le nom de l’outil officiel Microsoft) a été ajouté comme dépendance à d’autres bibliothèques populaires, maximisant ainsi l’impact.
Vulnérabilités : Aucune CVE n’est associée, car il s’agit d’une compromission de comptes de mainteneurs et d’une injection de code malveillant volontaire dans les paquets :
git_credential_manager(v2.8.0 à 2.8.3)Dendreo(v1.1.3, 1.1.4)fastlane-plugin-run_tests_firebase_testlab(v0.3.2)- Autres paquets impactés par dépendance :
slackHtmlToMarkdown,seo_optimizer,array_fast_methods.
Recommandations :
- Réinitialisation immédiate : Si vous avez utilisé ces packages, considérez votre machine et toutes les clés secrètes/identifiants qui y sont stockés comme compromis. Procédez à une rotation complète de tous les jetons et mots de passe.
- Nettoyage manuel :
- Supprimer le répertoire du démon malveillant :
~/.local/share/gcm/. - Vérifier et supprimer les entrées de persistance (cron, systemd).
- Rechercher la présence du shell usurpé dans
/usr/local/sbin/ping6et le supprimer.
- Supprimer le répertoire du démon malveillant :
- Sécurité des comptes : Pour les mainteneurs, l’activation de l’authentification multifacteur (MFA) sur les comptes RubyGems est impérative pour prévenir le détournement de comptes inactifs.
