九年前,我创造了我认为是世界上第一个USB蠕虫。通过摆弄一个u盘,并在上面放置一个隐藏文件,我能够让任何一台插入了“受感染”u盘的电脑自动将文件传播到主机上,然后当一个新的USB设备插入时再传回来。
它在数码相机和移动电话中工作。我能够获得任何USB设备 - 实际上,任何可移动的媒体设备 - 运行我的蠕虫文件。我玩了一堆乐趣。
我向我的雇主和相关供应商报告了调查结果;他们反过来要求我在相当长的一段时间内保持沉默,以便他们能堵住这个洞。我本打算在一个大型国家安全会议上展示我的发现,但不得不在赢得黑客信誉和公共安全之间做出选择。我选择了后者。
说实话,我不想惹恼这个供应商,因为它是未来可能的客户或雇主。这个洞被修补,公众是一个更聪明的人。多年后,我惊讶地看到了一种非常相似的方法超级工厂病毒恶意软件程序.
但我的经验让我再也不相信插电的设备了。从那以后,我再也没有把USB设备或可移动媒体卡插到我拥有的一台电脑上,这台电脑不是出自我之手,也不在我的控制之下。有时,偏执狂是适当的。
BadUSB现在在野外是一个严重的威胁
这让我想到了今天。现在贴在GitHubBadUSB的源代码(不要与被称为BadBIOS的虚假恶意程序),这让我九年前的实验看起来像是小孩子的游戏。BadUSB是对计算机硬件输入设备造成严重后果的真正威胁。
BadUSB写入或重写USB设备的固件代码,以执行恶意操作。第一个2014年7月宣布当时,柏林安全研究实验室的两位计算机研究人员发现了BadUSB演示他们的发现黑帽大会上
这种攻击令人担忧,因为所有检查USB存储设备恶意的传统方法都不起作用。恶意代码被植入USB的固件中,当设备插入主机时,固件就会执行。主机无法检测到固件代码,但固件代码可以与主机上的软件进行交互和修改。
恶意固件代码可以种植其他恶意软件,窃取信息,转移互联网流量,以及绕过防病毒扫描的同时。该袭击被认为是如此可行和危险的是,研究人员只发出了利润。在丰富的警告中,他们没有释放概念证明或受感染的设备。但另外两位研究人员反向设计了利用,创建了演示码,以及向全世界发布在GitHub上。
在CNN、亚特兰大宪法日报、登记册和PC杂志等新闻和消费科技网站上已经出现了戏剧性的一幕,他们惊叫道:“这个世界将充满恶意的USB设备!”
为什么Badusb利用超越USB
首先,重要的是要认识到威胁是真实存在的。USB固件可以被修改,以做研究科学家索赔的原因。世界各地的黑客可能正在下载概念验证代码,制作恶意USB设备,并使用概念验证代码作为演出的发射点,这比研究人员的测试漏洞更恶意。
其次,这个问题并不局限于USB设备。事实上,USB设备只是冰山一角。任何带有固件组件的硬件设备插入您的计算机都可能被制造成恶意的。我指的是火线设备、SCSI设备、硬盘驱动器、DMA设备等等。
为了让这些设备工作,它们的固件必须被插入主机设备的内存中,然后在那里执行——因此恶意软件可以很容易地在此运行。可能有些固件设备无法被利用,但我不知道为什么不能。
固件本质上不过是存储在硅上的软件指令。在基本层面上,它只不过是软件编程。并且固件是使硬件设备能够与主机计算机设备通信所必需的。设备的API规范告诉设备程序员如何编写代码使设备正常工作,但这些规范和指令从来没有考虑到安全性。不,它们是为了让物品互相交谈而写的(很像互联网)。
启用恶意活动并不需要很多编程指令。您可以格式化大多数存储设备或“砖”一台计算机与少量的指示。迄今为止编写的最小的计算机病毒只有35个字节。GitHub概念验证示例中的有效负载只有14K,它包含了大量的错误检查和巧妙的编码。相信我,14K在当今的恶意软件世界里微不足道。它很容易嵌入和隐藏恶意软件在任何几乎固件控制器。
事实上,黑客和国家很有可能早就知道并使用这些固件后门。国家安全局的观察家们对这种设备进行了详尽的推测,这些猜测得到了证实最近公布的国家安全局文件.
可怕的事实是,自从固件出现以来,黑客就一直在入侵固件设备,迫使它们采取未经授权的行动。
BadUSB是你可以从恐慌列表中删除的最大威胁
事实是,你至少应该对插入电脑的任何固件设备——USB或其他设备——长时间感到紧张。我这样已经快十年了。
你唯一的防御就是插入你信任的供应商的固件设备,并将它们置于你的控制之下。但是,你怎么知道你所接入的设备没有被大量入侵,或者在供应商和你的电脑之间没有被篡改?爱德华·斯诺登泄露的信息表明,美国国家安全局拦截了运输途中的电脑,并安装了监听设备。当然,其他间谍和黑客也尝试过同样的策略来感染供应链上的零部件。
不过,你可以放松一下。
恶意硬件是可能的,它可能被用于一些有限的场景。但不太可能广泛传播。硬件黑客并不容易。它是资源密集型的。不同的指令集用于不同的芯片集。还有一个棘手的问题,就是让目标受害者接受恶意设备并将其插入他们的电脑。对于非常有价值的目标,这种“不可能的任务”式的攻击是可行的,但对普通人来说就不那么可行了。
今天的黑客(包括美国、英国、以色列、中国、俄罗斯、法国、德国等地的间谍机构)利用传统的软件感染方法获得雷竞技比分了更多的成功。例如,作为一名黑客,您可以构建和使用一个超级复杂和超级隐蔽的Blue Pill管理程序攻击工具或者使用一种常见的木马软件,这种软件几十年来一直工作良好,可以黑进更多的人。
但如果恶意固件或USB设备开始广泛出现呢?你可以打赌,供应商会响应并解决这个问题。现在BadUSB还没有防御,但在未来它可以很容易地被防御。毕竟,它只是软件(存储在固件中),软件可以战胜它。USB标准机构可能会更新规范以防止此类攻击,微控制器厂商可能会减少由固件产生的恶意,操作系统厂商可能会更快地做出反应。
例如,一些操作系统供应商现在阻止DMA设备在计算机完全启动或用户登录之前访问内存,这仅仅是为了防止发现来自插入的DMA设备的攻击。Windows 8.1,OS X(通过开放固件密码),以及Linux具有对DMA攻击的防御,尽管它们通常需要用户启用这些防御。如果BadUSB变得普遍,同样的防御措施也将被实施。
不要害怕BadUSB,即使一个黑客朋友决定用他的恶意编码的u盘捉弄你。像我一样——不要一直使用不在你控制范围内的USB设备。
记住:如果你担心被黑客攻击,那就做得更多担心浏览器中运行的内容比你的固件运行的要多。
这个故事," BadUSB漏洞是致命的,但很少能被击中"最初是由信息世界 .