Wifi 认证,关联,四次握手(WPA/WPA2/WPA3-SAE)

这篇具有很好参考价值的文章主要介绍了Wifi 认证,关联,四次握手(WPA/WPA2/WPA3-SAE)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

引入

WPA3-SAE也是针对四次握手的协议。

四次握手是 AP (authenticator) 和 (supplicant)进行四次信息交互,生成一个用于加密无线数据的秘钥。

这个过程发生在 WIFI 连接 的 过程。


为了更好的阐述 WPA3-SAE 的作用 和 凸显其优点。我们需要借助 WPA2-psk 来做对比。

先来简单阐述一下 WPA2-psk …

WPA / WPA2 中的四次握手

这是一次连接过程:

Wifi 认证,关联,四次握手(WPA/WPA2/WPA3-SAE)

其中 四次 eapol key 属于四次握手的过程。
具体过程请参考: Wifi_认证 、关联 和 四次握手(WPA/WPA2)

注意:WPA 系列协议 描述的 不仅仅是 握手过程。

握手过程 采用的算法优点为:

  • 秘钥的生成具有隔离性
    • 不同的 STA 与 同一个 AP 不会生成相同的秘钥
    • 同一个 STA 连接 AP 的不同过程 也不会产生相同的秘钥
  • 预共享WIFI密码 PSK,使得 WIFI 网络有了不错的可控性

优点 可圈可点,但缺点也相对明显。

WPA2-psk 最大的问题就是 不在安全了!!

破解教程层出不穷,安全升级迫在眉睫。


WPA2-psk 的安全性

迫在眉睫:2017年10月,802.11协议中,沿用了 13年的 WPA2 加密协议 被完全破解了。

先理解 WPA2-psk 的简要过程:(四次握手)

Wifi 认证,关联,四次握手(WPA/WPA2/WPA3-SAE)
从这个过程中 我们看出:

  • 预共享 PSK 参与了生成 PTK 的计算
  • PTK 也负责了 对 PSK 的 验证
  • 双方都有随机数的产生,赋予了 PTK的不唯一性。

最终 由 PTK 负责后续 Data 数据的 加密

PTK的保密性 直接决定着 用户数据的安全性

由此可见,窥探者 除了 PSK 和 PTK 不能从空中抓到,其他参与计算的值都能抓到

PMK = SHA-1(ESSID + PSK)
PTK = PRF(PMK + ANonce + SNonce + Mac(AA) + Mac (SA))

SHA-1 和 PRF 这两个函数 是 公开的


攻击者 一旦抓到 4次握手的包,便能离线暴力破解 PSK

之后便可以利用PSK去生成 PTK,进而窥探 用户数据。

WPA2-psk 破解原理

核心:想办法抓到四次握手的包

大致分为一下几个步骤:

  • 明确 破解目标 AP 之后,针对某个已连接的 STA 伪造出一个 Deauthentication 帧扰乱现有 STA 与 目标AP 的连接
  • Deauthentication(取消身份验证帧)会让 目标AP 将当前 STA 从自己的关联表中踢出(也就是断开连接了)
  • AP 主动断开 STA 之后,会给 STA 发一个确认包,STA收到确认包之后 便会进行重连(毕竟不是 STA 自己真的想断开)
  • 触发重连之后,趁机 抓取四次握手的空口包,带回家分析。
  • 然后用字典法暴力破解

由此可见对 WPA2-PSK 的安全性已经支离破碎,对其的改进也是箭在弦上。


WPA3


WPA3-Personal 基于IEEE Std 802.11-2016 中定义的 SAE。

SAE 采用了“互联网工程任务组(IETF)”RFC7664 规范中定义的 “蜻蜓(Dragonfly)” 握手协议,将其应用于 Wi-Fi 网络以进行基于密码的身份验证。

针对 WPA2 的通病,WPA3 在各个场景下 都给出了不错的解决方案。

比如针对 WPA2-psk 的协议 ——WPA3-SAE 做了两点 具有革命性的优化。

  1. 针对暴力破解攻击的防护得到了提升。

    即使用户没有设置较为复杂的密码。

  2. 提供了正向加密,即使攻击者知道了PSK 也无法窥探用户的数据。

WPA3-Personal 的连接交互过程

Wifi 认证,关联,四次握手(WPA/WPA2/WPA3-SAE)
从上图我们能看出 与 WPA2 最明显的差别就是 认证过程

WPA3-SAE 的认证过程 变得繁琐了,从两帧变成了四帧

SAE 认证过程(Authentication)

WPA3-Personal 基于IEEE Std 802.11-2016 中定义的 SAE。SAE 采用了“互联网工程任务组(IETF)”RFC7664 规范中定义的 “蜻蜓(Dragonfly)” 握手协议,将其应用于 Wi-Fi 网络以进行基于密码的身份验证。

这个认证过程 会校验 PSK 的正确性,也会生成 PMK,供后续握手使用。

Wifi 认证,关联,四次握手(WPA/WPA2/WPA3-SAE)

上图只是WPA3-SAE的认证过程,但似乎这已经完成了信息的校验 和 秘钥关键元素的生成。

站在用户的角度,设备连接这两种协议(WPA2-personal 和 WPA3-SAE)的热点没有任何操作上的区别。

  • 都是要预先得知PSK(也就是AP密码)

那么让我们对比着 WPA2-personal 的“不安全”,来看看 WPA3-SAE 的“安全”。

详细阐述一下上图的过程:

  • 首先 STA 和 AP 都有预留的 PSK,并且兵分两路生成各自的产物。
  • 先通过ECC 对原始 PSK 进行映射。

    这算是第一层保护,如若攻击者不清楚 椭圆函数的参数,便无法进行下一步。

  • STA 生成随机数 rS ;AP 生成随机数 rA 。
  • STA 将 P · rS 传给 AP
  • Ap 将 P · rA 传给 STA

    " · " 这里的运算符不是 “乘法”,是一种特殊的算法,正因如此,WPA3 - SAE 才安全。

    • 这种算法 似乎遵循一定程度的“结合性”,但又不可逆。

      就是说 : P · rS 推不出 rS, 抓到包了也没用。但 P · rS · rA 在三个元素的顺序 不影响整体的结果。(妙啊!!!)

  • 后续就是进行一个 Hash 算法,再进行对比。当然在这个过程中也顺便生成了核心秘钥数据 (PMK)
  • 校验通过之后,双方用各自生成的 PMK 进行 “四次握手” 来生成用来给 Data 数据加密的 秘钥。

上述流程可以完美 “格挡” 传统的破解手法。

今天SAE先聊到这儿,后续有想到的在补充。文章来源地址https://www.toymoban.com/news/detail-409124.html

That’s all, thank you !!!

到了这里,关于Wifi 认证,关联,四次握手(WPA/WPA2/WPA3-SAE)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【网络|TCP】三次握手、四次握手

    TCP是一种面向连接的可靠的传输协议,建立和断开TCP连接时需要进行握手的过程。其中,TCP的连接建立需要进行三次握手,而连接断开则需要进行四次握手。 三次握手 第一次握手:客户端发送一个SYN(同步)报文给服务器,表示客户端请求建立连接。这个报文中包含一个初

    2024年02月14日
    浏览(39)
  • TCP三次握手、四次握手过程,以及原因分析

    TCP的三次握手和四次挥手实质就是TCP通信的连接和断开。 三次握手:为了对每次发送的数据量进行跟踪与协商,确保数据段的发送和接收同步,根据所接收到的数据量而确认数据发送、接收完毕后何时撤消联系,并建立虚连接。 四次挥手:即终止TCP连接,就是指断开一个T

    2024年02月14日
    浏览(35)
  • 三次握手四次挥手

    TCP协议是一种面向连接的、可靠的、基于字节流的运输层通信协议。它通过三次握手来建立连接,通过四次挥手来断开连接。 所谓三次握手,是指建立一个TCP连接时,需要客户端和服务器总共发送3个报文。三次握手的目的是连接服务器指定端口,建立TCP连接,并同步连接双

    2024年02月09日
    浏览(38)
  • TCP 三次握手:四次挥手

    TCP 三次握手/四次挥手 TCP 在传输之前会进行三次沟通,一般称为“三次握手”,传完数据断开的时候要进行四次沟通,一般称为“四次挥手”。 数据包说明 源端口号( 16 位):它(连同源主机 IP 地址)标识源主机的一个应用进程。 目的端口号( 16 位):它(连同目的主机

    2024年01月19日
    浏览(43)
  • TCP的三次握手、四次挥手

    首先我们要知道建立连接的目的是什么,我们是为了可靠的传输数据。那既然是可靠的传输数据,我们必须保证客户端和服务端都能正常的发送和接收数据,如果某一方不能正常的发送或者接收数据,那整个数据的传输就不能成功,也就不可靠。 三次握手 1.第一次握手:第一

    2024年02月10日
    浏览(44)
  • TCP的三次握手,四次挥手

    第一次握手:客户端发送SYN报文,井发送seq为x序列号给服务端,等待服务端的确认 第二次握手:服务端发送SYN+ACK报文,并发送seq为Y的序列号,在确认序列号为x+1 第三次握手:客户端发送ACK报文,并发送seq序列号为z,在确认序列号为y+1 第一次挥手:先由客户端向服务器端发

    2024年01月18日
    浏览(75)
  • TCP三次握手四次挥手

    目录 一、基础理论 1、TCP的标志位 2、TCP的状态码 二、TCP连接的建立与释放 1、三次握手 第一次握手: 第二次握手: 第三次握手: 2、四次挥手 第一次挥手: 第二次挥手: 第三次挥手: 第四次挥手: 三、更多面试题参考 标志位 含义 SYN(synchronous) 在建立连接时使用,表示

    2024年02月19日
    浏览(50)
  • TCP 三次握手&四次挥手浅析

    大家都知道传输层中的TCP协议是面向连接的,提供可靠的连接服务,其中最出名的就是三次握手和四次挥手。 三次握手的交互过程如下 喜欢钻牛角尖的我在学习三次握手的时候就想到了几个问题:为什么三次握手是三次?不是一次、两次或者更多?如果是两次或者是一次会

    2024年02月15日
    浏览(91)
  • Websocket及三次握手/四次挥手

    Websocket-实时通信 之前一直听说Websocket,但也一直没有使用过,今天突然又看到了,还挺感兴趣的,可以一起看看 原理:浏览器间隔几秒发送一次请求,询问服务器是否有新消息出现,持续 优点:实现简单,大部分浏览器和服务器支持 缺点:频繁的请求和响应会导致不必要

    2024年02月20日
    浏览(48)
  • TCP三次握手和四次挥手

    序列号:建立连接时计算机随机生成的随机数作为初始值,通过SYN包传给接收端主机,每发送一次数据就累加一次该数据字节数的大小。 用来解决网络包乱序问题 。 确认应答号:指下一次期望收到的数据的序列号,发送端收到这个确认应答以后认为在这个序号以前的数据都

    2023年04月11日
    浏览(92)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包