wifi wpa2 安全性:为什么我不能只使用从客户端捕获到 AP 的数据来对 AP 进行身份验证

wifi wpa2 security : why can't i just use data captured from the client to the AP to authenticate to the AP

所以我在互联网上搜索了很多关于 wpa2 wifi 中的 4 次握手如何工作的主题。

我仍然很困惑,为什么我不能只使用从客户端移动到 AP 的捕获数据进行初始全新身份验证。 进程:4 way handshake

我想创建的场景是:

客户端 MITM AP 发送 auth 数据转发它接收它并发回响应

所以 AP 会认为 MITM 是客户端。

任何人都可以给出一些为什么这不可能的原因。谢谢

在四次握手中,来自 AP 的第一条消息包含一个很大的随机数(称为随机数,在您发布的图表中表示为 ANonce)。客户端将此数字与他们生成的随机数(在图中称为 SNonce)、他们的 MAC 地址以及最重要的是,它与 AP 共享的秘密结合起来以创建所谓的 PTK(成对瞬态密钥) .

然后它使用这个密钥"sign"它的随机数(SNonce),并将SNonce+签名发送回AP。 AP 使用它的随机数 (ANonce)、它在该消息中收到的数字 (SNonce)、发送该消息的客户端的 MAC 地址,以及最重要的共享秘密(功能上, WiFi 密码)来生成客户端生成的 same PTK。

如果 AP 能够使用它生成的 PTK 来验证它从客户端收到的消息上的签名,那么它就知道客户端一定知道当前的 ANonce,即发送给AP,它自己的 MAC 地址,和共享秘密;否则,将无法创建相同的 PTK。因此,重放先前握手的记录不会通过 AP 进行身份验证;您将提供一条消息,该消息使用从正确的共享秘密创建的密钥签名,(假设)正确的 MAC 地址,以及一个有效的 SNonce,但与 AP 在开始时发送给您的 ANonce 完全不同的握手。 AP 无法准确判断您的密钥错误的原因,但无论如何您都将无法通过身份验证。

当然,如果 AP 碰巧发送了它在您记录的交易中发送的相同 ANonce,情况就会有所不同。然后你就可以成功地使用你记录的数据进行身份验证,并且 AP 会 none 更聪明。但是,这将毫无用处,因为您仍然没有 encrypt/decrypt 与 AP 交换数据所需的密钥。