IT评测·应用市场-qidao123.com

标题: 链路层安全扩展——L2TP协议 [打印本页]

作者: 鼠扑    时间: 2024-8-6 07:59
标题: 链路层安全扩展——L2TP协议
链路层安全扩展——L2TP协议

PPP协议

协议概念

说到数据链路层的安全协议,我们不得不先提一下PPP协议,背面的PAP、CHAP与L2TP协议都是围绕它睁开的。(PPP不是本文重点,很多细节没有提到,到时间会专开一篇文章讲PPP)
PPP(Point-to-point Protocol,点到点协议)协议是为同等单位之间传输数据包设计的,主要是用来通过拨号或专线方式建立点对点毗连发送数据,使其成为各种主机、网桥和路由器之间简单毗连到一种共同的解决方案。
点对点网络中,一个数据帧的吸取者就是固定的对等端。
PPP规定了以下内容:

协议封装格式

PPP协议的封装格式如下:


协议流程

PPP协议流程如下:


整个过程包括5个阶段:


PAP和CHAP认证协议

PPP协议有两种认证协议,分别是PAP协议CHAP协议
PAP协议

PAP(Password Authentication Protocol)是基于口令认证的方法,被认证方发送Authenticate-Request报文(类型1),此中包罗了身份(通常是账号或者说用户名)和口令信息。
若认证通过,认证方返回Authenticate-Ack(类型2),否则返回Authenticate-Nak(类型3)
PAP协议以明文方式传输身份和口令给网络接入服务器(Network Access Server,NAS)。因此安全性较差,轻易被第三方盗取用户名和口令。
别的,PAP在PPP身份认证过程中,由被认证方发起认证,而且仅在建立链路阶段使用,在数据传输过程中不能用。
下面是PAP两次握手的具体过程:

CHAP协议

**基于挑衅认证的协议(Challenge-Handshake Authentication Protocol)**通过三次握手完成身份认证,我们记认证方为S,其用户名为SU,被认证方为U其用户名为UU,随机数为R,口令为PW,则认证成功的工作过程如下(部分字段没有体现在下文中,详细请参考包格式):
                                         S                            →                            U                            :                            0                            x                            0001                            ,                            I                            D                            ,                            R                            ,                            S                            U                                     U                            →                            S                            :                            0                            x                            0002                            ,                            I                            D                            ,                            H                            a                            s                            h                            (                            P                            W                            ∣                            ∣                            R                            )                            ,                            U                            U                                     S                            →                            U                            :                            0                            x                            0003                            ,                            I                            D                            ,                            M                            e                            s                            s                            a                            g                            e                                  S\to U:0x0001,ID,R,SU \\ U\to S: 0x0002,ID,Hash(PW || R),UU \\ S\to U: 0x0003,ID,Message                     S→U:0x0001,ID,R,SUU→S:0x0002,ID,Hash(PW∣∣R),UUS→U:0x0003,ID,Message

数据包格式如下图所示:


CHAP协议相比PAP协议较安全,它由认证方发起挑衅,使用Hash函数来避免毗连时传输明文,随机数可避免重放攻击,而且不定时重复呼唤用户提供口令来避免第三方冒充
但CHAP也有很多安全隐患:

L2TP协议

相识以上情况后,终于该本文主角登场了!
概念

**第二层隧道协议(Layer 2 Tunnel Protocol, L2TP)**是PPTP协议与Cisco L2F协议联合版本,有一部分采用PPTP,但可以在多种网络传输,突破了PPTP只能在IP网络上的局限性。
我们来看下L2TP相关术语:


实现模式

L2TP有两种实现模式,分别是逼迫模式自愿模式

逼迫模式

逼迫模式如上图中的1用户所示。

逼迫模式下,考虑长途用户对公司总部内联网进行访问的情况,其建立L2TP会话的过程主要包括建立控制毗连和建立会话

自愿模式

自愿模式如上图的2用户所示,要求机器上必须具备LAC客户端。

协议消息



L2TP分组报文首部格式如下:


对于L2TP控制消息格式如下:

L2TP控制消息=L2TP头+AVP(1|n)
IETF界说的所有AVP,从功能上可分为6大类:

AVP格式如下图所示:


L2TP对属性值做加密处理之前首先天生隐蔽AVP子格式(Hidden AVP Subformat, HAS),此中包罗2B的“原属性值长度”以及恣意长度的“原属性值”和“填充”字段。
加密处理时首先将HAS划分为16B的分组,依次为(p1,p2,….,pi)
随后加密过程如下:

此中,AV是2B的属性类型;S是通信双方的共享机密,这个机密和双方实验CHAP时所使用的共享机密相同;RV是随机向量。最终的属性值字段是c1|c2|….|ci。
由于加密属性值需使用RV,所有每个包罗隐蔽AVP的L2TP报文中都应该包罗“随机向量AVP”,且在所有隐蔽AVP之前出现。多个隐蔽AVP可共用同一RV,每个隐蔽AVP都使用其前面最近的RV。
控制毗连

毗连建立


隧道维护


隧道关闭


L2TP呼唤

呼唤建立


会话维护


会话关闭

LAC与LNS都可以作为会话关闭的发起方。
举例来讲,当用户希望停止会话时,他使用PPP Terminate-Request消息关照LAC。LAC并不理解该消息,像其他分组一样封装后发送给LNS。LNS发送Call-Disconnect-Notify 关照LAC,并清除本地与该会话有关的状态量
LAC收到CDN后,也清除相应的状态量,会话停止。
安全性分析



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 IT评测·应用市场-qidao123.com (https://dis.qidao123.com/) Powered by Discuz! X3.4