有人可以通过关注我找出我的WIFI密码吗?

信息安全 wpa2
2021-08-12 03:49:48

假设有人开车停在我家门前。他们会得到一份他们可以获取的所有 SSID 的列表。我的手机配置为保存 WPA2 密码并在 SSID 在范围内时自动登录。

有没有可能有人在我下次离开我家时跟随我,然后一旦我们离开我家附近,他们就会用他们在我家附近拾取的每个 SSID 名称启动一个无线网络,然后等待看看当我的手机尝试登录时我向他们发送了哪些 WPA2 密码?

或者,如果 WPA2 或 Android 知道它不是我家的同一块硬件,它是否不会尝试自动登录到 SSID?

我认为笔记本电脑可能会发生同样的情况,尽管我的笔记本电脑通常是关闭的,直到我在某处的建筑物中安顿下来,所以有人对笔记本电脑进行操作会不太方便,也更明显。

3个回答

你描述的情况真的不是问题。WPA2 握手从未真正发送过您的密码;接入点和客户端都发送派生消息,证明他们知道相同的密码。因此,欺骗 WPA2 接入点无助于恢复密码。但是,可以记录客户端和接入点之间成功身份验证所涉及的消息,然后尝试强制使其脱机,因此拥有一个强密码(或者实际上是密码短语)很重要。

使用 WPA2 PSK(作为“预共享密钥”),客户端(您的手机)和接入点相互发送的内容足以运行离线字典攻击:攻击者观察这些消息,然后可以“尝试密码家”在他自己的电脑上。然而,他不会立即获取密码本身。您的手机不会向接入点“发送密码”;相反,AP 会发送一个“挑战”(一个随机值),客户端会以一个根据挑战和密码计算的值进行响应。计算是单向的。假设所有涉及的加密算法都是安全的(现在它们似乎是安全的),攻击者能做的最好的事情就是密码猜测:通过运行相同的计算尝试一个潜在的密码,看看它是否会产生与他的密码相同的值观测到的。

计算包括具有 4096 次迭代的PBKDF2,这还不错。每个“猜测”将使攻击者花费大约 16 万次 SHA-1 哈希函数调用。如果他有几个好的GPU,他可能仍然每秒尝试大约一百万个密码,所以你最好有一个好的、强的、随机的密码。如果您的 WiFi 密码包含 20 个随机字母(每个字母随机、统一且独立于其他字母选择),那么字典攻击将不起作用。一个很长的随机密码并不是什么大问题:所有客户端都记录密码;您不必经常输入。

请注意,以上都不需要攻击者主动做任何事情,比如设置一个虚假的接入点。他只需要观察您的手机和接入点之间的正常连接。

当然,如果有人在这种情况下安装流氓 AP,您的手机会与它握手。人们总是这样做。

但是,这并不会泄露您的密码,因为使用 WPA2-PSK 时,使用身份验证帧的握手有一个质询响应部分。此时,需要对 WPA2 PSK 或预共享密钥(也称为 PMK/成对主密钥)进行暴力攻击。事实上,如果他们观察到您的设备与您的实际 AP 握手,这与攻击者本质上是相同的,因为它是为了让您与他们握手;他们仍然需要同样的努力来破解您的密钥或访问您的无线网络。

在功能性 WPA2-PSK 握手中,PMK 将用于派生 PTK(成对时间密钥),这实际上是用于加密您的会话。

我注意到上面有人评论并建议不要广播您的 SSID,这通常是您的 AP/无线路由器上可用的设置。由于几个原因,这对即使是最基本的攻击者也无济于事。首先,当您告诉 AP 不要广播您的 SSID 时,这并不意味着它停止广播(或“信标”)。相反,它只是将信标帧的 SSID 字段设置为空(\x00),因此如果您只听几秒钟或几分钟的无线电波,您会发现在您的天线范围内有一个 AP。

其次,即使 AP/无线路由器完全关闭,或者您以某种方式能够让它停止信标(顺便说一句,这是个坏主意……)客户端也会发出所谓的“探测请求”。这些基本上是说“我有一个使用 SSID abc123 保存的 AP,你在吗?” 然后,攻击者可以从这些探测请求中获取一个 SSID,并使用该 SSID 构建一个流氓 AP 来获取您的握手。防止攻击者与您握手的最佳方法是使用 802.11w(目前几乎没有人这样做,因为并非所有硬件都支持它),或者“忘记”或不保存以前连接到无线连接的方式。

简而言之:除非您的密码较弱,否则不要担心这种攻击媒介。