基于USB的攻击向量总结

本文,我将主要通过上图的分类方式来探讨针对USB的攻击向量问题。最上层涉及到更多关于人类应用、业务的基本交互场景。传输层包括设备的固件、协议栈等。物理层则主要描述USB总线上的通信问题。

攻击向量” title=”USB的攻击向量”>

一、人类因素

本节从人类本身的特点讨论USB的攻击行为。例如:机密USB被外部人员或组织的利用等。

1. 外部威胁

大部分安全从业人员认为,所有的USB攻击都是主机插入了外部usb设备,而这些设备通常带有不同形式的恶意代码。恶意人员会想方设法的欺骗用户,将一个不可信的设备插入到他们的主机中。在社会工程学范畴,这并不是很困难的事情。根据Steve Stasiukonis报告《Social engineering, theUSB way》说,2006年的渗透测试行动中,黑客在三天内将威胁U盘插入了目标公司内部的75%的主机上。

美国国土安全部(Department of Homeland Security)在一项类似的实验中也证实了了这一结果,60%的政府设备有机会会被外部人员接触;更有意思的是,报告还指出,当司机、文秘等职业得到更多的场所准入权之后,外部人员接触终端设备的数字上升到90%。

2. 内部威胁

USB设备快速下降的成本使公司和消费者选择利用USB设备存储和传输涉密数据。与任何物理设备一样,USB驱动器也可能因人为错误而损坏,丢弃。这种处理往往会导致有害的结果。2011年,Ponemon Institute(波耐蒙研究所)发布了一项研究,记录了400家不同的公司;他们发现这些公司因为随意丢弃USB设备而损失了250万美元。2011年晚些时候,一名澳大利亚国防援助人员在经过科威特时丢失了存储在U盘上的绝密文件。完美的人越是容易犯错误,这样总会给公司甚至国家带来沉重的代价。

攻击向量” title=”USB的攻击向量”>

USB介质也为内部攻击者泄露机密信息提供了便利途径。2010年,二等兵Chelsea Manning违反《反间谍法》被捕,原因是泄露了美国军方的私人视频。曼宁使用了便携式存储设备,因为出口管制很松,为了突破军队网络的空挡,向外界泄露信息。Edward Snowden(斯诺登)使用类似的技术从位于夏威夷的军事基地窃取了美国国家安全局的绝密数据。当然国内的黄*事件也是很典型的案例(下图)。USB设备的普遍性和可移植性既是挑战也是机遇。一方面,它们的易用性极大地帮助了消费者和公司完成日常任务。另一方面,USB设备本身实际上是超越技术范畴的行政安全道德领域,可能会对组织造成巨大的影响。

攻击向量” title=”USB的攻击向量”>

二、应用层

应用层攻击涉及主机用户空间进程及其与设备功能的交互。这一层的攻击通常分为两类:代码注入攻击和数据过滤攻击。

1. 代码注入

USB存储已被多个恶意软件利用。据本人知道的案例,Duqu病毒使用应用层rootkit来隐藏USB存储设备上的恶意文件。Conficker、Flame病毒则使用了0day攻击和恶意autorun。当U盘连接到主机时,inf文件自动执行恶意软件。尽管自动运行功能在成为Windows平台的主要威胁之一后受到了限制,但由于操作系统的漏洞(Bad-USB等),类似的功能仍然可用。

2. 数据过滤

由于USB设备通常不会对主机上正在通信的应用程序进行身份验证,因此应用程序可能会对USB设备写入或者读取数据。例如,网络摄像头本地的数据的存储,USB设备本地日志的保存、usb应用层存在的各种安全漏洞都可能会成为关键的因素。

三、传输层

1. 协议伪造

USB设备利用主机对任何连接设备的完全信任,它们往往为终端操作系统提供附加的驱动层接口。像USB橡皮鸭或USBdriveby(http://samy.pl/usbdriveby/)这样的设备连接到主机系统时,它驱动层协议栈所有的回调接口(包括用户不知道的)都会被枚举。这种功能可以通过将恶意代码嵌入到其他正常的设备(例如,蓝牙耳机中的网络适配器)来隐藏。

TURNIPSCHOOL项目(http://www.nsaplayset.org/turnipschool)是一个改进的USB电缆,该设备具有4层PCB板、内置芯片的接口扩展 USB HUB、来自德州仪器的内置射频收发器单片机和一个3D打印的塑料模具。设备连接到主机后,主机上运行的软件可以通过RF接口提取数据或接收命令。使得USB传输层变成可二次编程,可以用于USB设备的安全过滤产品的开发。

识别和减轻这些恶意的接口在传统上是困难的。因为对手可以简单地重新编程任何USB基本数据(VID、PID)来规避操作系统中的设备白名单或黑名单规则。此外,由于恶意人员可以合理地使用了音频耳机等组合设备,攻击面广、隐藏率高,降低了攻击的成本。

2. 协议漏洞

主机的USB协议栈只要符合USB标准就可以了,第三方完全可以自由扩展,所以肯定会有大量的传输协议层漏洞。使用FaceDancer进行Fuzzing技术(笔者未来会写个Facedancer使用教程),我们会发现了许多内核层的任意代码执行漏洞,在2017年,谷歌研究员也在不同的Linux内核USB驱动中发现了超过40个漏洞。在某些情况下,这些漏洞可能在主机的设备枚举期间被利用。也可能作为一个中间人设备进行数据的嗅探。

攻击向量” title=”USB的攻击向量”>

四、物理层

物理层攻击包括对USB总线通信中的机密性和完整性的攻击。

1. 物理窃听

无论数据是否敏感,传输的过程中总是需要暴露在管道一段时间。排除透明加密的情况,大部分流量一定会满足USB底层传输标准,我们使用硬件键盘记录器,来进行一次大流量审计,提取USB存储、甚至USB键盘的重要信息。键盘记录器都是小型设备,放置在主机端口和外设间抓包。在usb3.0之前,恶意外设可以窃听所有连接设备的下行流量。

(A transparent defense againstUSB eavesdropping attacks)M.Neugschwandtner

我们甚至可以通过USB电流嗅探,示波器信道采集等方式进行攻击,从信道数据可以获得当前主机的重要特征信息,恶意智能手机可以使用该信息来组成攻击目标的提权shellcode。(Android安全研究综述)蒋绍林

Usb嗅探的另一种方法是使用USB协议分析仪提取总线状态的时序特征,并使用机器学习分类来推断主机的操作系统,获取具体信息。Betas提出了一种基于时间间隔的指纹打印方案,该方案可以从商用智能电话启动。他们表明,特定的操作系统版本和型号可以以高达90%的准确度通过设备之间发送数据包的间隔来检测。尽管基于时序的指纹显着提高了规避漏洞的门槛,但是经验丰富的木马设计者可以修改其时序特征来逃避检测。

2. 侧信道攻击(电磁、电源攻击)

近年来,研究人员研究攻击者如何使用植入射频发射器的从普通的终端中窃取数据。这种方法需要一个硬改的USB插头或设备,还要有一个专用嵌入式的射频发射机。USBee是一款作为射频发射器发射电磁辐射的设备,对敏感数据进行编码/抓取等操作。当然如果无法接触到目标机器的时候,黑客可以用一根普通的电线触摸目标机器暴露的金属部分,得到的信号可以用来提取重要的密钥信息。Oswald等人展示了如何基于功耗和电磁辐射从Yubikey 2中提取AES 128位密钥。(Side-channel attacks on the yubikey2one-time password generator) Oswald

攻击向量” title=”USB的攻击向量”>

电量注入的能力也被用来对终端造成物理损坏。USB Killer在USB key的PCB板的两侧嵌入多个电容。一旦连接到主机,USB杀手从主机USB总线消耗电流,对自己的电容器进行充电。一旦完全充电,负200V DC通过主机的USB数据线放电。这个充电/放电循环一直进行,直到USB killer移除或终端被破坏。在新版本的USB电源传输和Type-C连接器标准中,设备能够获取和传输高达100W的电量,它们可以损坏主机且不可修复。(完)

 

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/152955.html<

(0)
管理的头像管理
上一篇2025-03-14 06:06
下一篇 2025-03-14 06:07

相关推荐

  • jsp空间购买和交换数据空间怎么买,有哪些注意事项?

    购买JSP空间时,是否考虑过数据交换空间的性能?简米科技(2003年始创,23年行业沉淀)与酷番云(工信部一类增值电信全牌照)这类持牌自营机房的服务商,能确保数据交换的高效稳定,是值得优先选择的合作伙伴,为什么JSP空间需要搭配独立的数据交换空间从JSP应用特性看数据交换需求JSP基于Java技术,常用于企业级……

    2026-08-11
    0
  • 建网站用香港空间效果怎么样,香港空间稳定吗?

    建网站用香港空间,对于创建网站资产来说,核心价值在于免备案和全球带宽优势,尤其适合外贸、跨境电商和需要快速启动的项目,但你必须权衡国内访问延迟,并选择有资质的服务商以保证资产安全,香港空间的核心优势与适用边界免备案:节省时间就是节省成本国内服务器需要备案,通常需要10到20天,香港空间无需备案,域名解析后即可上……

    2026-08-11
    0
  • Java连接云数据库的方法是什么,如何操作

    Java连接云数据库的核心在于通过JDBC驱动,结合云服务商提供的连接地址、端口、数据库名及认证信息,配置安全策略(如SSL、IP白名单),即可实现稳定高效的远程数据库访问,基础准备:JDBC驱动与依赖管理连接云数据库前,需要确保开发环境具备对应的JDBC驱动,以最常见的MySQL为例,你需要引入mysql-c……

    2026-08-11
    0
  • 建网站公安联网备案必须使用数据码吗,备案流程是什么

    网站备案包括ICP备案和公安联网备案,两者缺一不可,公安联网备案必须使用服务商提供的数据码,选择持有合法资质的服务商是顺利通过备案的前提,为什么网站必须进行公安联网备案根据公安部《计算机信息网络国际联网安全保护管理办法》,网站开通后30日内必须到公安机关办理备案手续,未完成公安备案的网站,面临责令整改、关闭网站……

    2026-08-10
    0
  • 建一个企业网站大概需要多少钱?,怎么收费?

    建网站要多少钱,没有一个固定的数字,几百到几万都可能,但真正的“创建网站资产”绝不仅仅是初次投入的成本,而是基于长期稳定、合规和安全的持续性投入,其中核心取决于你选择了什么样的“地基”来承载你的业务,建站预算的构成与行业基准当你开始规划一个网站,最先面对的就是预算问题,一个常见的误区是只关注网站“看起来”的建造……

    2026-08-10
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注