Skip to content

Alexandre Borges - .NET Malware Threats: Internals And Reversing

Alexandre Borges

Deep-dives into .NET CLR internals to equip analysts with techniques for reversing obfuscated .NET malware families.

Summary

.NET Malware Internals

Alexandre Borges, malware researcher, delivers an in-depth technical session on analyzing modern .NET-based malware, covering CLR internals, obfuscation techniques, and dynamic analysis strategies.

CLR Architecture Fundamentals

The talk begins with the Common Language Runtime's execution model — MSIL compilation, JIT compilation, AppDomain isolation, and the managed heap — providing the foundational context for understanding how malware abuses these mechanisms.

Obfuscation Techniques

Borges catalogs common .NET obfuscation strategies: string encryption, control flow flattening, method name mangling, and anti-decompilation tricks targeting dnSpy and ILSpy. He demonstrates automated de-obfuscation using de4dot and custom MSIL patching.

Dynamic Analysis with CLR Profiler

Using the CLR Profiling API, analysts can hook JIT compilation events to capture de-obfuscated MSIL at runtime without static unpacking. Borges demonstrates this against real AgentTesla and AsyncRAT samples.

Related talks