GemStuffer Abuses 150+ RubyGems to Exfiltrate Scraped U.K. Council Portal Data
Mis à jour :
La campagne GemStuffer : détournement de RubyGems pour l’exfiltration de données
La campagne « GemStuffer » utilise le dépôt RubyGems comme une infrastructure de stockage et d’exfiltration pour des données moissonnées (scraping). Contrairement aux attaques classiques visant à compromettre les développeurs, cette opération exploite le registre pour archiver des données publiques provenant de portails gouvernementaux britanniques.
Points clés :
- Détournement d’usage : Plus de 150 paquets malveillants ont été publiés. Ils servent de conteneurs pour des données collectées (calendriers de réunions, agendas, contacts, documents PDF) sur les portails « ModernGov » de conseils municipaux au Royaume-Uni.
- Méthodologie : Les attaquants intègrent des clés API codées en dur dans les scripts des gems pour pousser automatiquement les données collectées vers le registre, soit via l’interface en ligne de commande (
gem), soit par des requêtes HTTP POST directes vers l’API. - Nature de l’attaque : Bien que les données soient publiques, cette pratique souligne un abus flagrant des plateformes de gestion de paquets, transformées en serveurs de stockage illégitimes. Il pourrait s’agir d’une démonstration de force, d’un test d’abus de registre ou d’une étape préparatoire à des attaques plus complexes contre les infrastructures gouvernementales.
Vulnérabilités :
- Il ne s’agit pas d’une vulnérabilité logicielle (CVE) spécifique, mais d’une vulnérabilité de conception et de gouvernance des registres de paquets. Le problème réside dans la facilité de création de comptes et de publication automatisée de paquets malveillants sans vérification préalable, ainsi que dans le stockage de données arbitraires au sein des archives
.gem.
Recommandations :
- Renforcement de la sécurité des registres : Mise en œuvre de mécanismes de détection automatique pour identifier les paquets ne contenant pas de code utile ou affichant des comportements de type « stockage de données ».
- Gestion des identifiants : Pour les mainteneurs et organisations, éviter le codage en dur d’API keys dans les paquets et privilégier l’utilisation de variables d’environnement ou de gestionnaires de secrets sécurisés.
- Vigilance des développeurs : Pratiquer une analyse rigoureuse des dépendances (via des outils comme Socket) pour détecter les paquets suspects qui ne présentent aucune activité légitime de développement.
