我应该有多担心被 PoisonTap 入侵?

信息安全 USB
2021-08-28 10:13:43

我今天才听说PoisonTap以下是TechCrunch文章的简短描述:

PoisonTap 连接到 USB 端口,并宣称自己不是 USB 设备,而是以太网接口。电脑很高兴从耗电的 Wi-Fi 切换过来,发送一个 DHCP 请求,要求分配一个 IP。PoisonTap 会做出响应,但这样做会使大量 IP 实际上并不存在于服务器上,而是通过这种虚假的有线连接本地连接到 LAN 上。

您甚至不必在那里:分析和广告等预加载项目将处于活动状态,并且一旦其中一个发送 HTTP 请求 - BAM,PoisonTap 就会响应顶部的大量数据缓存恶意 iframe百万 Alexa 网站。而那些配备后门的 iframe 会一直存在,直到有人将它们清除。

这听起来很令人担忧,但我还没有听到太多关于它的消息。所以我的主要问题是:

人们对 PoisonTap 黑客的攻击有多脆弱?

似乎以下几点是相关的:

  1. 是普通人群面临风险,还是只有一个非常特定的子集(操作系统、浏览器?)
  2. 您的数据、您的 gmail 帐户到底有什么风险……?
  3. 它是大多数人都可以完成的事情,还是取决于特定的硬件和高水平的技能?
  4. 有没有什么可以轻松完成的事情,而无需在每次走到另一个房间问一个简短问题时都关闭所有浏览器或关闭 PC。(锁定就足够了吗?)

当然,如果情况像看起来那样糟糕:我们能否期待很快的更新,让再次上厕所更安全?

4个回答

首先,攻击者需要对机器进行物理访问才能将设备插入 USB 端口。这意味着不可能进行任何类型的完全远程利用。如果计算机屏幕被密码或类似密码锁定,它确实可以工作。请注意,物理访问不必是直接的,即,也可以是某些易受骗的用户将捐赠的 USB 记忆棒插入系统。

然后设备宣布自己为 USB 以太网设备。这意味着计算机将尝试将 PoisonTap 作为网络设备添加到系统中,并使用 DHCP 从中获取 IP 地址。DHCP 响应将返回带有 /1 子网的 IP 地址,以便将大多数 IPv4 流量发送到设备。从那时起,攻击者就可以像路由器一样访问设备:实际上,该设备作为受攻击计算机的路由器工作。这意味着任何流量都可以很容易地被嗅探和修改,但加密连接仍然受到保护,不会被解密并且修改会被检测到。这意味着例如通过 https(通常的方式)访问 gmail 不会受到影响。

最后,这只是本地攻击者的另一种方式。攻击的影响类似于通过 ARP 或 DHCP 欺骗重定向某人的流量、劫持本地路由器或恶意接入点。不能像这些攻击那样做更多的事情,但也不能少。看起来该软件带有一些不错的攻击,它们修改未加密的 HTTP 连接以访问不同的站点,以便使用大量使用的脚本(如中毒的谷歌分析等)毒害浏览器缓存。由于许多网站都包含此类第三方代码,并且此类代码可以访问整个页面,因此受毒代码可以提取大量有用信息。但同样,这仅适用于 HTTP 而不是 HTTPS。

普通人群是否处于危险之中,或者只有一个非常特定的子集(操作系统、浏览器?)

大多数当前系统都处于危险之中,但攻击者需要物理访问。

您的数据、您的 gmail 帐户到底有什么风险……?

嗅探和修改未加密的连接。Gmail 通常是加密的,因此不会受到影响。

它是大多数人都可以完成的事情,还是取决于特定的硬件和高水平的技能?

它需要特殊的硬件和软件,但硬件便宜,软件发布。它需要与 ARP 或 DHCP 欺骗等攻击相同级别的经验,即脚本小子可以做到。

有没有什么可以轻松完成的事情,无需关闭所有浏览器或每次走到另一个房间问一个简短的问题时都关闭电脑。(锁定就足够了吗?)

针对其他基于 USB 的攻击的常规保护仍然有效,即禁用 USB 或限制设备类型。但请注意,如果设备有以太网端口,您可以通过它发起类似的攻击,因为大多数系统都首选有线连接而不是无线连接。

“PoisonTap”可以做的范围相当于你插入/连接的恶意本地网络或 wifi 接入点已经可以做的事情。在任何一种情况下,如果您对任何重要的事情(提供登录凭据、浏览敏感内容、下载可能包含格式错误的数据的可执行代码或数据文件)使用未加密的(例如纯 http)连接,都会存在各种严重的危险。利用使用它们的应用程序中的错误等),但加密连接的风险可以忽略不计。与将某些东西插入受害者的笔记本电脑相比,设置假接入点对攻击者的风险要低得多,所以我不明白为什么有能力的攻击者会选择 PoisonTap 方法。

该攻击仅适用于本地访问,并且仅适用于自动启用 dhcp-enable 随机连接的网络硬件的系统。可悲的是,三大操作系统都这样做了,但其他一些更关心安全性的操作系统(例如OpenBSD和朋友)却没有。可以预测,由于这次攻击,Windows、MacOS 和 Linux 可能会改变他们的行为,以偏向于安全性而不是便利性。但仅限于这一领域,直到有人找到另一种方法来利用他们在不同领域的便利性与安全性权衡中的立场。

有没有什么可以轻松完成的事情,无需关闭所有浏览器或每次走到另一个房间问一个简短的问题时都关闭电脑。(锁定就足够了吗?)

我现在的解决方案是在锁定屏幕之前通过手工批处理脚本禁用 USB 端口,可能如下所示:

@echo off

:: Disable USB port(s)
REG ADD HKLM\SYSTEM\CurrentControlSet\services\USBSTOR /v Start /t REG_DWORD /d 0x4 /F

:: Lock screen
tsdiscon