Attaque silencieuse : les paquets malveillants NuGet pointent vers ASP. NET pour exfilter les identités et ouvrir les portes arrière

Publié 6 min de lectura 103 lecture

Les chercheurs en sécurité ont déterré une campagne sophistiquée visant les ASP. Les développeurs d'applications NET qui, loin de rechercher des infections bruyantes sur les équipes de programmeurs, visent un objectif plus précieux et silencieux : les applications que ces développeurs construisent. Selon le rapport publié par Socket, quatre paquets malveillants publiés dans NuGet entre 12 et 21 août 2024 ont agi ensemble pour filtrer ASP. Données d'identité NET et installer des portes arrière persistantes dans les applications déployées.

Les paquets, publiés par le profil hamzazaheer ils ont reçu plus de 4 500 téléchargements avant d'être retirés après la divulgation responsable. Leurs noms - y compris des variantes telles que NCryptyo, DOGOAuth2 _, IRAOAuth2.0 et SimpleWriter _- masquer des comportements très différents: d'un "dropper" qui active la chaîne de fiançailles aux composants qui extraient les tables d'identité, les rôles et les permissions de ASP. NET Identité et qui acceptent les règles d'autorisation envoyées par l'agresseur pour accorder des privilèges.

Attaque silencieuse : les paquets malveillants NuGet pointent vers ASP. NET pour exfilter les identités et ouvrir les portes arrière
Image générée avec IA.

Essentiellement, la campagne utilise un exécutable de première étape intégré dans l'un des paquets (NCryptyo) qui est activé lorsque la librairie est chargée dans l'application. Ce module installe des crochets dans le compilateur .NET JIT pour déchiffrer et déployer une charge utile secondaire : un proxy local qui écoute dans hôte local: 7152 et redirige le trafic vers un serveur de contrôle dont la direction est résolue dynamiquement dans le temps d'exécution. Par ce tunnel local, les autres paquets commencent à envoyer des informations sensibles d'identités et de permissions à l'étranger; l'infrastructure distante peut alors répondre avec de nouvelles règles d'autorisation que les processus d'application, permettant à l'attaquant de créer des comptes administratifs ou de désactiver les contrôles de sécurité dans les environnements de production.

Le paquet présenté comme utilitaire de conversion PDF, SimpleWriter _, il intègre des capacités troublantes d'écriture inconditionnelle dans le disque et d'exécution de processus cachés, permettant à l'agresseur de laisser des exécutables supplémentaires sur la machine victime et de les démarrer sans fenêtres visibles. L'analyse des métadonnées et de l'environnement de compilation suggère que tous les paquets proviennent du même acteur, car ils partagent des impressions de construction identiques.

Il est important de mettre en évidence le vecteur par lequel il est agi: il n'est pas seulement destiné à compromettre le poste de travail du développeur, mais manipulation de la couche d'autorisation pendant le développement pour contrôler les applications déployées. Lorsque l'application avec des dépendances malveillantes vient à la production, le canal vers le C2 peut rester actif et continuer à exfilter des données de permissions et recevoir des règles qui donnent un accès administratif à toute instance déployée.

Ce type d'attaque est une autre variante du problème plus large de la chaîne d'approvisionnement des logiciels : des composants tiers qui semblent inoffensifs et qui sont intégrés dans des projets finissent par être la voie vers des systèmes critiques. En comparaison, Tenable a signalé un autre cas récent dans l'écosystème npm: un paquet appelé ombre-src qui a profité du crochet d'installation ( préinstallation) pour exécuter le code malveillant sur Windows, Linux et macOS et télécharger des chargeurs qui ont donné accès à distance à l'attaquant. Des recherches durables détaillent comment ces installateurs ont téléchargé et exécuté des binaires ou des scripts qui, dans différents systèmes, ont été déployés de shellcodes en mémoire à des agents basés sur des frameworks comme Mythic, et des données exfiltrées vers des domaines dans des services cloud pour camoufler leur trafic ( Appel d'offres).

Les risques sont clairs: lorsqu'une unité tierce peut modifier la logique d'autorisation ou installer des processus persistants, l'intégrité de l'application et de ses utilisateurs est compromise. Pour ceux qui se développent avec ASP. NET, il est crucial de comprendre que l'exfiltration dans ces incidents se concentre sur les objets et les structures qui gèrent l'authentification et l'autorisation - par exemple, les tableaux et les schémas qu'il gère ASP.NET Identité- et que la présence de code peu fiable dans le cycle de construction peut permettre à l'agresseur de modifier ces règles de l'extérieur.

Compte tenu de cette réalité, les pratiques d'hygiène devraient être renforcées dans la gestion des unités et de la chaîne d'approvisionnement. Tenir un inventaire des composants et un SBOM, valider la source des paquets signés et préférer les artefacts signés, les unités de vérification et de balayage avec des outils spécialisés, isoler les processus de construction et contrôler le trafic sortant des pipelines CI / CD sont des mesures qui réduisent la surface d'attaque. En outre, des politiques moins privilégiées dans le développement et l'examen manuel des changements de librairie qui interagissent avec l'authentification et les règles d'accès aident à détecter les anomalies avant qu'elles n'atteignent la production. Afin d'approfondir les contrôles et les recommandations générales sur la sécurité dans la chaîne d'approvisionnement, des guides d'agence tels que: CISA Ils sont utiles.

Attaque silencieuse : les paquets malveillants NuGet pointent vers ASP. NET pour exfilter les identités et ouvrir les portes arrière
Image générée avec IA.

D'autres ressources techniques sont également pertinentes: Microsoft offre de la documentation sur la signature des paquets et les meilleures pratiques pour consommer des paquets dans des environnements .NET ( signature du paquet dans NuGet), et les projets open source et les fournisseurs de sécurité continuent d'améliorer la détection de ces comportements. De plus, des recherches et des outils qui analysent les hameçons JIT, les proxys locaux suspects ou les exécutions au moment du chargement sont de plus en plus nécessaires pour identifier des modèles tels que ceux décrits par Socket et Tenable.

Si vous soupçonnez d'avoir utilisé l'un de ces paquets ou toute autre action inattendue, envisagez de traiter le système comme potentiellement compromis : il élimine les dépendances, examine les journaux et les configurations d'autorisation, rompt les références et les secrets, et effectue une analyse médico-légale s'il y a des signes d'accès non autorisé. Comme rappel technique et opérationnel, la sécurité d'une application ne commence pas ou ne se termine pas dans son code source: les librairies et le processus par lequel elles viennent à votre projet comptent autant que le code que vous écrivez.

La communauté et les plateformes de paquetage sont attentives et répondent en supprimant les artefacts malveillants, mais l'expérience montre que les téléchargements pré-enlèvement peuvent laisser les installations dans de nombreux dépôts et pipelines. Il est donc essentiel que les équipes chargées du développement, des opérations et de la sécurité collaborent pour identifier et atténuer les menaces dans la chaîne d'approvisionnement avant qu'elles n'atteignent la production.

Couverture

Autres

Plus de nouvelles sur le même sujet.