Safeguard
Application Security•

Detecting and Mitigating COM Hijacking (T1546.015)

Hijacked COM registry references run attacker code in place of trusted components. See how it works, including TypeLib variants, and how to detect it.

Safeguard Security Team
2 min read

Component Object Model (COM) hijacking (MITRE ATT&CK T1546.015) is a Windows persistence technique. COM is the system that lets software components interact through the operating system, and references to COM objects are stored in the registry.

How attackers use it

MITRE describes replacing a reference to a legitimate component with one that points to adversary code. When normal system activity runs that component, the adversary's code runs in its place.

The registry change can stop the original component from working, so an adversary is likely to pick objects used often enough to give steady persistence but unlikely to cause visible failures. That is a clue for defenders: hijacks aim to stay quiet.

MITRE also describes a variation that abuses Type Libraries (TypeLibs), which hold metadata about COM objects such as their interfaces and methods. By editing TypeLib registry keys, an adversary can redirect functionality to scripts or payloads. Where classic hijacking commonly uses local DLLs, this variation may use the script: moniker to run remote scripts hosted on external servers. The remote payload is downloaded each time the hijacked object is accessed.

How to detect it

MITRE's strategy correlates registry changes with later loads:

  • Suspicious modifications to the registry entries of known COM object CLSIDs.
  • CLSID entries under HKEY_CURRENT_USER\Software\Classes\CLSID\ that override default HKLM paths.
  • DLL loads or binary execution that trace back to those changes.

The HKCU override is a good rule to build. Per-user CLSID entries are uncommon on managed machines, and any that shadow a system object deserve scrutiny.

How to reduce the risk

MITRE lists no mitigations for this technique. Controls that help in practice are limiting registry write access, application control that blocks unexpected DLLs, and egress filtering that stops script monikers from fetching remote content.

Check your own environment

A read-only check from a Windows command prompt:

reg query HKCU\Software\Classes\CLSID

Many machines show few or no entries. Each entry that appears should map to a known application. For a deeper view, collect Sysmon event IDs 12 to 14 for HKCU\Software\Classes and event ID 7 for image loads.

Quick check

Why check HKCU when looking for COM hijacks?

Per-user CLSID registrations under HKCU\Software\Classes\CLSID can override the system registration in HKLM, and they can be written without administrator rights.

Sources

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.