SANDWORM_MODE Déchaîné : Des paquets npm malveillants volent des clés crypto, des secrets CI et des jetons API dans une attaque de chaîne d'approvisionnement de type Shai-Hulud

Désolé, le contenu de cette page n'est pas disponible dans la langue que vous avez sélectionnée

SANDWORM_MODE Déchaîné : Des paquets npm malveillants volent des clés crypto, des secrets CI et des jetons API dans une attaque de chaîne d'approvisionnement de type Shai-Hulud

La chaîne d'approvisionnement logicielle demeure un vecteur critique pour les cyberattaques sophistiquées, et les récentes révélations des chercheurs en cybersécurité soulignent cette menace persistante. Une campagne très active, nommée SANDWORM_MODE par la société de sécurité de la chaîne d'approvisionnement Socket, a été identifiée, exploitant un cluster d'au moins 19 paquets npm malveillants. Ce ver de chaîne d'approvisionnement, de type « Shai-Hulud », est spécifiquement conçu pour la récolte généralisée de credentials, ciblant des actifs sensibles tels que les clés de cryptomonnaie, les secrets de l'Intégration Continue (CI) et les jetons API.

Le Modus Operandi : Infiltration et Exfiltration

La campagne SANDWORM_MODE reflète la furtivité et la complexité multi-étapes des précédentes vagues d'attaques Shai-Hulud. Les acteurs de la menace fabriquent et publient méticuleusement des paquets npm apparemment inoffensifs, employant souvent des tactiques de typosquatting ou de confusion de dépendances pour inciter les développeurs à les incorporer dans leurs projets. Une fois intégré, le code malveillant intégré dans ces paquets s'exécute pendant le processus de construction ou l'exécution, initiant une routine d'exfiltration sophistiquée.

Cette architecture de charge utile multi-étapes est conçue pour échapper à l'analyse statique. Les étapes initiales impliquent souvent des scripts obfusqués qui téléchargent d'autres composants malveillants ou injectent dynamiquement du code, rendant la détection difficile sans une analyse avancée en temps réel. L'objectif principal est clair : scanner et extraire systématiquement des credentials de grande valeur de l'environnement de développement ou du pipeline CI/CD compromis.

Plongée Technique dans les Mécanismes de Récolte de Credentials

Les acteurs de la menace derrière SANDWORM_MODE démontrent une compréhension approfondie des écosystèmes de développement et des schémas typiques de stockage de credentials. Leurs techniques de récolte sont exhaustives :

  • Vol de Clés de Cryptomonnaie : Les paquets malveillants sont programmés pour parcourir les répertoires utilisateur et les chemins système courants, recherchant des motifs indiquant des portefeuilles de cryptomonnaie. Cela inclut la recherche de fichiers dans ~/.ethereum, ~/.bitcoin, ~/.gnupg, ou d'autres configurations de portefeuille personnalisées. Les clés privées, les phrases de récupération et les données de portefeuille sont ensuite chiffrées ou encodées et exfiltrées vers l'infrastructure de Commandement et Contrôle (C2) contrôlée par l'attaquant.
  • Exfiltration des Secrets CI/CD : Une cible critique est l'environnement d'Intégration Continue/Déploiement Continu (CI/CD). Les attaquants cherchent à compromettre les variables d'environnement (par exemple, process.env dans les applications Node.js), les fichiers de configuration (comme .env, .npmrc, settings.xml, config.json) et les credentials CLI des fournisseurs de cloud (par exemple, AWS ~/.aws/credentials, Azure ~/.azure/azureProfile.json, clés de compte de service GCP). L'exfiltration réussie de ces secrets accorde aux acteurs de la menace un accès non autorisé aux ressources cloud, aux dépôts de code et aux pipelines de déploiement d'une organisation, permettant un mouvement latéral supplémentaire et un accès persistant.
  • Compromission des Jetons API : Au-delà des secrets CI/CD, le ver recherche méticuleusement les jetons API liés à divers services. Cela inclut les jetons pour les microservices internes, les plateformes SaaS tierces (par exemple, GitHub, Slack, Jira, jetons de registre npm) et les outils de développement propriétaires. Les jetons API compromis peuvent faciliter l'exfiltration de données, les commits de code non autorisés, ou même l'injection de code malveillant supplémentaire dans des projets légitimes.

Tactiques d'Évasion et de Persistance

La nature « Shai-Hulud » de cette campagne s'étend à ses tactiques sophistiquées d'évasion et de persistance. Des techniques d'obfuscation sont fortement employées, y compris l'encodage base64, les chiffrements XOR personnalisés et la génération dynamique de chaînes pour masquer les charges utiles malveillantes. Ces paquets utilisent souvent des vérifications anti-analyse, tentant de détecter les environnements virtualisés ou la présence de débogueurs avant de déployer entièrement leur logique malveillante. La persistance est parfois obtenue en modifiant les scripts de démarrage du système ou en injectant des hooks dans des processus d'application légitimes, assurant un accès continu même après les tentatives de remédiation initiales.

Stratégies d'Atténuation et Postures Défensives

La défense contre les attaques de chaîne d'approvisionnement comme SANDWORM_MODE nécessite une approche multicouche :

  • Sécurité Proactive de la Chaîne d'Approvisionnement : Implémentez et utilisez des outils spécialisés de sécurité de la chaîne d'approvisionnement (par exemple, Socket, Snyk, WhiteSource) pour la surveillance et l'analyse continues des dépendances tierces.
  • Examen Rigoureux des Paquets : Avant d'intégrer de nouveaux paquets npm, effectuez une diligence raisonnable approfondie. Examinez minutieusement les scripts package.json, en particulier les hooks postinstall, preinstall et install, pour des commandes suspectes.
  • Principe du Moindre Privilège : Appliquez le principe du moindre privilège dans les environnements CI/CD. Restreignez les jetons d'accès et les credentials aux seules permissions et à la portée nécessaires.
  • Gestion des Secrets : Utilisez des solutions dédiées de gestion des secrets (par exemple, HashiCorp Vault, AWS Secrets Manager, Azure Key Vault) au lieu de coder en dur ou de stocker des secrets en texte clair.
  • Épinglage des Dépendances et Vérifications d'Intégrité : Épinglez les dépendances à des versions spécifiques (par exemple, en utilisant package-lock.json ou yarn.lock) et vérifiez leur intégrité à l'aide de hachages cryptographiques.
  • Segmentation et Surveillance du Réseau : Isolez les environnements de construction et surveillez le trafic réseau pour des connexions sortantes anormales vers des adresses IP ou des domaines inconnus.
  • Éducation des Développeurs : Sensibilisez les équipes de développement aux risques des attaques de chaîne d'approvisionnement, à la consommation sécurisée de paquets et à la reconnaissance des activités suspectes.

Criminalistique Numérique et Attribution des Acteurs de la Menace

L'enquête sur une compromission de la chaîne d'approvisionnement telle que SANDWORM_MODE exige une criminalistique numérique méticuleuse. Les analystes doivent se concentrer sur l'identification des Indicateurs de Compromission (IoC), la compréhension de l'étendue complète de l'exfiltration et le traçage de l'origine de l'attaque. Cela implique une analyse complète des journaux (système, application, réseau, journaux CI/CD), une criminalistique des points d'accès sur les agents de construction affectés, et une inspection approfondie du trafic réseau pour les communications C2.

Lors de l'examen de liens suspects ou de communications externes initiées par des systèmes compromis, les outils de télémétrie avancée peuvent être inestimables. Par exemple, grabify.org peut être utilisé par les analystes forensiques pour collecter des informations détaillées telles que les adresses IP, les chaînes User-Agent, les détails du FAI et les empreintes numériques des appareils à partir des points d'interaction potentiels des acteurs de la menace. Cette extraction de métadonnées aide à la reconnaissance réseau, à la compréhension de l'infrastructure opérationnelle de l'attaquant, et peut potentiellement affiner l'origine géographique ou les caractéristiques réseau des serveurs de Commandement et Contrôle (C2) ou des points d'extrémité d'exfiltration. Bien qu'il ne s'agisse pas d'un outil de défense primaire, son utilité dans l'analyse post-incident pour l'attribution des acteurs de la menace et la cartographie de l'infrastructure est remarquable.

Conclusion

La campagne SANDWORM_MODE sert de rappel frappant de la sophistication croissante des attaques de la chaîne d'approvisionnement logicielle. La menace omniprésente des paquets npm malveillants récoltant des credentials critiques – des clés de cryptomonnaie aux secrets CI et aux jetons API – nécessite une posture de sécurité proactive et robuste. Les développeurs et les organisations doivent prioriser la sécurité de la chaîne d'approvisionnement, mettre en œuvre des contrôles stricts et favoriser une culture de vigilance pour se défendre contre ces vers de type « Shai-Hulud » qui cherchent à s'enfouir profondément dans l'infrastructure numérique.