BlueBunny是一款功能强大的命令控制框架,该工具基于低功耗蓝牙实现数据通信,可以帮助广大研究人员直接通过蓝牙将控制指令发送给Bash Bunny。
Bash Bunny是一款类似于USB Rubber Ducky的多功能USB攻击工具(号称世界上最先进的USB攻击平台)。然而,Bash Bunny则是一个功能齐全的Linux操作系统,与USB Rubber Ducky相比具有更多优势,例如可携带多个高级Payload,模拟设备组合以及执行多种高级攻击。需要将他们的物理攻击提升到一个更高水平的渗透测试人员,应该会非常看重这一点。
由于该工具基于Python开发,因此我们首先需要在本地设备上安装并配置好Python环境。
接下来,广大研究人员可以直接使用下列命令将该项目源码克隆至本地:
git clone https://github.com/90N45-d3v/BlueBunny cd BlueBunny/C2
使用下列命令即可安装该工具所需的依赖组件:
pip install pygatt "pygatt[GATTTOOL]"
然后安装BlueZ,并确保gatttool可用:
sudo apt install bluez
下列命令即可启动C2服务器:
sudo python c2-server.py
然后将带有BlueBunny Payload的Bash Bunny插入到目标设备中,Payload路径如下:
BlueBunny/payload.txt
打开Web浏览器,并访问下列地址即可与和你的Bash Bunny连接通信:
http://localhost:1472
我们还可以使用BlueBunny的低功耗蓝牙BLE后端手动与你的Bash Bunny通信。
下面给出的是可供参考的Python脚本代码:
# 导入后端脚本(BlueBunny/C2/BunnyLE.py) import BunnyLE ? # 定义要发送的数据 data = "QUACK STRING I love my Bash Bunny" # 定义要发送数据的类型,即“cmd”或“payload”,payload数据将会临时写入一个文件中,类似于执行一个Payload脚本文件中的多条命令 d_type = "cmd" ? # 初始化BunnyLE BunnyLE.init() ? # 连接Bash Bunny bb = BunnyLE.connect() ? # 发送并执行数据 BunnyLE.send(bb, data, d_type)
本项目的开发与发布遵循MIT开源许可证协议。
BlueBunny:【GitHub传送门】