Signed Binary Proxy Execution: Verclsid

Adversaries may abuse verclsid.exe to proxy execution of malicious code. Verclsid.exe is known as the Extension CLSID Verification Host and is responsible for verifying each shell extension before they are used by Windows Explorer or the Windows Shell.[1]

Adversaries may abuse verclsid.exe to execute malicious payloads. This may be achieved by running verclsid.exe /S /C {{CLSID}}, where the file is referenced by a Class ID (CLSID), a unique identification number used to identify COM objects. COM payloads executed by verclsid.exe may be able to perform various malicious actions, such as loading and executing COM scriptlets (SCT) from remote servers (similar to Regsvr32). Since it is signed and native on Windows systems, proxying execution via verclsid.exe may bypass application control solutions that do not account for its potential abuse.[2][3][4][5]

ID: T1218.012
Sub-technique of:  T1218
Tactic: Defense Evasion
Platforms: Windows
Permissions Required: User
Data Sources: File monitoring, Process command-line parameters, Process monitoring, Process use of network
Defense Bypassed: Application control, Digital Certificate Validation
Contributors: Rodrigo Garcia, Red Canary
Version: 1.0
Created: 10 August 2020
Last Modified: 19 August 2020

Procedure Examples

Name Description
Hancitor

Hancitor has used verclsid.exe to download and execute a malicious script.[3]

Mitigations

Mitigation Description
Disable or Remove Feature or Program

Consider removing verclsid.exe if it is not necessary within a given environment.

Execution Prevention

Use application control configured to block execution of verclsid.exe if it is not required for a given system or network to prevent potential misuse by adversaries.

Filter Network Traffic

Consider modifying host firewall rules to prevent egress traffic from verclsid.exe.

Detection

Use process monitoring to monitor the execution and arguments of verclsid.exe. Compare recent invocations of verclsid.exe with prior history of known good arguments and loaded files to determine anomalous and potentially adversarial activity. Command arguments used before and after the invocation of verclsid.exe may also be useful in determining the origin and purpose of the payload being executed. Depending on the environment, it may be unusual for verclsid.exe to have a parent process of a Microsoft Office product. It may also be unusual for verclsid.exe to have any child processes or to make network connections or file modifications.

References