badusb是一种几乎可以突破任何杀毒软件和防火墙的设备,堪称渗透测试利器
文章目录
BadUSB是《黑客军团》中fsociety组织常用的工具之一,无论是向服务器下载木马控制被害者主机,还是达琳在停车场帅气的扔出大量USB钓鱼,BadUSB都是功不可没的物理武器之一
前言
在2014年美国黑帽大会上,安全研究人员JakobLell和独立安全研究人员Karsten Nohl展示了他们称为“BadUSB”的攻击方法,这种攻击方法让USB安全和几乎所有和USB相关的设备(包括具有USB端口的电脑)都陷入相当危险的状态。
一、什么是badusb?
BadUSB 是利用 USB 固件中固有的漏洞的攻击。这种攻击重新编程USB设备,使其充当人机交互设备。一旦重新设计,USB 设备将用于在受害者的计算机上谨慎执行命令或运行恶意程序。
二,badusb的优点
在USB攻击领域,很多年前常用的是老式USB病毒autorun.inf,现在估计随便一个杀毒软件就能把它杀得死死的,与autorun.inf不同,BadUSB是利用了USB协议上的漏洞,通过更改USB的内部固件,在正常的USB接口接入后,模拟外置鼠标、键盘的功能,以此来使目标主机执行已经精心构造好的命令。在此过程中不会引起杀毒软件、防火墙的一丝怀疑。而且因为是在固件级别的应用,U盘格式化根本无法阻止其内部代码的执行。
同样因为是对USB的利用,Windows、Linux、MAC等各类操作系统不必联网下载专用的驱动程序。此外,向badusb烧录的程序极为简单,大部分是对键盘按键进行模拟,上手较为容易。
badusb也是社会工程学的一个典型示例,它极大地利用了人们的好奇心,在路边捡到的U盘,估计九成以上的人们都想看看里面有什么东西,而当你插入U盘,攻击就很难再停止下来了。
三,badusb是如何攻击的?
badusb原理
利用HID(Human InterfaceDevice,是计算机直接与人交互的设备,例如键盘、鼠标等)进行攻击,将USB设备伪装使电脑识别为键盘,再利用USB设备中的微控制芯片,向主机发送命令,从而实现完全控制主机。
HID攻击
HID是Human Interface Device的缩写,由其名称可以了解HID设备是直接与人交互的设备,例如键盘、鼠标与游戏杆等。不过HID设备并不一定要有人机接口,只要符合HID类别规范的设备都是HID设备。一般来讲针对HID的攻击主要集中在键盘鼠标上,因为只要控制了用户键盘,基本上就等于控制了用户的电脑。攻击者会把攻击隐藏在一个正常的鼠标键盘中,当用户将含有攻击向量的鼠标或键盘,插入电脑时,恶意代码会被加载并执行。
漏洞产生原因
现在的USB设备很多,比如语音视频设备、摄像头等,因此要求系统提供最大的兼容性,甚至免驱;所以在设计USB标准的时候没有要求每个USB设备像网络设备那样占有一个唯一可识别的MAC地址让系统进行验证,而是允许一个USB设备具有多个输入输出设备的特征。这样就可以通过重写U盘固件,伪装成一个USB键盘,并通过虚拟键盘输入集成到U盘固件中的指令和代码而进行攻击。
三、准备步骤
1.设备
制作badusb的几种板子
能够制作badusb的几种常见载体有:Arduino Leonardo、Phison、Teensy、Attiny85、PS2303(芯片)、RUBBER DUCKY等。从专业程度和易用性来讲RUBBER DUCKY最优(Hak5官方提供了许多现成的按键脚本和payload),但价格也最贵。
So,本例选择制作最常见的基于Arduino Leonardo的badusb,淘宝一搜一大把,价格在20~40¥之间
2,编辑器的安装与设置
首先第一步就是要去下载Arduino开发者工具——Arduino IDE。这里是Arduino IDE下载地址:https://www.arduino.cc/en/software,下载安装较为简单,这里不再赘述。安装后打开软件,你将看到如下所示的界面图:
然后打开工具-开发板-开发板管理器:
联网安装Arduino AVR Boards板子:
回到主界面,开发板选择,选择工具-开发板- Arduino Leonardo。编程器选择,AVRISP mkII,如下图所示:
至此,编辑器准备完毕