Hacking C# from the inside
summary
Claims concrete techniques: emit x86 machine code into byte[] and call it via Marshal.GetDelegateForFunctionPointer after VirtualProtect, modify JITed method pointers or MethodDesc to hijack methods in place, install VEH to catch StackOverflow and resume, implement awaiting for async void via custom SynchronizationContext/task scheduler, morph object headers to serialize a non-serializable child and fake multiple inheritance by reinterpret-casting fields. Demos run on x86 Windows/Linux, some hacks ship in production tooling and the examples shown actually work.
AI-written summary · about
chapters (19)
- 0:00Start
- 2:50Agenda
- 3:49Avoiding Dynamic Dispatch
- 5:07Method Descriptor
- 7:13Lambda Expression
- 9:30Await Async Void Methods
- 10:51Internals of Asyncing Net
- 11:08Implement Our Custom Task Scheduler
- 11:42Create a Custom Synchronization Context
- 13:14Restore the Original Synchronization Context
- 14:21Run Machine Code from a Byte Array
- 18:11Write Machine Code
- 38:09Handle Stack Overflow Exceptions in C Sharp
- 38:24Why Would We Ever Try To Handle Stack Overflow Exception
- 45:10Multiple Inheritance
- 53:56Practical Usage
- 55:28Can some of Your Examples Be Run on Linux
- 57:12Manual Memory Management Session
- 1:02:46Gold Sponsor
related talks
02h 18mHacking C# from the inside - how to do anything in .NET
56mHacking .NET(C#) Applications: The Black Arts (ASM attacks)
50m.NET Reversing and Exploitation for Cool Kids
01h 06mHow hacking works
50mWrite Once, Pwn Anywhere
45m"Advanced Malware Threat: handling obfuscated code using..."
55mHow hacking works
01h 00mHacking and Securing C++
