Registry-Free Process Scope COR_PROFILER

Last updated on:

About the rule

Rule Type

Standard

Rule Description

Adversaries may leverage the COR_PROFILER environment variable to hijack the execution flow of programs that load the .NET CLR. The COR_PROFILER is a .NET Framework feature which allows developers to specify an unmanaged (or external of .NET) profiling DLL to be loaded into each .NET process that loads the Common Language Runtime (CLR). These profiliers are designed to monitor, troubleshoot, and debug managed code executed by the .NET CLR. (Citation: Microsoft Profiling Mar 2017) (Citation: Microsoft COR_PROFILER Feb 2013)

Severity

Trouble

Rule Requirement

Criteria

Action1: actionname = "PowerShell Script Block Logged" AND SCRIPTEXECUTED contains "$env:COR_ENABLE_PROFILING" AND SCRIPTEXECUTED contains "$env:COR_PROFILER" AND SCRIPTEXECUTED contains "$env:COR_PROFILER_PATH" select Action1.HOSTNAME,Action1.MESSAGE,Action1.SCRIPTEXECUTED

Detection

Execution Mode

realtime

Log Sources

Windows

Author

frack113