你以为USB真的安全?大错特错!
所以严格意义上,这种安全问题根本就怪不到USB头上,如果一定要怪,就如前文所述,只是因为USB实在是太普遍了。
前不久刚刚结束的Black Hat USA 2016黑客大会上,谷歌反欺诈研究团队负责人Elie Bursztein分享了一个议题,名为"Does dropping USB drives really work?"(丢U盘进行社工攻击真的有效吗?)他尝试在伊利诺伊大学校园里各处丢弃297个U盘,看看有没有好奇心重的人会捡回去看U盘里究竟有什么。如果说Bursztein丢的是297块SATA3硬盘(Lol),攻击方式理论上是一样的,但攻击效果有多么糟糕是可想而知的。可见USB的普及性,是我们在此讨论其安全性的依据。
美国计算机行业协会去年曾经发起过一项调查,结果显示17%的人在捡到USB设备后会直接连电脑——这个数据可能还过于保守。Bursztein的调查结果明显更激进:135个U盘(也就是45%)被人捡走后都连接了电脑,这些人还打开了其中的文件,其上的"恶意程序"给Bursztein回传了数据。
好在这还只是个实验,并不存在真的"恶意"。Bursztein的研究团队是这么做的:他们没有用autorun.inf,因为现在的操作系统根本就不吃这套,Mac连自动运行功能都不支持,他们的方法是:钓鱼。
研究团队给这297个U盘分别贴了些标签,甚至还明确写上了U盘所有者(以及归还地址),即便在这种情况下还是有135个U盘被好奇心重的同学打开了。U盘里面的文件迷惑性地写上了"期末考试""机密"等字样,实际上这些文件都是HTML格式的,文件中有张图片,调用了研究团队服务器的地址——这样一来研究团队就知道,有人打开了文件。
除此之外,HTML文件打开后有个问卷调查,询问这些好奇心宝宝:你们为啥要插人家的U盘呀!的确也有20%的人参与了调查,超2/3的人表示他们其实是想归还U盘的(Really?),18%的人承认他们是好奇,14%的人给出了其他解释。
就这一个例子,我们就不难看出U盘钓鱼的成功率还是相当高的。如果这些HTML文件都换成恶意程序,或者调查问卷改成询问用户名密码的"钓鱼问卷",又有多少人会栽在其中呢!美剧《黑客军团(Mr Robot)》中就出现了用U盘钓鱼的桥段,看样子这根本就不只是个传说!
U盘攻击绝杀:伪装成HID设备
还是那句话,上面两部分谈的实际上都仍是将USB设备作为传播恶意程序的载体,就好像U盘钓鱼,其本质和丢个软盘来钓鱼(Lol),以及邮件钓鱼是没差别的,原罪不在USB设备身上。如果用这种方法来谈USB安全,实际上还有很多内容可说,比如说USB接口是入侵ATM机的重要途径,还有USB Key这类作为数据解密的安全手段,都不过是将USB作为工具。
那么有没有USB本身的原罪可谈呢?有!可以从USB的协议入手。USB不止MSC(大容量存储)设备这一种,现在的USB接口支持这么多功能,协议其实也五花八门,自然不光有相关MSC的协议,什么USB Power Delivery(USB快速充电规范)、USB OTG(SRP、HNP协议,两个外设间传输)等等,还有一个USB HID设备类协议。这里的USB HID,近两年来已经成为USB设备攻击的绝杀了。
HID也就是Human Interface Device,是与人交互的设备。其实USB-HID设备现如今已经相当普遍了,比如USB键盘、鼠标、手柄等等。这要怎么利用呢?在2014年的Black Hat黑客大会上,安全研究人员Karsten Nohl和Jakob Lell发表了演讲,提到一个有些惊世骇俗意味的USB攻击手段,名叫BadUSB,部分利用了HID的特点。
上面说的好玄乎,所以下面再来举个栗子:键盘都用过吧?有没有试过不用鼠标,纯粹用键盘来进行各项系统操作呢?有经验的同学应该知道,其实也不难。那么如果有这么一个U盘,它能够伪装成键盘,通过脚本执行一系列键盘敲击操作,是不是感觉就能控制你的系统了?这其实就是BadUSB攻击利用USB协议的示例。被BadUSB感染过的U盘不仅能够伪装成USB键盘,还能伪装成USB网卡——篡改DNS,这样一来所有的DNS查询就能发往攻击者的服务器,可进行重定向攻击。
一旦这种攻击得以实现,那么攻击方式自然也就变得五花八门了,只有想不到没有做不到,最重要的是跨平台——因为各系统平台遵循一致的USB标准。
说到底,这种HID模拟攻击不就是当年黑客们很爱的USB橡皮鸭(USB Rubber Ducky)吗?问题是橡皮鸭的内部硬件很彪悍,有个60MHz主频的处理器、microSD扩展插槽。普通U盘何以实现这样的攻击手段?这个问题其实才是Karsten Nohl和Jakob Lell这两位研究人员的高明之处,也是这些U盘在感染BadUSB之后的可怕之处。
一般U盘的构成除了我们需要
USB 相关文章:
- 从1.8V到USB的多轨电压转换和管理(08-17)
- 具USB OTG和过压保护的紧凑型电源管理器(08-17)
- USB供电的单节镍氢电池开关模式充电器电路设计(02-12)
- 具有USB OTG和过压保护的紧凑型电源管理器的实现(10-17)
- 低导通损耗的USB电源开关的设计(12-01)
- 一种满足USB规范的电源开关设计方案(02-13)