
Bantam
一个高级的 PHP 后门管理工具,具有轻量级的服务端占用、多线程通信以及先进的负载生成和混淆工具。支持端到端加密,每个请求使用唯一加密密钥,并采用负载流式传输以绕过 WAF、IDS、SIEM 系统。它融合了多种负载随机化和混淆技术,在无法加密时有助于避免检测。Bantam 是 Linux PHP 后期利用提权的理想工具,可轻松上传枚举脚本。它还具备插件系统,便于向 UI 添加脚本和功能。该工具使用 C# 编写,可在 Windows 及 Linux(通过 Wine)上运行。

功能
端到端请求与响应加密 - 加密流程
- 使用 openssl 或 mcrypt 对请求和响应数据进行 AES-256 位加密
- 每次请求都会生成新的响应加密密钥并嵌入到请求负载中,使每个响应独一无二,从而防止 WAF 和 IDS 系统的检测
- 请求加密密钥可通过预共享密钥/IV 嵌入,或采用预共享密钥配合随机生成的 IV(通过已知请求变量传递),使每次请求签名独一无二
- 获取 Shell 信息 - [img]
- 添加 Shell - [img]
- Eval 工具 - 打开一个文本编辑器,将输入文本作为 PHP 负载执行
- 远程端口扫描 - 使用 Bantam 服务端扫描远程端口
- PHPInfo 查看器 - 在 HTML 窗口中打开 phpinfo 页面
- 自身编辑器 - 编辑服务端存储的 Bantam 代码
- Linux - 常用命令和文件。动态从 settings.xml 加载(passwd、ps aux、ifconfig 等)
- Windows - 常用命令和文件。动态从 settings.xml 加载(net user、hosts、ipconfig 等)
- Windows 屏幕截图捕获 - 捕获当前屏幕截图
- 插件 - 动态将 PHP 负载包含到 UI 中,通过在 settings.xml 中配置插件来执行
- 重置连接 - 从 UI 中移除当前 Shell 和会话信息,重新添加 Shell 并测试连接
- 更新 Ping - 更新所选 Shell 的 Ping 值
- 编辑设置 - 在 UI 中打开当前 Shell 的设置进行修改
- 复制 URL - 将 Shell URL 复制到剪贴板
- 移除 - 从 UI 中移除 Shell
- 将 Shell 保存到 XML
- 从 XML 打开已保存的 Shell
反向 Shell - [img]
- 向指定 IP/端口生成反向 Shell
- 支持方法 - perl、netcat、netcat with pipe、telnet with pipe、php、bash、python、barrage(全部)
- 使用 chankro 绕过 disabled_functions 和 open_basedir
用户代理切换器
代理设置
批量执行
- 在所有服务器上执行 PHP 负载
- 端口扫描器 - 分布式端口扫描,将任务分配给所选服务器,对远程主机进行端口扫描 - [img]
- 插件 - 从 settings.xml 动态加载自定义负载到 GUI 中并批量执行
- 遍历文件目录,并在当前会话中保存目录树
- 复制文件
- 读取文件内容
- 删除文件
- 重命名文件
- 上传文件
- 使用选项窗体中选定的向量向服务器发送 Shell 命令,并在当前会话中保存历史记录
日志
- 显示应用程序或服务端可能产生的各种日志和错误,可在选项窗体中调整详细程度
- 日志记录
- 日志等级 - 确定显示的日志级别,等级越高显示日志越多
- 启用全局日志
- 请求设置
- 最大执行时间 - 允许请求运行至 PHP 最大执行时间
- 禁用错误日志 - 对请求禁用错误日志记录
- Shell 代码向量 - Shell 代码执行方式(system/exec/shell_exec/passthru/popen/backticks)
- 超时(毫秒) - 默认请求超时时间
- 最大 POST 大小(KiB) - 默认最大 POST 大小
- 最大 Cookie 大小(B) - 锁定为 4096 字节
- 请求混淆
- 注入随机注释
- 在 PHP 负载中注入带有随机文本的注释
- 注释频率 - 确定注入注释的位置数量
- 最大长度 - 确定注释的最大长度
- 随机化 PHP 变量名
- 对 PHP 负载中的变量名进行随机化,始终开启
- 最大长度 - 确定随机 PHP 变量名的最大长度
致谢