La campagne d'attaque de la chaîne d'approvisionnement npm qui imite Alibaba et déploie une RAT multiplateforme

Auteur: Publié 5 min de lectura 165 lecture

Les images de cet article ont été générées par intelligence artificielle. Notre méthode de publication

Les enquêteurs de sécurité ont identifié attaque contre la chaîne d'approvisionnement qui utilise des paquets npm malveillants pour cibler les développeurs en utilisant les outils de l'écosystème Alibaba. La technique n'est pas un seul paquet avec le code malveillant, mais un structure de la couche où les versions apparemment inoffensives et les paquets "decoy" avec des noms identiques aux paquets privés du champ @ ali activent un réseau de dépendances qui enfin télécharger et exécuter une porte arrière complexe.

Le vecteur initial comprenait des paquets non scannés tels que lib-mtop, qui correspond au nom d'un paquet privé d'Alibaba, et plusieurs librairies supplémentaires publiées à partir du même compte de maintenance. Les versions publiques ont passé des changements en mars / avril qui ont ajouté un chargeur capable d'obtenir une charge utile à distance (en invoquant la boucle) et en exécutant le code JavaScript délimité par un « moteur de règle » qui utilise le nœud. module js vm pour décider du comportement par système d'exploitation.

La campagne d'attaque de la chaîne d'approvisionnement npm qui imite Alibaba et déploie une RAT multiplateforme
Image générée avec IA.

La campagne montre une conception soignée pour éviter la détection: la charge utile secondaire est téléchargée à partir d'un domaine qui imite Alibaba et le code malveillant est fragmenté dans plusieurs paquets de la chaîne de dépendances, de sorte que le paquet que le développeur installe agit comme un leurre et la logique réelle se matérialise à travers les paquets de couche moyenne et basse. Cette séparation rend difficile l'analyse manuelle et automatisée des examens rapides des unités.

La charge utile finale est de Multiplateforme RAT avec des capacités de fonctionnement à distance, l'exfiltration, la reconnaissance de l'hôte, la mise en place de charges supplémentaires et le mouvement latéral. Dans Windows il remplace ou troyanise les composants de sécurité d'entreprise et les applications; dans Linux il télécharge binaire dans / tmp et les exécute en mémoire; dans macOS il modifie shell starts and create Launch Agents. Il peut également persister en injectant du code dans des applications de collaboration commerciale comme DingTalk, augmentant le risque d'espionnage ciblé.

Bien que l'attribution ne soit pas confirmée, il y a des signes opérationnels dans les commentaires chinois et dans les temps avec UTC + 08: 00 qui pointent vers un acteur de langue chinoise. L'objectif apparent est espionnage industriel contre les développeurs dans les entreprises liées au groupe Alibaba, ce qui fait de cette campagne un risque stratégique plutôt qu'une simple campagne de malware de masse.

Si vous avez installé l'un des paquets associés (par exemple lib-mtop, aone-kit, smart-config-manager, local-config-parser et d'autres paquets connexes), vous devez engagement et agir immédiatement à partir de machines propres. Les actions prioritaires comprennent les références tournantes et les clés d'une équipe que vous connaissez n'est pas engagée; auditionner les systèmes de développement et IC à la recherche de processus persistants; et la recherche d'indicateurs tels que ~ / .zshrc, LaunchAgens dans macOS, binaires exécutés depuis / tmp dans les services Linux et DLs modifiés dans Windows.

En outre, il convient de vérifier les dépôts et les flux d'IC : examiner et faire pivoter les jetons de publication Npm et les identifiants GitHub, désactiver les coureurs auto-ménagés pour vérifier leur état et éteindre les webbooks de filtrage possibles. Commandes de contrôle simples peuvent aider: vérifier paquet-lock.json / fil.lock, exécuter npm lsdans les projets, et recherchez les chaînes de noms de paquets dans l'arbre des dépendances. Il est également recommandé de nettoyer les porcs et de réinstaller les dépendances à partir de fichiers de verrouillage fiables ou d'un registre interne.

La campagne d'attaque de la chaîne d'approvisionnement npm qui imite Alibaba et déploie une RAT multiplateforme
Image générée avec IA.

Pour atténuer les risques futurs, il active l'authentification multi-facteurs dans les comptes npm et GitHub, limite les autorisations de publication par équipe, utilise les check-ups dans les requêtes de tirage et envisage de bloquer les politiques pour les paquets non-scopeés qui peuvent imiter les noms internes. La documentation de GitHub sur la sécurité de la chaîne d'approvisionnement et le guide de npm sur les pratiques sécuritaires sont de bons points de départ pour la mise en oeuvre des contrôles : Guide de sécurité de la chaîne d'approvisionnement GitHub et Bonnes pratiques de sécurité de npm.

Si vous gérez une organisation, vous appréciez l'utilisation d'un registre privé ou de politiques de procuration qui vous permettent d'auditer et d'approuver les paquets avant leur consommation dans les environnements d'entreprise, et de surveiller le trafic sortant vers des domaines suspects (par exemple celui utilisé par les attaquants pour imiter les SAO d'Alibaba). Pour l'analyse et le balayage d'unités supplémentaires, des projets comme OWASP Dependency-Check offrent des ressources utiles pour identifier les composantes engagées : OWASP Contrôle de la dépendance.

En bref, cet incident renforce que la sécurité des logiciels modernes dépend à la fois de l'hygiène dans les dépôts et les environnements CI et du contrôle strict duquel les paquets sont autorisés dans la production. La fragmentation délibérée de la fonctionnalité malveillante dans plusieurs modules et l'utilisation de leurres qui imitent les paquets privés soulignent l'importance des contrôles organisationnels (politiques de publication, autorisations minimales) et techniques (analyse automatisée, surveillance de l'évacuation et détection de la persistance) pour réduire la surface de l'attaque.

Couverture

Autres

Plus de nouvelles sur le même sujet.