Skip to content

Blasting Event-Driven Cornucopia: WMI-based User-Space Attacks Blind SIEMs and EDRs

Andrey GolchikovIgor KorkinClaudiu Teodorescu

Blue TeamBlack Hat USA 202239 minAdvancedOpen on YouTube ↗

Investigates blasting Event-Driven Cornucopia: WMI-based User-Space Attacks Blind SIEMs and EDRs and evaluates key implications for security practitioners.

Summary

Overview: Claudiu Teodorescu of Binarly explores the architectural underpinnings of Windows Management Instrumentation (WMI) and its role in enterprise monitoring. The presentation details how endpoint detection and response (EDR) and security information and event management (SIEM) platforms rely on WMI eventing and telemetry, creating a critical attack surface. Teodorescu demonstrates how manipulating user-space WMI components and repository structures can subvert detection and blind security telemetry.

Key Topics: - WMI architecture: Common Information Model (CIM), Web-Based Enterprise Management (WBEM), and providers - WMI eventing mechanisms: intrinsic vs. extrinsic events, event filters, and consumer bindings - Internal forensic structure of the CIM repository (OBJECTS.DATA, INDEX.BTR, and mapping files) - User-space attack surfaces and defensive telemetry validation using WMI Check and Memory Ranger

Technical Details: WMI is the Windows implementation of the WBEM and CIM open standards, natively embedded system-wide since Windows NT 4.0. The framework operates via COM interfaces connecting clients to over 4,000 built-in WMI providers in Windows 11, which run as COM-based DLLs in user mode or as kernel drivers. Providers are registered as instances of __Win32Provider with distinct CLSIDs and registry configurations. Telemetry is queried using WQL (WMI Query Language) and transmitted remotely over WinRM or DCOM, while the underlying service executes via winmgmt within the svchost.exe netsvcs group.

Event-driven execution in WMI leverages intrinsic events (such as polling for process creation like notepad.exe) and extrinsic events (such as monitoring Run key registry modifications). Attackers and system utilities establish permanent event subscriptions that persist across reboots by configuring three core components: an __EventFilter defining the WQL trigger query, an event consumer (such as CommandLineEventConsumer or an EventViewer consumer) specifying the action to execute, and an instance of __FilterToConsumerBinding linking the filter to the consumer.

The underlying storage engine, the CIM repository, consists of three primary file types: INDEX.BTR, OBJECTS.DATA, and .MAP mapping files. INDEX.BTR implements a B-tree storing index records in pages with logical page pointers. OBJECTS.DATA contains the raw class definitions, namespace metadata, and persistent WMI instances. The mapping files translate logical page numbers into physical disk offsets. Forensic parsing traverses namespaces, classes, and instance identifiers in the B-tree to resolve logical records, verifies record sizes, and maps them to physical pages. By analyzing vendor-specific namespaces such as Lenovo's root\WMI classes (Lenovo_BiosSetting, Lenovo_SetBiosPassword), Teodorescu demonstrates how missing instances and manipulated providers can blind monitoring tools that depend on WMI event subscriptions.

Key Takeaways: Security operations cannot treat WMI telemetry as inherently trustworthy without independent validation of the underlying repository and provider bindings. Defensive engineering should incorporate tools like WMI Check and Memory Ranger to audit COM provider DLLs and detect corrupted or malicious repository entries. Security teams must monitor __EventFilter, consumer classes, and __FilterToConsumerBinding registrations to intercept unauthorized permanent event subscriptions used for persistence and EDR evasion.

(AI summary — Gemini Flash)

Related talks