EAP-PEAP&EAP-TLS认证具体流程分析.docx

上传人:b****1 文档编号:265812 上传时间:2022-10-08 格式:DOCX 页数:16 大小:750.02KB
下载 相关 举报
EAP-PEAP&EAP-TLS认证具体流程分析.docx_第1页
第1页 / 共16页
EAP-PEAP&EAP-TLS认证具体流程分析.docx_第2页
第2页 / 共16页
EAP-PEAP&EAP-TLS认证具体流程分析.docx_第3页
第3页 / 共16页
EAP-PEAP&EAP-TLS认证具体流程分析.docx_第4页
第4页 / 共16页
EAP-PEAP&EAP-TLS认证具体流程分析.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

EAP-PEAP&EAP-TLS认证具体流程分析.docx

《EAP-PEAP&EAP-TLS认证具体流程分析.docx》由会员分享,可在线阅读,更多相关《EAP-PEAP&EAP-TLS认证具体流程分析.docx(16页珍藏版)》请在冰豆网上搜索。

EAP-PEAP&EAP-TLS认证具体流程分析.docx

EAP-PEAP&EAP-TLS认证具体流程分析

EAP-PEAP认证具体流程分析(结合radius认证协议及抓包)

1.1EAP-PEAP背景

EAP:

(ExtensibleAuthenticationProtocol)可扩展认证协议。

EAP属于一种框架协议,最初规范于RFC2284,后来经RFC3748更新。

EAP是一种简单的封装方式,可以运行于任何的链路层,不过它在PPP链路上并未广泛使用。

EAP的基本架构如图所示:

EAP认证方式(EAPMethod)。

EAP会把证明使用者身份的过程,授权给一个称为EAPmethod的附属协议,EAPmethod乃是一组验证使用者身份的规则。

使用EAPmethod的优点是,EAP从此可以不用去管验证使用者的细节。

当新的需求浮现时就可以设计出新的认证方式,就算要用于无线局域网也不成问题。

常用的EAP认证方法如下图所示:

PEAP,受保护的EAP(ProtectedEAP)。

PEAP是由Microsoft、Cisco和RSASecurity共同开发,在EAP框架中基于证书+用

户名密码实现用户WLAN接入鉴权。

PEAP是EAP认证方法的一种实现方式,网络侧通过用户名/密码对终端进行认证,终端侧通过服务器证书对网络侧进行认证。

用户首次使用PEAP认证时,需输入用户名和密码,后续接入认证无需用户任何手工操作,由终端自动完成。

1.2EAP-PEAP技术原理

PEAP(ProtectedEAP)实现通过使用隧道在PEAP客户端和认证服务器之间进行安全认证。

EAP客户端和认证服务器之间的认证过程有两个阶段。

第一阶段:

建立PEAP客户端和认证服务器之间的安全通道,客户端采用证书认证服务端完成TLS握手。

服务端可选采用证书认证客户端。

第二阶段:

提供EAP客户端和认证服务器之间的EAP身份验证。

整个EAP通信,包括EAP协商在内,都通过TLS通道进行。

服务器对用户和客户端进行身份验证,具体方法由EAP类型决定,在PEAP内部选择使用(如:

EAP-MS-CHAPv2)。

访问点只会在客户端和RADIUS服务器之间转发消息,由于不是TLS终结点,访问点无法对这些消息进行解密。

目前被WPA和WPA2批准的有两个PEAP子类型PEAPV0-MSCHAPV2,PEAPV1-GTC,使用广泛的是PEAPV0-MSCHAPV2。

1.3PEAP用户接入流程

图1PEAP用户接入流程

E1认证初始化

1)WLANUE向WLANAN发送一个EAPoL-Start报文,开始802.1x接入的开始。

2)WLANAN向WLANUE发送EAP-Request/Identity报文,要求WLANUE将用户信息送上来。

3)WLANUE回应一个EAP-Response/Identity给WLANAN的请求,其中包括用户的网络标识。

用户ID,对于PEAP-mschchapv2认证方式的用户ID是由用户在客户端手动输入或者配置的。

此次用户名建议同用户的portal认证用户名密码。

4)WLANAN以EAPOverRADIUS的报文格式将EAP-Response/Identity发送给Radius,并且带上相关的RADIUS的属性。

5)Radius收到WLANAN发来的EAP-Response/Identity,根据配置确定使用EAP-PEAP认证,并向WLANAN发送RADIUS-Access-Challenge报文,里面含有Radius发送给WLANUE的EAP-Request/Peap/Start的报文,表示希望开始进行EAP-PEAP的认证。

6)WLANAN将EAP-Request/PEAP/Start发送给WLANUE。

E2建立TLS通道

7)WLANUE收到EAP-Request/Peap/Start报文后,产生一个随机数、客户端支持的加密算法列表、TLS协议版本、会话ID、以及压缩方法(目前均为NULL),封装在EAP-Response/TLS/ClientHello报文中发送给WLANAN。

8)WLANAN以EAPOverRADIUS的报文格式将EAP-Response/TLS/ClientHello发送给认证服务器Radius,并且带上相关的RADIUS的属性。

9)Radius收到ClientHello报文后,会从Client的Hello报文的加密算法列表中选择自己支持的一组加密算法+Server产生的随机数+Server证书(包含服务器的名称和公钥)+证书请求+Server_Hello_Done属性形成一个ServerHello报文封装在EAP消息中,使用Access-Challenge报文发送给WLANAN。

10)WLANAN把Radius报文中的EAP-request消息发送给WLANUE.

11)WLANUE收到报文后,进行验证Server的证书是否合法(使用从CA证书颁发机构获取的根证书进行验证,主要验证证书时间是否合法,名称是否合法),即对网络进行认证,从而可以保证Server的合法。

如果合法则提取Server证书中的公钥,同时产生一个随机密码串pre-master-secret,并使用服务器的公钥对其进行加密,最后将加密的信息ClientKeyExchange+客户端的证书(如果没有证书,可以把属性置为0)+TLSfinished属性封装成EAP-Rsponse/TLSClientKeyExchange报文发送给WLANAN.如果WLANUE没有安装证书,则不会对Server证书的合法性进行认证,即不能对网络进行认证。

12)WLANAN以EAPOverRADIUS的报文格式将EAP-Response/TLSClientKeyExchange发送给认证服务器Radius,并且带上相关的RADIUS的属性

13)Radius收到报文后,用自己的证书对应的私钥对ClientKeyExchange进行解密,从而获取到pre-master-secret,然后将pre-master-secret进行运算处理,加上WLANUE和Server产生的随机数,生成加密密钥、加密初始化向量和hmac的密钥,这时双方已经安全的协商出一套加密办法了。

Radius将协商出的加密方法+TLSFinished消息封装在EAPoverRadius报文Access-Challenge中,发送给WLANAN。

14)WLANAN吧Radius报文中的EAP-Request消息发送给UE。

15)WLANUE回复EAPResponse/TLSOK消息。

16)WLANAN将EAPResponse/TLSOK消息封装在Radius报文中,告知Radius建立隧道成功。

至此WLANUE与Radius之间的TLS隧道建立成功。

E3认证过程

17)WLANAN把Radius报文中的EAP域提取,封装成EAP-request报文发送给WLANUE。

18)WLANUE收到报文后,用服务器相同的方法生成加密密钥,加密初始化向量和hmac的密钥,并用相应的密钥及其方法对报文进行解密和校验,然后产生认证回应报文,用密钥进行加密和校验,最后封装成EAP-response报文发送给AP,AP以EAPOverRADIUS的报文格式将EAP-Response发送给认证服务器RadiusServer,并且带上相关的RADIUS的属性,这样反复进行交互,直到认证完成。

在认证过程中,RadiusServer会下发认证后用于生成空口数据加密密钥(包括单播、组播密钥)的PMK给WLANUE。

19)服务器认证客户端成功,会发送Access-Accept报文给WLANAN,报文中包含了认证服务器所提供的MPPE属性。

20)WLANAN收到RADIUS-Access-Accept报文,会提取MPPE属性中的密钥做为WPA加密用的PMK,并且会发送EAP-success报文给WLANUE。

E4地址分配

21)WLANUE和WLANAN间的空中数据报文进行加密传送,与WLANAN进行DHCP流程交互,直至WLANUE获取IP地址

E5计费开始

22)WLANUE通过RADIUS-Accounting-Request(Start)报文通知Radius开始进行计费,含有相关的计费信息。

23)Radius向WLANUE回应RADIUS-Accouting-Response(Start)报文,表示已开始计费。

1.3.1STA&radiusserver上抓包分析

(一)在STA上打开wireshark,在captureoption选项中选择对应的无线网卡,并把capturepacketsinpromiscuousmode前面的勾去掉,过滤eap||eapol||bootp的数据包。

PEAP认证成功时,STA的抓包如下(该抓包是抓的STA---AP之间的EAPoL包):

和“PEAP用户接入流程图”中的步骤相对应,步骤与包的对应关系如下图所示:

1

2

3

6

7

10

11

14

15

21

(二)在radiusserver上打开wireshark,在captureoption选项中选择对应的无线网卡,并把capturepacketsinpromiscuousmode前面的勾去掉,过滤radius的数据包。

PEAP认证成功时,radiusserver上的抓包如下,(该抓包是抓的AP—Radiusserver之间的EAPoverRadius包):

和“PEAP用户接入流程图”中的步骤相对应,步骤与包的对应关系如下图所示:

4

5

8

9

12

13

16

20

1.4PEAP用户下线流程

用户下线流程包括用户主动下线、网络下线和异常下线三种情况。

图2给出了用户主动下线流程,图3给出了网络下线流程,图4给出了用户异常下线流程。

1.用户主动下线

图2用户主动下线流程

1)WLANUE主动终止会话,发起EAPoL-logoff请求退出网络。

2)WLANAN向AAAServer发送计费停止请求的报文。

3)AAAServer向WLANAN回复计费停止请求报文的响应。

2、网络发起用户下线

图3网络发起下线流程

1)出于管理目的,网络发起下线流程,可以由AAAServer触发Disconnect-Request给WLANAN。

2)WLANAN终止用户会话,释放用户会话资源。

3)WLANAN向AAAServer回复Disconnect-ACK消息。

4)WLANAN向AAAServer发送计费停止请求的报文。

5)AAAServer向WLANAN回复计费停止请求报文的响应。

3、网络发起用户下线

图4用户异常下线流程

1)WLANAN检测固定时间内流量小于阈值或者通过KeepAlive机制检测发现用户已经不在线。

2)WLAN用户接入认证点向Radius发送计费停止请求的报文

3)Radius向WLAN用户接入认证点回计费停止请求报文的回应

1.5MS-CHAPV2认证流程

图4MS-Chapv2用户认证流程

1)Radius在TLS通道内发起EAP-

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 法学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1