Register to stream ATT&CKcon 2.0 October 29-30

Regsvcs/Regasm

Regsvcs and Regasm are Windows command-line utilities that are used to register .NET Component Object Model (COM) assemblies. Both are digitally signed by Microsoft. [1] [2]

Adversaries can use Regsvcs and Regasm to proxy execution of code through a trusted Windows utility. Both utilities may be used to bypass process whitelisting through use of attributes within the binary to specify code that should be run before registration or unregistration: [ComRegisterFunction] or [ComUnregisterFunction] respectively. The code with the registration and unregistration attributes will be executed even if the process is run under insufficient privileges and fails to execute. [3]

ID: T1121
Tactic: Defense Evasion, Execution
Platform: Windows
Permissions Required: User, Administrator
Data Sources: Process monitoring, Process command-line parameters
Defense Bypassed: Process whitelisting, Digital Certificate Validation
Contributors: Casey Smith
Version: 1.1

Mitigations

Mitigation Description
Disable or Remove Feature or Program Regsvcs and Regasm may not be necessary within a given environment.
Execution Prevention Block execution of Regsvcs.exe and Regasm.exe if they are not required for a given system or network to prevent potential misuse by adversaries.

Detection

Use process monitoring to monitor the execution and arguments of Regsvcs.exe and Regasm.exe. Compare recent invocations of Regsvcs.exe and Regasm.exe with prior history of known good arguments and executed binaries to determine anomalous and potentially adversarial activity. Command arguments used before and after Regsvcs.exe or Regasm.exe invocation may also be useful in determining the origin and purpose of the binary being executed.

References

  1. Smith, C. (2016, August 17). Includes 5 Known Application Whitelisting/ Application Control Bypass Techniques in One File. Retrieved June 30, 2017.