- Les logiciels malveillants sans fichier s'exécutent en mémoire et exploitent des outils légitimes tels que PowerShell ou WMI.
- Il peut voler des données, chiffrer des fichiers ou espionner des ordinateurs sans laisser de trace évidente sur le disque.
- Une détection efficace nécessite la surveillance des comportements et des processus, et pas seulement des fichiers.
- La défense nécessite l'EDR, la segmentation, l'application de correctifs et la réduction de l'utilisation des scripts et des macros.
Ces dernières années, le logiciel malveillant sans fichier Les logiciels malveillants sans fichier sont devenus l'un des plus grands casse-têtes pour les équipes informatiques et de sécurité. Il ne s'agit pas du virus classique téléchargé en pièce jointe et éliminé par une analyse antivirus, mais d'un logiciel beaucoup plus furtif qui se dissimule au sein même des processus du système.
Ce type de menace tire profit outils légitimes du système d'exploitationSous Windows notamment, il peut exécuter du code malveillant directement dans la mémoire vive. Comme il ne laisse quasiment aucune trace sur le disque, il peut contourner de nombreux antivirus classiques et rester actif suffisamment longtemps pour voler des informations, chiffrer des fichiers ou maintenir des portes dérobées sans être détecté.
Qu'est-ce qu'un logiciel malveillant sans fichier exactement ?
Lorsque nous parlons de logiciels malveillants sans fichier, nous faisons référence à code malveillant qui ne dépend pas d'un exécutable classique sur le disque Pour fonctionner, il s'appuie sur des composants déjà présents dans le système (scripts, services, interpréteurs de commandes, etc.) afin de charger et d'exécuter ses instructions directement en mémoire, au lieu de s'installer comme n'importe quel autre programme.
D'un point de vue technique, ce logiciel malveillant généralement à injecter dans des processus déjà en cours d'exécution Ou bien elles peuvent être lancées à l'aide de commandes qui chargent tout en mémoire vive. Cela signifie qu'une fois l'ordinateur éteint ou redémarré, de nombreuses variantes disparaissent, mais qu'entre-temps, elles ont largement le temps de causer des dégâts importants.
Comparées aux logiciels malveillants basés sur des fichiers, ces menaces sont Plus léger, plus discret et beaucoup plus difficile à suivreVous ne trouverez pas de fichier .exe suspect sur le disque, ni nécessairement d'installateur malveillant : le problème réside dans ce qui se passe au sein de processus qui semblent pourtant fiables.
L'essor de cette approche a explosé vers 2017, lorsque les campagnes ont commencé à combiner des techniques sans fichier avec chevaux de Troie de type « clicker », logiciels publicitaires avancés et outils d'accès à distance (RAT)Aujourd'hui, elles sont intégrées à toutes sortes d'opérations : de l'espionnage et des APT aux ransomwares et au cryptominage.
Comment les logiciels malveillants sans fichier fonctionnent en interne
Pour comprendre son fonctionnement, il est utile de rappeler que la plupart des applications courantes sont distribuées sous forme de fichier écrit sur disque puis chargé en mémoire Lorsque l'utilisateur l'exécute, le logiciel malveillant s'exécute. En revanche, les logiciels malveillants sans fichier sautent cette première étape et se matérialisent directement dans la mémoire vive en utilisant les mécanismes du système d'exploitation lui-même.
De nombreuses campagnes s'appuient sur l'idée de « vivre de la terre » (vivre de la terre): l'attaquant abuse des pouvoirs administratifs légitimes Au lieu d'introduire de nouveaux binaires, on exploite des failles de sécurité. Sous Windows, l'exemple principal est PowerShell, mais WMI, mshta, rundll32, les scripts VBScript ou JScript, ainsi que d'autres binaires de confiance (LoLBins), sont également vulnérables.
Un scénario typique serait le suivant : un utilisateur ouvre un document Office contenant un contenu malveillant ou clique sur un lien d’hameçonnage ; à partir de là… script qui invoque PowerShell ou un autre outil permettant de télécharger, déchiffrer ou injecter le code de la phase suivante en mémoire. Tout cela peut se faire sans créer de fichier permanent sur le disque dur.
Un autre vecteur courant consiste à tirer profit vulnérabilités d'exécution de code à distancePar exemple, les débordements de tampon dans les navigateurs, les plugins ou les applications serveur. En exploitant cette vulnérabilité, l'attaquant peut exécuter directement du code malveillant au sein du processus vulnérable et, à partir de là, charger le reste des composants en mémoire.
Certaines variantes vont même jusqu'à recourir à Registre Windows ou tâches planifiées Ces scripts ou commandes permettent de réactiver l'attaque au démarrage du système ou à l'ouverture de session. Même si des données sont écrites dans le Registre, la logique malveillante principale continue de s'exécuter en mémoire, ce qui la rend difficile à détecter avec des outils se concentrant uniquement sur le système de fichiers.
Modes d'infection et accès initial
La porte d'entrée est généralement assez classique : Courriels d'hameçonnage, liens malveillants et documents falsifiés Ils restent les maîtres incontestés de l'accès initial, malgré l'utilisation de techniques sans fichier en interne. Leur secret ? Tout au long de la chaîne, un effort maximal est déployé pour minimiser l'empreinte disque.
Dans de nombreux cas, ils sont utilisés Documents Microsoft Office avec macros Lorsqu'elles sont activées, ces macros font appel à PowerShell ou WMI pour télécharger et exécuter en mémoire la phase suivante de l'attaque. Même sans macros, les attaquants exploitent les vulnérabilités de Word, Excel, lecteurs PDF ou le moteur de script lui-même pour permettre l'exécution du code.
Une autre approche consiste à tirer directement parti de exécutables apparemment inoffensifs Ce fichier exécutable, que l'utilisateur reçoit par courriel ou télécharge depuis Internet, peut extraire un module malveillant et le charger en mémoire grâce à des techniques telles que la réflexion dans .NET, sans pour autant l'enregistrer sur le disque sous forme de fichier distinct.
Il existe également des campagnes ciblant les serveurs web ou les applications exposées à Internet, où la vulnérabilité est exploitée pour déployer webshells avec des composants sans fichierUn exemple récent est l'utilisation de Godzilla et d'outils similaires, dans lesquels du code malveillant se propage au sein des requêtes HTTP et est injecté directement dans la mémoire du serveur compromis.
Enfin, les attaquants ont fréquemment recours à identifiants volésS’ils obtiennent le nom d’utilisateur et le mot de passe d’un administrateur ou d’un compte privilégié, ils peuvent se connecter via RDP ou d’autres canaux et lancer manuellement des scripts PowerShell, des commandes WMI ou des outils d’administration qui chargent le logiciel malveillant en mémoire sans laisser de nouveaux exécutables sur le système.
Techniques spécifiques utilisées par les logiciels malveillants sans fichier
L'une des clés de ces attaques est la réutilisation de outils Windows natifs Ils l'utilisent comme vecteur pour leurs scripts. Cela permet aux activités malveillantes de se fondre dans les tâches administratives courantes, ce qui complique l'analyse et la réponse.
Parmi les techniques les plus courantes, on trouve l'utilisation de PowerShell en tant que lanceur de code intégré directement depuis la ligne de commande. Par exemple, un script obfusqué est passé en paramètre, la politique d'exécution est désactivée, la fenêtre est masquée et une charge utile est téléchargée directement en mémoire, le tout sans laisser apparaître de fichier .ps1 ni aucun exécutable suspect.
Une autre tactique très répandue consiste à stocker des scripts malveillants dans le Abonnements à Windows Management Instrumentation (WMI)De temps à autre, WMI déclenche le script, qui peut exécuter du code en mémoire, se connecter à des serveurs de commande et de contrôle, ou lancer de nouvelles étapes de l'infection.
De même, de nombreux groupes utilisent le Registre Windows et Planificateur de tâches Ils utilisent ce système comme refuge pour leurs scripts et commandes. Au lieu de placer un exécutable dans le dossier de démarrage, ils définissent des clés de démarrage ou des tâches planifiées qui exécutent des scripts PowerShell, mshta ou rundll32 avec du code intégré ou exécuté à la volée.
On observe également des techniques dans réflexion dans .NETUn exécutable léger contient des assemblages chiffrés ou compressés, chargés directement en mémoire via Reflection.Load, sans jamais être enregistrés sur le disque sous forme de fichiers .dll. Ceci permet le déploiement de chevaux de Troie très sophistiqués au sein d'un processus unique, en apparence normal.
Que peut faire une attaque sans fichier ?
Malgré son nom, une attaque sans fichier n'est pas limitée dans son impact. En fait, elle peut effectuer les mêmes fonctions que les logiciels malveillants traditionnels: vol d'informations, chiffrement de données, déplacement latéral, espionnage, minage de cryptomonnaies ou installation de portes dérobées permanentes.
De nombreuses campagnes sans fichier se comportent comme voleur d'identifiantsCela consiste à capturer les mots de passe, les jetons de session ou les hachages d'authentification stockés dans la mémoire des processus sensibles. Il est ainsi plus facile d'élever ses privilèges, de compromettre davantage de systèmes et de maintenir un accès prolongé sans avoir recours à des fichiers binaires supplémentaires.
D'autres se concentrent sur ransomware sans fichierUne partie de la logique de chiffrement et de communication est exécutée directement en mémoire. Bien qu'un composant disque puisse intervenir ultérieurement pour manipuler un grand nombre de fichiers, le chargement initial et le contrôle de l'attaque sont effectués sans fichier afin d'éviter toute détection précoce.
Les attaquants peuvent également installer rootkits ou RAT avancés Une fois installés, ces outils utilisent des canaux sans fichier pour recevoir des commandes, se déplacer sur le réseau et mettre à jour des modules. Du fait de leur intégration aux processus système ou aux services critiques, leur éradication est particulièrement difficile.
Sur le plan économique, l'impact se traduit par Perte de données, interruptions de service, amendes réglementaires et atteinte à la réputationComme ces intrusions passent souvent inaperçues pendant des mois, le volume d'informations exfiltrées et l'ampleur de la violation peuvent être énormes.
Phases d'une attaque de logiciel malveillant sans fichier
Bien que les aspects techniques diffèrent, le cycle de vie d'une attaque sans fichier est assez similaire à celui de toute intrusion avancée. Quels sont les changements ? mécanismes utilisés dans chaque phase et leur façon de se camoufler.
Au stade de accès initialL'attaquant a besoin d'un point d'entrée initial : un clic sur un lien d'hameçonnage, l'ouverture d'un document contenant des macros, l'exploitation d'une faille de sécurité d'un serveur ou la réutilisation d'identifiants compromis. Dès lors, l'objectif est d'exécuter du code malveillant au sein du système cible.
Une fois cette étape franchie, la phase suivante commence. exécution en mémoireC’est là qu’interviennent PowerShell, WMI, mshta, rundll32, VBScript, JScript ou d’autres interpréteurs pour charger et activer la charge utile sans générer de fichiers exécutables permanents sur le disque. Le code est généralement obfusqué ou chiffré et déchiffré uniquement en mémoire vive.
La poursuite commence alors. persistanceBien que de nombreuses charges utiles sans fichier disparaissent lorsque l'ordinateur est redémarré, les attaquants sophistiqués combinent des scripts résidant dans la RAM avec des clés de registre, des tâches planifiées ou des abonnements WMI qui relancent le code chaque fois qu'une condition spécifique est remplie, comme le démarrage du système ou la connexion de l'utilisateur.
Enfin, le buts finaux Les actions de l'attaquant comprennent : le vol et l'exfiltration de données, le chiffrement d'informations, le déploiement de logiciels malveillants supplémentaires, l'espionnage continu et le sabotage de systèmes critiques. Tout cela est réalisé en minimisant au maximum son activité afin d'éviter les alertes précoces et les analyses forensiques.
Pourquoi est-ce si difficile à détecter ?
Le principal problème des logiciels malveillants sans fichier est que Il rompt avec le modèle de défense classique basé sur les fichiers et les signatures.En l'absence de fichier exécutable suspect à analyser, de nombreux moteurs antivirus restent aveugles à ce qui se passe dans la mémoire et les processus légitimes.
L'absence de fichiers sur le disque implique que Il n'y a aucun objet à scanner périodiquement à la recherche de schémas connus. De plus, en exploitant des fichiers binaires signés par le système d'exploitation lui-même, tels que PowerShell.exe, wscript.exe ou rundll32.exe, les activités malveillantes sont dissimulées derrière des noms auxquels l'administrateur fait généralement confiance.
De plus, de nombreux produits hérités ont un Visibilité limitée sur les processus en coursIls se concentrent sur le système de fichiers et le trafic réseau, mais examinent à peine les appels d'API internes, les paramètres de ligne de commande, le comportement des scripts ou les événements du Registre qui pourraient trahir une attaque sans fichier.
Les attaquants, conscients de ces limitations, ont recours à techniques d'obfuscation, de chiffrement et de fragmentation du codePar exemple, ils divisent un script malveillant en plusieurs fragments qui sont assemblés en temps réel, ou ils dissimulent des instructions dans des images, des ressources intégrées ou des chaînes de caractères apparemment inoffensives.
Dans les environnements où les systèmes sont rarement redémarrés (serveurs critiques, terminaux de production, etc.), les logiciels malveillants résidant en mémoire peuvent rester actif pendant des semaines ou des mois sans être détecté, surtout si vous vous déplacez avec prudence et minimisez le volume de trafic ou les actions ostentatoires.
Limites des défenses traditionnelles
La première réaction de nombreux fournisseurs face à cette menace a été de tenter restreindre ou bloquer directement des outils comme PowerShell ou les macros OfficeBien qu'elle puisse atténuer certains vecteurs, elle ne constitue pas une solution réaliste ou complète dans la plupart des organisations.
PowerShell est devenu un composant clé de l'administration système WindowsL’automatisation des tâches, le déploiement de logiciels et la gestion des serveurs sont essentiels. Un blocage total paralyserait les flux de travail informatiques et obligerait à refaire de nombreux processus internes.
De plus, du point de vue de l'attaquant, il existe plusieurs façons de contourner une simple politique de blocageIl existe des techniques pour charger le moteur PowerShell à partir de bibliothèques (dll) à l'aide de rundll32, convertir des scripts en exécutables avec des outils comme PS2EXE, utiliser des copies modifiées de PowerShell.exe, ou même intégrer des scripts PowerShell dans des images PNG et les exécuter avec des lignes de commande obfusquées.
Un phénomène similaire se produit avec les macros Office : De nombreuses entreprises en dépendent. pour automatiser les rapports, les calculs et les processus métier. Leur désactivation globale peut perturber le fonctionnement des applications internes, tandis que le recours exclusif à l'analyse statique du code VBA entraîne souvent un taux de faux positifs et de faux négatifs difficile à gérer.
De plus, certaines approches basées sur service de détection basé sur le cloud Ils nécessitent une connexion permanente et, parfois, leur délai d'exécution est trop long pour empêcher l'exécution initiale du logiciel malveillant. Si la décision de blocage est prise quelques secondes ou minutes plus tard, les dégâts peuvent déjà être irréversibles.
Changement de perspective : des fichiers aux comportements
Le fichier n'étant plus l'élément principal, les solutions de défense modernes se concentrent sur surveiller le comportement des processus Au lieu de se contenter d'inspecter le contenu des fichiers, l'idée est que, malgré l'existence de milliers de variantes de logiciels malveillants, les modes opératoires sont beaucoup moins diversifiés.
Cette approche repose sur des moteurs de analyse comportementale et apprentissage automatique qui surveillent en permanence l'activité de chaque processus : les commandes qu'il lance, les ressources système qu'il utilise, sa communication avec le monde extérieur et les modifications qu'il tente d'introduire dans l'environnement.
Par exemple, un processus Office peut être signalé comme suspect si exécute une commande PowerShell obfusquée avec des paramètres permettant de désactiver les politiques de sécurité et de télécharger du code depuis un domaine suspect. Ou encore un processus qui, sans raison apparente, accède soudainement à des centaines de fichiers sensibles ou modifie des clés de registre critiques.
La dernière génération de systèmes EDR et de plateformes XDR collecte Télémétrie détaillée des terminaux, des serveurs et du réseauet sont capables de reconstituer des récits complets (parfois appelés StoryLines) de la façon dont un incident s'est produit, des processus impliqués et des modifications subies par la machine affectée.
Un bon moteur comportemental ne se contente pas de détecter la menace, mais peut aussi… atténuer ou inverser automatiquement les actions malveillantes: arrêter les processus concernés, isoler l'ordinateur, restaurer les fichiers chiffrés, annuler les modifications apportées au Registre et couper les communications avec les domaines de commande et de contrôle.
Technologies et sources des événements clés dans Windows
Pour analyser les menaces sans fichier sous Windows, il est particulièrement utile de tirer parti de mécanismes de télémétrie natifs du système d'exploitationqui existent déjà et qui offrent de nombreuses informations sur ce qui se passe en coulisses.
D'un côté est Suivi d'événements pour Windows (ETW)ETW est un framework permettant l'enregistrement d'événements très détaillés liés à l'exécution des processus, aux appels d'API, aux accès mémoire et à d'autres aspects internes du système. De nombreuses solutions EDR s'appuient sur ETW pour détecter les comportements atypiques en temps réel.
Un autre élément clé est Interface de scan anti-programme malveillant (AMSI)AMSI est une API conçue par Microsoft pour permettre aux moteurs de sécurité d'inspecter les scripts et le contenu dynamique juste avant leur exécution, même s'ils sont obfusqués. AMSI est particulièrement utile avec PowerShell, VBScript, JScript et d'autres langages de script.
De plus, les moteurs modernes sont analysés périodiquement. zones sensibles telles que le Registre, le Planificateur de tâches, les abonnements WMI ou les stratégies d'exécution de scriptsDes modifications suspectes dans ces zones sont souvent le signe qu'une attaque sans fichier a réussi à s'établir durablement.
Tout ceci est complété par des heuristiques qui prennent en compte non seulement le processus actuel, mais aussi le contexte d'exécution: d'où provient le processus parent, quelle activité réseau a été observée avant et après, s'il y a eu des défaillances étranges, des blocages anormaux ou d'autres signaux qui, mis ensemble, font pencher la balance du côté de la suspicion.
Stratégies pratiques de détection et de prévention
En pratique, se protéger de ces menaces implique de combiner technologie, processus et formationIl ne suffit pas d'installer un antivirus et de l'oublier ; une stratégie multicouche adaptée au comportement réel des logiciels malveillants sans fichier est nécessaire.
Sur le plan technique, il est essentiel de déployer Solutions EDR ou XDR Dotés de capacités d'analyse comportementale et d'une visibilité au niveau des processus, ces outils doivent pouvoir enregistrer et corréler l'activité en temps réel, bloquer les comportements anormaux et fournir des informations médico-légales claires à l'équipe de sécurité.
C'est aussi pratique Limiter l'utilisation de PowerShell, WMI et autres interpréteurs à ce qui est strictement nécessaire, en appliquant des listes de contrôle d'accès, la signature de scripts (signature de code) et des politiques d'exécution qui limitent le code pouvant s'exécuter et avec quels privilèges.
Du côté de l'utilisateur, la formation reste cruciale : il est nécessaire de renforcer sensibilisation au phishing, aux liens suspects et aux documents inattendusCeci est particulièrement important pour le personnel ayant accès à des informations sensibles ou disposant de privilèges élevés. Réduire le nombre de clics involontaires diminue considérablement la surface d'attaque.
Enfin, on ne peut négliger le cycle de mise à jour des correctifs et des logicielsDe nombreuses attaques sans fichier exploitent des vulnérabilités connues pour lesquelles des correctifs existent déjà. Maintenir à jour les navigateurs, les plugins, les applications d'entreprise et les systèmes d'exploitation permet de limiter les risques pour les attaquants.
Services gérés et chasse aux menaces
Dans les moyennes et grandes entreprises, où le nombre d'événements est considérable, il est difficile pour l'équipe interne de tout appréhender. C'est pourquoi ces solutions gagnent en popularité. services de surveillance et de réponse gérée (MDR/EMDR) et centres d'opérations de sécurité externes (SOC).
Ces services associent une technologie de pointe à Des équipes d'analystes assurent une surveillance 24h/24 et 7j/7. L'objectif est d'analyser l'environnement de leurs clients et de corréler des signaux faibles qui passeraient autrement inaperçus. Il s'agit de détecter les comportements typiques des logiciels malveillants sans fichier avant que des dommages ne surviennent.
De nombreux SOC s'appuient sur des frameworks tels que MITRE ATT & CK cataloguer les tactiques, techniques et procédures (TTP) des adversaires et élaborer des règles spécifiques orientées vers l'exécution en mémoire, l'abus de LoLBins, le WMI malveillant ou les modèles d'exfiltration de données furtifs.
Outre la surveillance continue, ces services comprennent généralement analyse forensique, intervention en cas d'incident et conseil améliorer l'architecture de sécurité, combler les lacunes récurrentes et renforcer les contrôles sur les terminaux et les serveurs.
Pour de nombreuses entreprises, externaliser une partie de cette fonction est la solution la plus viable pour faire face à des menaces aussi complexes, car tout le monde ne peut pas se permettre une équipe interne spécialisée dans la traque des logiciels malveillants avancés.
La réalité est que les logiciels malveillants sans fichier ont changé à jamais notre façon de comprendre la sécurité des terminaux : Les fichiers ne sont plus le seul indicateur cléSeule une combinaison de visibilité approfondie, d'analyse comportementale, de bonnes pratiques de gestion et d'une culture de cybersécurité étendue peut permettre de la contenir au quotidien.

