
Dropper C++ auto-iniettante basato su varie tecniche di evasione EDR.
Questo progetto consiste in un semplice dropper C++ auto-iniettante focalizzato su un POC di evasione EDR. Per implementarlo, ho combinato l'uso del Windows Thread Pooling per nascondere il call stack e l'uso delle indirect syscalls per evitare l'hooking nella NTDLL.
2023-10-08-23-22-35-Trim
image
image
image
image
Come si può vedere nelle immagini, il codice Cordyceps esegue un salto a ntdll per utilizzare una delle istruzioni syscall. Questa dovrebbe essere considerata un'azione dannosa; tuttavia, quando si esegue il ritorno in ntdll, si torna al codice di tpWorker, che si trova all'interno di ntdll. Pertanto, dal punto di vista dell'antivirus (AV), ntdll sembrerebbe effettuare una chiamata a un'altra parte di ntdll, cosa che non è considerata dannosa.
nasm -f win64 .\Assembly.asm -o .\Assembly.obj
g++ -o poc.exe main.cpp Assembly.obj