One Day Sec

What are the two main unmanaged interfaces for hosting the CLR, and what .NET versions do they support?

The two main interfaces are `ICorRuntimeHost` (supports .NET v1.0–v4.0) and `ICLRRuntimeHost` (supports v2.0 and v4.0). In modern exploitation, `ICLRRuntimeHost` is preferred because it is the replacement for `ICorRuntimeHost` starting in .NET Framework 2.0 and is simpler to use. Both are accessed via `ICLRRuntimeInfo::GetInterface` after obtaining a valid runtime pointer, as shown in the normal implementation code in the article.
ICorRuntimeHostICLRRuntimeHost.NET versionCLR runtime hosting

Browse all Q&A →