The Component Object Model (COM) is a Windows framework that allows software components to communicate and create dynamic objects. COM objects are often implemented as DLLs and registered in the Windows Registry with unique Class Identifiers (CLSID). Attackers manipulate COM registrations to execute malicious code whenever a COM object is instantiated, providing stealthy persistence.


Key Concepts


How Attackers Use It

image.png

Registry Modification Example

reg add "HKCU\\Software\\Classes\\CLSID\\{MaliciousCLSID}\\InProcServer32" /ve /t REG_SZ /d "C:\\malicious.dll" /f

This registers the attacker's DLL under a COM CLSID, granting persistence whenever the associated application runs.


Detection

Windows Event Logs

Sysmon Event IDs