从零开始学badusb(1) | 您所在的位置:网站首页 › capslock键怎么念 › 从零开始学badusb(1) |
BadUSB是利用伪造HID设备执行攻击载荷的一种攻击方式。HID设备通常指的就是键盘鼠标等与人交互的设备,用户插入BadUSB,就会自动执行预置在固件中的恶意代码。 Bad-Usb插入后,会模拟键盘鼠标对电脑进行操作,通过这些操作打开电脑的命令终端,并执行一条命令,这条命令将从指定网址下载其他代码并于后台静默运行。这些代码功能包括:窃取信息、反弹shell、发送邮件等,从而实现控制目标机或者窃取信息的目的。 为什么要学习badusb 怎么说呢,听网上的大佬们讲。。。badusb可以绕过杀毒什么的,反正很厉害…社工利器,想想你在夜黑风高的夜晚,去插别人的机子,插谁谁怀孕. 环境搭建 arduino 提取码:48bu 然后还需要我们去某宝买一个回来,输入badusb就可以找到很多卖家,买一个跟普通usb差不多的,可以以假乱真,不懂的人以为是个usb呢 然后进入arduino需要配置一下 工具->编译器选择USBasp 插上我们的usb 工具->端口选择插入的usb名字,我的叫arduino micro 然后再在 工具->开发板,选择我们对应的usb 打开arduino,新建一个项目,会看到如下代码 void setup() { // put your setup code here, to run once: } void loop() { // put your main code here, to run repeatedly: }光看这个可能理解的不够彻底,可以看看arduino的主函数 #include int main(void) { init(); setup(); for (;;) { loop(); if (serialEventRun) serialEventRun(); } return 0; }这就是arduino的大框架,分为setup和loop,解释的也很明显,一个是只执行一次,一个是执行很多次,先执行setup里面代码,再执行loop里面的循环 通过一个简单的例子来了解一下大概的命令 #include void setup() { Keyboard.begin(); delay(3000); Keyboard.press(KEY_LEFT_GUI); delay(200); Keyboard.print("r"); delay(200); Keyboard.release(KEY_LEFT_GUI); Keyboard.press(KEY_CAPS_LOCK); Keyboard.release(KEY_CAPS_LOCK); delay(200); Keyboard.println("NOTEPAD"); delay(500); Keyboard.println("hacked!!!"); Keyboard.end(); } void loop() { }这个例子比较简单,没有loop所以只执行一次 一上来先引用键盘通讯事件的头 #include一头一尾可以看到begin和end Keyboard.begin();//键盘事件开始 Keyboard.end(); //键盘事件结束,在此期间的键盘操作才是有效的接下来是一个延时操作,因为有时候由于系统的原因可能出现卡顿,如果操作后没有停顿可能造成执行错误,所以推荐延时使用,延时的基本单位是毫秒,这里的3000毫秒就是3秒 delay(3000);//延时3秒接下来是一个press命令,该命令作用是按下一个建并且持续按住,一直按倒结束命令为止,而key_leaf_gui就是键盘上的左边的start键,也就是win键 Keyboard.press(KEY_LEFT_GUI);//按下一个键并持续按住以下是对应的键 有些比较熟悉的我就没有注释 KEY_LEFT_CTRL KEY_LEFT_SHIFT KEY_LEFT_ALT KEY_LEFT_GUI//win KEY_RIGHT_CTRL KEY_RIGHT_SHIFT KEY_RIGHT_ALT KEY_RIGHT_GUI//win KEY_UP_ARROW//上 KEY_DOWN_ARROW//下 KEY_LEFT_ARROW//左 KEY_RIGHT_ARROW//右 KEY_BACKSPACE//回退键,就是+=号右面那个 KEY_TAB KEY_RETURN//回车键 KEY_ESC KEY_INSERT//ins键,我的笔记本上是和F12在一起 KEY_DELETE //del键 KEY_PAGE_UP//这个台式机有,我的好像没找到 KEY_PAGE_DOWN//我也没找到 KEY_HOME//home键 KEY_END//end键 KEY_CAPS_LOCK/caps键 KEY_F1 KEY_F2 KEY_F3 KEY_F4 KEY_F5 KEY_F6 KEY_F7 KEY_F8 KEY_F9 KEY_F10 KEY_F11 KEY_F12大家可以看到,这里面有很多键,但没有看到数字和字母键,那如果我们想要按数字或字母怎么办 Keyboard.print("r");这个操作本来是输出一个r出来。但在这里我们和之前的key_leaf_gui合在一起就变成了调出“运行”这个命令,因为上一步的按键是持续的,所以有这个效果 当然我们键也不能按时间长了,也需要释放所以就对应着这个命令,释放某个键 Keyboard.release(KEY_LEFT_GUI);接下来这个操作不知道大家可以理解吗,按住key_caps_lock,就是切换大小写,因为如果此时目标电脑是中文输入模式,那么之后我们的输入可能会因为中文输入的原因产生问题,所以及时切换为大写就可以解决这个问题了,而windows系统不区分大小写 Keyboard.press(KEY_CAPS_LOCK); Keyboard.release(KEY_CAPS_LOCK);这个跟刚才的print有些不一样,这个输出完了以后还顺便输出回车,这个效果就是在运行里面输入NOTEPAD在回车,不就是开始运行记事本了吗 Keyboard.println("NOTEPAD");进入记事本输出一个傻傻的话哈哈 Keyboard.println("hacked!!!");代码写完了,点一下小勾,是编译的效果,没有错误的话就可以点击→,上传到我们的usb ,上传成功以后这个usb就会自动运行… 因为我在打字,所以没有运行成功,有我人为的干扰 重插一次
|
CopyRight 2018-2019 实验室设备网 版权所有 |