Aller au contenu

CVE-2012-1854 : chargement non sécurisé de librairie dans Microsoft VBA

La faille réside dans la manière dont VBE6.dll gère le chargement des librairies dynamiques. Lorsqu’une application Office initie une requête, elle cherche les librairies nécessaires dans des chemins définis par le répertoire de travail courant du processus. Si un attaquant place une DLL malveillante aux côtés d’un document (ex: .docx), l’application privilégie par erreur la DLL malveillante présente localement par rapport à la DLL légitime du système.

  1. Préparation : l’attaquant crée une DLL malveillante avec le même nom qu’une bibliothèque légitime attendue par le composant VBA.
  2. Livraison : l’attaquant incite la victime à ouvrir un répertoire contenant la DLL malveillante et un document Office apparemment inoffensif.
  3. Exécution : à l’ouverture du document, l’application initialise l’environnement VBA, tente de charger la DLL légitime, et exécute finalement le code malveillant présent dans la bibliothèque locale.
  1. Analyse des journaux : inspectez les journaux d’événements Windows pour l’événement ID 7 (Image chargée) où le chemin ImageLoaded est inhabituel (pas dans System32).
  2. Analyse des artefacts : identifiez toute DLL créée dans les répertoires utilisateurs (Téléchargements, Documents) correspondant aux horodatages d’accès aux documents Office.
  3. Surveillance des processus : analysez les relations père-fils où WINWORD.EXE ou EXCEL.EXE chargent des bibliothèques externes non signées.
  • Détection Sigma (Règle) : focus sur les événements ImageLoad avec des chemins non standards.
  • Threat Hunting (KQL) : DeviceImageLoadEvents | where FileName endswith "VBE6.dll" | where FolderPath !startswith "C:\\Windows\\System32"
  • Appliquez les correctifs de sécurité fournis par l’éditeur (MS12-046).
  • Mettez en œuvre des politiques de contrôle d’application strictes.
  • Désactivez les macros VBA via stratégie de groupe (GPO) si elles ne sont pas nécessaires pour les processus métier.