
Dropper C++ com auto-injeção baseado em várias técnicas de evasão de EDR.
Este projeto consiste em um dropper simples de autoinjeção em C++ focado em POC de evasão de EDR. Para implementá-lo, combinei o uso de Windows Thread Pooling para ocultar a call stack e o uso de indirect syscalls para evitar o hooking no NTDLL.
2023-10-08-23-22-35-Trim
imagem
imagem
imagem
imagem
Como pode ser visto nas imagens, a partir do código do Cordyceps, ele realiza um salto para ntdll para utilizar uma das instruções de syscall. Isso deve ser considerado uma ação maliciosa; no entanto, ao executar o retorno em ntdll, voltamos para o código de tpWorker, que está localizado dentro de ntdll. Assim, do ponto de vista do antivírus (AV), ntdll pareceria estar fazendo uma chamada para outra parte de ntdll, o que não é considerado malicioso.
nasm -f win64 .\Assembly.asm -o .\Assembly.obj
g++ -o poc.exe main.cpp Assembly.obj