Adam Furmanek
Hacking C# from the inside - how to do anything in NET
#1about 6 minutes
Bypassing dynamic dispatch for static method invocation
Learn how to statically control which virtual method implementation to run by generating intermediate language (IL) with the `call` instruction instead of `callvirt`.
#2about 4 minutes
How to await async void methods in C#
Implement a custom `SynchronizationContext` and `TaskScheduler` to enable awaiting `async void` methods and properly handle their exceptions.
#3about 14 minutes
Executing raw machine code from a byte array
Explore how to execute raw x86 machine code stored in a byte array by changing memory page protections and using `Marshall.GetDelegateForFunctionPointer`.
#4about 4 minutes
Hijacking .NET methods at runtime
Discover two techniques for method hijacking: modifying the method descriptor's function pointer or overwriting the method's machine code with a jump instruction.
#5about 6 minutes
A practical use case for method hijacking
Apply method hijacking to the `Process.Start` API by intercepting a constructor to run an application on a different virtual desktop, a feature not exposed by default.
#6about 2 minutes
Intercepting and handling unhandled thread exceptions
Prevent application crashes from unhandled exceptions on new threads by hijacking the `Thread` constructor to wrap the original delegate in a try-catch block.
#7about 4 minutes
How to safely handle a StackOverflowException
Use a vectored exception handler from the WinAPI combined with a setjmp/longjmp approach to catch a `StackOverflowException` and allow the application to continue safely.
Related jobs
Jobs that call for the skills explored in this talk.
Matching moments
04:19 MIN
A live demo of a typosquatting attack in .NET
How your .NET software supply chain is open to attack : and how to fix it
Unlock Moments
Create a free account to watch a limited number of Moments each month.
Upgrade to PRO for unlimited access to the full archive.
Upgrade to PRO for unlimited access to the full archive.
You have an account? Log in
04:09 MIN
Introduction to developer-first security and CTFs
Capture the Flag 101
Unlock Moments
Create a free account to watch a limited number of Moments each month.
Upgrade to PRO for unlimited access to the full archive.
Upgrade to PRO for unlimited access to the full archive.
You have an account? Log in
01:57 MIN
Presenting live web scraping demos at a developer conference
Tech with Tim at WeAreDevelopers World Congress 2024
Unlock Moments
Create a free account to watch a limited number of Moments each month.
Upgrade to PRO for unlimited access to the full archive.
Upgrade to PRO for unlimited access to the full archive.
You have an account? Log in
04:13 MIN
Q&A: SynchronizationContext, tooling, and challenges
Asynchronicity and multithreading in C#
Unlock Moments
Create a free account to watch a limited number of Moments each month.
Upgrade to PRO for unlimited access to the full archive.
Upgrade to PRO for unlimited access to the full archive.
You have an account? Log in
01:51 MIN
A developer's journey through programming languages
Coffee with Developers - Martyn Kilbryde
Unlock Moments
Create a free account to watch a limited number of Moments each month.
Upgrade to PRO for unlimited access to the full archive.
Upgrade to PRO for unlimited access to the full archive.
You have an account? Log in
04:54 MIN
Why developers are a prime target for attackers
You click, you lose: a practical look at VSCode's security
Unlock Moments
Create a free account to watch a limited number of Moments each month.
Upgrade to PRO for unlimited access to the full archive.
Upgrade to PRO for unlimited access to the full archive.
You have an account? Log in
02:01 MIN
Using AI to write an exploit as a non-developer
Let’s write an exploit using AI
Unlock Moments
Create a free account to watch a limited number of Moments each month.
Upgrade to PRO for unlimited access to the full archive.
Upgrade to PRO for unlimited access to the full archive.
You have an account? Log in
02:35 MIN
Overview of modern C# community-loved features
Modern C#: A Dive into the Community's Most Loved new Features.
Unlock Moments
Create a free account to watch a limited number of Moments each month.
Upgrade to PRO for unlimited access to the full archive.
Upgrade to PRO for unlimited access to the full archive.
You have an account? Log in
Featured Partners
Related Videos
C# 13 Unleashed: Live Demos of my Top 10 Cutting-Edge Features!
Ambesh Singh & Sachin Kumar
Exploring the Latest Features of .NET and C# by Building a Game
Rainer Stropek
Building a Compiler with C#
Florian Rappl
Tips, tricks and quirks in .NET
Paweł Łukaszuk
5 features that help you get the most out of C# 10
Louëlla Creemers
Down the Oregon Trail with Functional C#
Simon Painter
Programming secure C#/.NET Applications: Dos & Don'ts
Sebastian Leuer
Turbocharged: Writing High-Performance C# and .NET Code
Steve Gordon
Related Articles
View all articles



From learning to earning
Jobs that call for the skills explored in this talk.






Experis


