~/Privilege Escalation/Windows/Binaries# cat coregen.exe.md

Binary coregen.exe (Microsoft CoreCLR Native Image Generator) loads exported function GetCLRRuntimeHost from coreclr.dll or from .DLL in arbitrary path. Coregen is located within “C:\Program Files (x86)\Microsoft Silverlight\5.1.50918.0” or another version of Silverlight. Coregen is signed by Microsoft and bundled with Microsoft Silverlight.

Paths:

C:\Program Files\Microsoft Silverlight\5.1.50918.0\coregen.exe
C:\Program Files (x86)\Microsoft Silverlight\5.1.50918.0\coregen.exe

Detection:

coregen.exe loading .dll file not in “C:\Program Files (x86)\Microsoft Silverlight\5.1.50918.0“ coregen.exe loading .dll file not named coreclr.dll coregen.exe command line containing -L or -l coregen.exe command line containing unexpected/invald assembly name coregen.exe application crash by invalid assembly name

Execute

Loads the target .DLL in arbitrary path specified with /L.

coregon.exe.exe /L C:\folder\evil.dll dummy_assembly_name

Loads the coreclr.dll in the corgen.exe directory (e.g. C:\Program Files\Microsoft Silverlight\5.1.50918.0).

coregen.exe dummy_assembly_name

AWL bypass

Loads the target .DLL in arbitrary path specified with /L. Since binary is signed it can also be used to bypass application whitelisting solutions.

coregen.exe /L C:\folder\evil.dll dummy_assembly_name