CVE-2012-1854 Elastic Security · Elastic

Detect CVE-2012-1854 - Microsoft VBA Insecure Library Loading (DLL Hijacking) in Elastic Security

Detects exploitation of CVE-2012-1854, a DLL hijacking vulnerability in Microsoft Visual Basic for Applications (VBA). Attackers can place a malicious DLL in a directory searched before the legitimate library path, causing Office applications loading VBA to execute attacker-controlled code. This vulnerability is listed in CISA's Known Exploited Vulnerabilities catalog.

MITRE ATT&CK

Tactic
Execution Persistence Privilege Escalation

Elastic Detection Query

Elastic Security (Elastic)
eql
library where
  process.name in~ ("WINWORD.EXE", "EXCEL.EXE", "POWERPNT.EXE", "OUTLOOK.EXE", "MSACCESS.EXE", "MSPUB.EXE", "VISIO.EXE") and
  dll.name in~ ("vbe7.dll", "vba7.dll", "vbe6.dll", "vba6.dll", "msvbvm60.dll", "msvbvm50.dll") and
  (
    dll.path like~ "*\\Users\\*" or
    dll.path like~ "*\\AppData\\*" or
    dll.path like~ "*\\Temp\\*" or
    dll.path like~ "*\\Downloads\\*" or
    dll.path like~ "*\\Desktop\\*"
  )
high severity high confidence

EQL query detecting VBA DLL hijacking by identifying Office process library loads of VBA-related DLLs from user-writable paths, a hallmark of CVE-2012-1854 exploitation.

Data Sources

Elastic Endpoint SecurityElastic SIEM

Required Tables

logs-endpoint.events.library-*

False Positives & Tuning

  • Development builds of Office applications deployed to non-standard directories
  • Automated testing frameworks loading Office components from scratch directories
  • Legitimate use of portable Office suites
  • Security research environments with intentional non-standard DLL placement

Other platforms for CVE-2012-1854


Testing Methodology

Validate this detection against 3 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.

  1. Test 1VBA DLL Hijack - Place Malicious DLL in Temp Directory

    Expected signal: Sysmon Event ID 7 showing WINWORD.EXE loading vbe7.dll from %TEMP% path; DeviceImageLoadEvents in MDE showing FolderPath containing \Temp\

  2. Test 2VBA DLL Hijack - Place Malicious DLL in Downloads Directory

    Expected signal: Sysmon ImageLoad event with ImageLoaded path in \Downloads\; Windows Security log showing file creation event in Downloads directory followed by Office process DLL load

  3. Test 3VBA DLL Hijack - Simulate Document-Triggered DLL Load via PowerShell

    Expected signal: Sysmon Event ID 7 with POWERPNT.EXE as initiating process and vba7.dll loaded from TEMP\vba_hijack_test path; process creation event showing PowerShell as parent of POWERPNT

Unlock Pro Content

Get the full detection package for CVE-2012-1854 including response playbook, investigation guide, and atomic red team tests.

Response PlaybookInvestigation GuideHunting QueriesAtomic Red Team TestsTuning Guidance

Related Detections