Dans le paysage actuel de la cybersécurité, les attaquants ne cessent de diversifier leurs méthodes pour contourner les systèmes de défense et compromettre les infrastructures. Parmi les techniques de plus en plus utilisées, l'exploitation malveillante des fichiers .cab est une approche qui suscite une attention croissante. Ces fichiers, initialement conçus pour la compression et la distribution de données, sont souvent perçus comme inoffensifs par les utilisateurs et les solutions de sécurité. Cependant, leur potentiel de dissimulation de logiciels malveillants est aujourd'hui bien exploité par les cybercriminels.
Un exemple marquant de l'exploitation des fichiers CAB est une attaque impliquant le ransomware Loki en 2020 (source). Dans ce cas, le fichier CAB a été envoyé en pièce jointe dans des emails de phishing. Lors de l'extraction, le fichier déployait le ransomware Loki, qui chiffrait les données de la victime et exigeait une rançon.
Plus récemment, en 2024, une autre attaque déployant un malware bien connu, DarkGate, impliquait de nouveau un fichier CAB (source). Cela montre bien que les fichiers CAB continuent d’être un vecteur efficace pour contourner les solutions de sécurité et déployer des charges malveillantes. Il devient essentiel d'étudier et de comprendre ce vecteur d'attaque afin de mieux se préparer à l'évolution des techniques des cybercriminels.
Dans cet article, nous allons étudier ce qu'est un fichier CAB, son utilisation dans les cyberattaques et, enfin, comment il est possible d'analyser et de détecter ce vecteur d'attaque.
Un fichier CAB (ou Cabinet) est un fichier d'archivage (similaire à un ZIP) qui porte l'extension .cab. Il permet de compresser des fichiers.
Un fichier CAB est spécifique à Microsoft, contrairement à un fichier ZIP qui peut être utilisé sur n'importe quel OS. Ce format d'archive est constitué :
Schéma de la structure d’un fichier .CAB
Ce format a été inventé pour compresser des fichiers d'installation qui seront ensuite utilisés sur le système de l'utilisateur, comme lors de l'installation de programmes ou de mises à jour. Pour être concret, Microsoft publie les mises à jour de sécurité et les correctifs au format CAB. C'est aussi sous ce format que votre ordinateur reçoit les mises à jour des serveurs depuis Microsoft Update Servers ou WSUS.
Le format CAB utilise souvent l'algorithme de compression LZX, qui permet de réduire la taille sans perte de données. Cette compression rend les installations plus rapides et plus efficaces, car les fichiers sont plus petits et plus faciles à transférer.
Un fichier CAB peut être divisé en plusieurs parties si les fichiers sont trop volumineux. Cette division permet de répartir les données sur plusieurs fichiers CAB, ce qui facilite la gestion des grandes mises à jour ou des installations complexes.
Il faut bien noté que les fichiers CAB ne sont pas les seuls a être détournés de leur utilisation primaire. En effet, d'autres fichiers connexes peuvent être exploités ou vulnérables, comme des fichiers de configurations (.ddf ...) ou l'algorithme de compression LZX. Seulement, il s'agit d'autres exploitation qui ne feront pas l'objet d'une analyse dans cet article.
Les fichiers d'archive CAB peuvent être exploités lors de cyberattaques, notamment comme moyens d’évasion des systèmes de défense ou pendant la collecte de données volées. En soi, une archive CAB n'est pas malveillante, mais elle peut contenir un logiciel malveillant qui sera ensuite exécuté au moment de la décompression. Ce processus de compression permet de masquer la véritable nature d’un fichier malveillant, rendant sa détection difficile pour les solutions de protection. Cela constitue une technique d’évasion efficace. Concernant la collecte de données, il a été observé que les fichiers CAB sont parfois utilisés pour réduire la taille des informations volées, facilitant ainsi leur exfiltration.
Dans le cadre de la Kill Chain des cyberattaques, les fichiers CAB sont directement impliqués lors des étapes suivantes :
Étapes de la Unified Cyber Kill Chain où les fichiers .CAB peuvent être utilisés
Nous allons examiner des cas d’utilisation plus spécifiques et récurrents des fichiers CAB dans le cadre d’attaques.
Les fichiers CAB peuvent être déposés lors de campagnes de phishing en pièce jointe. Leur utilisation, par rapport à des archives ZIP, permet de mieux contourner les filtres anti-spam car ce format est beaucoup moins souvent employé. De plus, en compressant le véritable fichier malveillant, les filtres anti-spam auront du mal à détecter la menace dans les emails.
Les fichiers CAB ont souvent un rôle de Dropper. Après le dépôt du fichier CAB par mail de phishing (ou autre) la charge malveillante contenue est à son tour déposée sur le système victime, lors de l'extraction. Plusieurs, méthodes d'extractions existent :
Les attaquants peuvent exploiter des vulnérabilités de type Path Traversal lors de l'extraction d'un fichier CAB, permettant ainsi de déposer la charge malveillante dans un dossier accessible par l'attaquant.
La compression des fichiers à l’intérieur d’une archive CAB rend difficile la détection de fichiers malveillants, en cachant leur véritable nature aux yeux des différentes solution de protection.
Les fichiers CAB peuvent être utilisés pour compresser les données volées, réduisant ainsi leur volume et facilitant leur exfiltration.
La Matrice MITRE ATT&CK a répertorié des utilisations concrètes des fichiers CAB par des groupes APT ou comme technique d'attaque TTP. Voici un tableau qui résume ces TTP et des logiciels impliquant des fichiers CAB ainsi que des groupes liés et connus pour les avoir utilisé.
Techniques | Softwares | Groups |
---|---|---|
T1140 - Désobfusquer/décoder des fichiers ou des informations | L'outil BBSRAT utilise Expand pour décompresser un fichier CAB en contenu exécutable L'outil natif Expand peut être utilisé pour décompresser un fichier CAB local ou distant en un exécutable | Les groupes APT39 et Earth Lusca ont déjà utilisé un maliciel pour décrypter les fichiers CAB cryptés |
T1560 Archiver les données collectées | Le logiciel Cadelspy a la capacité de compresser les données volées dans un fichier .cab | / |
T1070.006 Suppression de l'indicateur : Horodatage | L'outil Elise effectue l'horodatage d'un fichier CAB qu'il crée | / |
T0807 Interface de ligne de commande | L'outil Stuxnet stocke et exécute le code SQL qui extraira et exécutera Stuxnet à partir du fichier CAB enregistré à l'aide de xp_cmdshell avec la commande suivante : set @s = master..xp _ cmdshell extrac32 /y +@t+ +@t+x; exec(@s); | / |
T1560.001 Données collectées par l'archive : Archive via Utilitaire | / | APT41 a utilisé l'outil de création de fichier CAB natif de Windows makecab.exe pour télécharger des outils, tels que NATBypass, sur le réseau de la victime et pour archiver un fichier en vue de son exfiltrationMuddyWater a utilisé makecab.exe pour compresser les données voléesPendant les Operation CuckooBees, les attaquants ont utilisé l'utilitaire makecab.exe et WinRAR pour compresser les données volées et créer des archives protégées par mot de passe avant l'exfiltration |
Dans la nature
Les fichiers CAB ne sont pas encore couramment utilisés, bien que certains groupes d'attaquants commencent à les exploiter, notamment lors de la phase de déploiement des charges malveillantes. En effet, on observe un changement de comportement chez certains de ces groupes, qui privilégient de plus en plus les formats de fichiers CAB et MSI au détriment des formats plus classiques tels que ZIP, VBS ou LNK. Bien que leur utilisation reste minoritaire, ce phénomène mérite d’être signalé.
Comportements observés :
Sur Malware Bazaar, de nombreux échantillons de fichier CAB sont disponibles, la plupart contiennent des RAT ou des loader. Une large majorité ont été récupérés via des emails de phishing. Voici une liste des principaux malwares extraits (ordre alphabétique) :
Pour prendre des cas plus concrets voici plusieurs articles relayant des attaques impliquant l'utilisation de fichiers CAB pour déposer leurs charges malveillantes :
Malware | Distribution | Utilité | Extraction |
---|---|---|---|
Loki | PJ d'un mail de Phishing | Dropper de Loki | Extrait par l'utilisateur (double-clique) |
Crypt888 | N/A | Dropper | Extrait par l'attaquant avec wusa.exe avec le paramètre /extract |
Festive Facade | Dépôt par un script JS décodé par CertUtil.exe | Dropper | Extrait par expand.exe par l'attaquant |
RedHotel / Earth Lusca | N/A | Dropper | Extrait par expand.exe par l'attaquant |
DarkGate | Téléchargement via un URL de phishing contenu dans un PDF malveillant | Dropper | N/A |
Latrodectus | PJ d'un mail de Phishing : .cab intégré dans un MSI | Dropper | API “Installer.InstallProduct” qui ouvre le sefl-extracting .cab |
Xirtem Worm | mail de Phishing, USB ... | Dropper | Extrait par l'utilisateur (double-clique) |
RollMid | N/A | Dissimule la charge malveillante avec la compression .CAB | N/A |
Nous allons entrer plus en détails sur l'attaque Festive Facade qui n'utilise pas une méthode de dépôt classique.
Ici, le fichier .cab n'est pas déposé via la première étape de l'attaque qui est le mail de phishing. Ce dernier va plutôt déposer une archive .zip qui contient un fichier .lnk déguisé en image qui va lui même exécuté un script JS.
Concentrons nous maintenant sur la zone rouge (ci-dessous). Ce script JS a pour but de télécharger un certificat malveillant qui, grâce à l'outil natif Windows Certutil.exe, est décodé et dépose le fameux fichier .cab qui nous intéresse.
Le fichier .cab malveillant est extrait pat l'outil Expand de Windows via un script de l'attaquant. Ce fichier .cab contenait l'exécutable malveillant qui va pouvoir finalement agir sur la machine victime.
Schéma de l'attaque Festive Facade impliquant un fichier CAB
Il est bien visible qu'il existe de nombreuses possibilités de méthode de dépôt de fichier .cab. Il suffit juste aux attaquants d'avoir de l'imagination.
Pour analyser des fichier CAB il est possible d'utiliser des outils en ligne classiques comme VirusTotal, JoeSandBox et autres outils d'analyses dynamiques.
Concernant les outils natifs ou utilisables en local via des lignes de commandes, voici une liste qui sera détaillée ci-dessous. Ces outils permettent d’analyser le contenu des fichiers CAB sans les décompresser automatiquement.
sur Linux :
sur Windows :
Il s’agit de l’outil surement le plus utilisé pour analyser les fichier CAB. Il est facile a installé et à utiliser.
Plus d'options sont disponibles
GitHub - twogood/unshield: Tool and library to extract CAB files from InstallShield installers
Attention : cet outil ne fonctionne que s'il s'agit d'un fichier CAB InstallShield (aka windows Installer)
Plus d'options sont disponibles
Il s'agit d'un outil natif sous Windows qui permet de manipuler les fichiers CAB sans forcément les décompresser.
expand -d file.cab # liste les fichiers sans extraire
expand file.cab # extrait les fichiers
Plus d'options sont disponibles peut ausi s'écrire
c:\windows\system32\expand.exe
ouexpand.exe
Attention : la méthode est vulnérable à du Path Traversal (CVE-2023-36756) via ParseCab() > OpenCabinetFile() voir l'article
extrac32 /D file.cab <filename> # affiche le répertoire du fichier CAB (à utiliser avec <filename> pour éviter l’extraction)
extrac32 file.cab # extrait les fichiers
Plus d'options sont disponibles peut ausi s'écrire
c:\windows\system32\extrac32
ouextrac32.exe
D'autres méthodes d'extractions ont déjà été vu même si elles sont plus ou moins utilisées et que certaines nécessite une version de l'OS assez ancienne. Pour essayer d'être le plus exhaustif possible voici une liste de ces outils que vous rencontrerez ou utiliserez peut être lors d’investigations:
Pour détecter ce type d'attaque via les fichiers CAB, les outils anti-spam peuvent les détecter s'ils ont une politique adaptée. Un outil de protection comme un anti-virus ou un EPP/EDR peut détecter des fichiers CAB suspects. Il est aussi possible de mettre en place des signatures qui vont détecter un comportement spécifique comme l’exécution d'une ligne de commande typique de l'extraction d'un fichier CAB. Néanmoins, ces règles peuvent remonter de nombreux Faux Positifs car les fichiers CAB restent largement utilisé de façon légitime par Windows.
Voici quelques exemples de règles détection des outils mentionnés précédemment :
Il s'agit d'exemples, de nombreuses autres règles peuvent être créées de façon spécifique à chaque Système.
Cabinet File Functions - Windows drivers Fichiers CAB - Win32 apps https://www.cisa.gov/sites/default/files/2023-11/MAR-10478915.r1.v1.CLEAR_.pdf Inside DarkGate: Exploring the infection chain and capabilities Enter The Gates: An Analysis of the DarkGate AutoIt Loader | Splunk Beyond Memory Corruption Vulnerabilities – A Security Extinction and Future of Exploitation Zero Day Initiative — CVE-2020-1300: Remote Code Execution Through Microsoft Windows CAB Files Zero Day Initiative — Exploiting Exchange PowerShell After ProxyNotShell: Part 2 - ApprovedApplicationCollection Loki Delivered as CAB File Attachment
Attaque en sandbox impliquant un fichier CAB :
Malware analysis cw1.exe Malicious activity | ANY.RUN - Malware Sandbox Online
📝 Écrit par Neige Jumeau, Ingénieure Analyse et Forensics
Restez informé de toutes les actus cyber & AISI.