恶棍
目的
恶棍是一个高级的0/1阶段命令与控制框架,可以处理多个TCP套接字和基于HoaxShell的反向shell,通过额外功能(命令、实用工具)增强它们的功能,并在连接的兄弟服务器(在不同机器上运行的恶棍实例)之间共享它们。
该框架的主要特点包括:
- 基于默认、可自定义和/或用户定义的payload模板(Windows和Linux)生成payload,
- 一个动态参与的伪shell提示符,可以在shell会话之间快速切换,
- 文件上传(通过http),
- 针对会话的自动http请求和执行脚本(有点不稳定),
- 对PowerShell反向shell会话自动调用ConPtyShell作为新进程,以获得完全交互式的Windows shell,
- 团队聊天,
- 会话防御者(一个检查用户发出的命令是否有错误/无意输入可能导致shell挂起的功能)。
视频演示
[2022-11-30] John Hammond在这个精彩的视频中展示了该工具 -> youtube.com/watch?v=pTUggbSCqA0
[2023-03-30] 我制作的2.0.0版本发布演示 -> youtube.com/watch?v=NqZEmBsLCvQ
:exclamation: 免责声明 |
---|
这个项目正在积极开发中。每次发布都可能有重大变更。 |
未经明确许可在主机上使用此工具进行测试是非法的。您要对使用此工具可能造成的任何麻烦负责。 |
预览
https://github.com/t3l3machus/Villain/assets/75489922/20bf0ad5-d06f-4658-bb43-1bb0359fe3f7
安装与使用
恶棍专门在kali linux上开发和测试。您可以使用apt
安装它:
apt install villain
您应该以root身份运行:
villain [-h] [-p PORT] [-x HOAX_PORT] [-n NETCAT_PORT] [-f FILE_SMUGGLER_PORT] [-i] [-c CERTFILE] [-k KEYFILE] [-u] [-q]
对于最新版本或如果您更喜欢手动安装:
git clone https://github.com/t3l3machus/Villain
cd ./Villain
pip3 install -r requirements.txt
您还应该安装gnome-terminal
(框架的一个命令需要):
sudo apt update&&sudo apt install gnome-terminal
查看使用指南了解更多信息。
:warning: 创建您自己的混淆反向shell模板,并在您的恶棍实例中替换默认模板,以更好地处理防病毒软件的规避。这里是方法 📽️ -> youtube.com/watch?v=grSBdZdUya0
重要说明
- 只要HoaxShell植入程序是由您尝试从受害者连接回的恶棍实例生成的,它们现在就可以重复使用(合法会话数据保存在磁盘上,每次在您的机器上启动恶棍时都会加载到内存中)。如果恶棍收到来自会话的信标(例如,因为payload仍在受害者上运行),它还会重新建立会话。您可以使用新命令
flee
退出恶棍而不终止活动会话。这样,下次启动时,如果有来自受害者的活跃信标,会话将被重新建立。 - 兄弟服务器之间的通信使用接收方兄弟服务器的ID作为加密密钥,并使用本地服务器ID的前16个字节作为IV进行AES加密。在两个兄弟服务器的初始连接握手期间,每个服务器的ID都是以明文交换的,这意味着握手可能被捕获并用于解密兄弟服务器之间的流量。我知道这样"弱"。它不应该非常安全,因为这个工具是设计用于渗透测试/红队评估的,对此这个加密方案应该足够了。
- 相互连接的恶棍实例(兄弟服务器)必须能够直接相互访问。我打算添加一个网络路由映射实用程序,以便兄弟服务器可以相互使用作为代理,以实现它们之间的跨网络通信(某天)。
贡献
通常欢迎拉取请求。请记住:我一直在开发新工具,同时维护几个现有工具。我可能回复较慢。 如果您有一个涉及大量代码的新功能想法,我建议您先联系我,讨论是否已经有类似的东西正在开发中,然后再提出PR。