Les fichiers CAB, un vecteur de plus en plus utilisé dans les cyberattaques

29 janvier 2025
9 min de lecture
Partagez l'article

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.

▪️ Mais qu'est-ce qu'un fichier CAB ?

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é :

  • d'un en-tête (CFHeader)
  • des fichiers (CFFile)
  • de dossiers contenant les fichiers (CFFolder)
  • de métadonnées (CFDATA)

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.

▪️Pourquoi c'est utilisé dans des attaques ?

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 :

  • Defense Evasion
  • Collection

É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.

Phishing

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.

Dropper

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 :

  • manuellement : clique droit > extraire
  • avec des outils : extrac32, expand, cab-cli, cabextract etc.
  • auto-extraction dans un fichier MSI

Path Traversal

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.

Masquerading

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.

Réduction d'espace

Les fichiers CAB peuvent être utilisés pour compresser les données volées, réduisant ainsi leur volume et facilitant leur exfiltration.

▪️ Qu'en est-il d'exemples concrets ?

Dans la Matrice MITRE ATT&CK

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é.

TechniquesSoftwaresGroups
T1140 - Désobfusquer/décoder des fichiers ou des informationsL'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écutableLes 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éesLe logiciel Cadelspy a la capacité de compresser les données volées dans un fichier .cab/
T1070.006 Suppression de l'indicateur : HorodatageL'outil Elise effectue l'horodatage d'un fichier CAB qu'il crée/
T0807 Interface de ligne de commandeL'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 :

  • Distribution : PJ de mail de phishing, lien URL dans un code malveillant ...
  • Dropper : RAT, loader, .DLL, vers informatiques ...
  • Extraction : outils natifs Windows

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) :

  • Agent Tesla
  • AveMariaRAT
  • Formbook
  • GuLoader
  • Loki
  • NetWire
  • RemcosRAT
  • SnakeKeyLogger

Pour prendre des cas plus concrets voici plusieurs articles relayant des attaques impliquant l'utilisation de fichiers CAB pour déposer leurs charges malveillantes :

MalwareDistributionUtilitéExtraction
LokiPJ d'un mail de PhishingDropper de LokiExtrait par l'utilisateur (double-clique)
Crypt888N/ADropperExtrait par l'attaquant avec wusa.exe avec le paramètre /extract
Festive FacadeDépôt par un script JS décodé par CertUtil.exeDropperExtrait par expand.exe par l'attaquant
RedHotel / Earth LuscaN/ADropperExtrait par expand.exe par l'attaquant
DarkGateTéléchargement via un URL de phishing contenu dans un PDF malveillantDropperN/A
LatrodectusPJ d'un mail de Phishing : .cab intégré dans un MSIDropperAPI “Installer.InstallProduct” qui ouvre le sefl-extracting .cab
Xirtem Wormmail de Phishing, USB ...DropperExtrait par l'utilisateur (double-clique)
RollMidN/ADissimule la charge malveillante avec la compression .CABN/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.

▪️ Quels sont les outils d'analyse ?

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 :

  • cabextract
  • unshield

sur Windows :

  • expand
  • extrac32

CabExtract

cabextract

Il s’agit de l’outil surement le plus utilisé pour analyser les fichier CAB. Il est facile a installé et à utiliser.

  • sudo apt install cabextract
  • cabextract name_of_cabinet.cab # extrait dans le répertoire actuel
  • cabextract name_of_cabinet.cab -f '*.docx' -d ~/temp # extrait uniquement les fichiers .docx (-f) et dans un dossier spécifié (-d)
  • cabextract -l name_of_cabinet.cab # énumère le nom des fichiers sans extraire !
  • cabextract -t name_of_cabinet.cab # test - fait le travail d'extraction sans enregistrer les fichiers + affiche le hash MD5 de chaque fichier

Plus d'options sont disponibles

Unshield

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)

  • sudo apt install unshield
  • unshield l name_of_cabinet.cab # liste les fichiers sans extraire
  • unshield t name_of_cabinet.cab # teste les fichiers sans extraire
  • unshield x name_of_cabinet.cab # extrait les fichiers

Plus d'options sont disponibles

Expand

expand

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 ou expand.exe

Extrac32

extract

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 ou extrac32.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:

▪️ Comment détecter ces fichiers ?

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.

▪️ Sources

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

Notre selection pour vous

Analyse d'un kit de phishing AiTM (Adversary-In-The-Middle) : Tycoon 2FA

Au cours des dernières semaines, l'équipe de Réponse à Incident d'AISI a traité plusieurs cas similaires d'attaques de phishing AiTM […]
18 décembre 2024
7 minutes de lecture

Article | CISCO, notre partenaire technologique

Spécialiste en cyber-sécurité chez Cisco, Remy Farkas présente trois solutions pour une sécurité intelligente qui optimise l’expérience utilisateur : sécurisation de la […]
1 avril 2022
3 minutes de lecture

Article | La cyber-assurance, un des moyens pour se prémunir des risques de cyber-attaque

La cybersécurité est classée au troisième rang par les experts et au second rang par le grand public des risques […]
15 janvier 2021
3 minutes de lecture

Restez informé de toutes les actus cyber & AISI.