超详细!深入分析PPTP虚拟专用网搭建与抓包
PPTP虚拟专用网搭建与抓包分析实验
实验目的:掌握PPP协议VPN的搭建,通过分析pptp建立,理解chap连接建立的过程
实验过程:
- 环境搭建
- Windows 11系统
- VMware虚拟机、kaliLinux系统,kali系统使用NAT模式上网
- Wireshark抓包软件
- RFC2759文档
- 配置pptp
安装pptp服务
安装wireshark服务
2.配置pptpd.conf
3.编辑PPP选项配置文件
4.编辑用户文件添加用户
5.重启PPTPD服务
- Windows主机作为客户端连接PPTP VPN
连接成功
- 使用wireshark抓包分析
Pptp建立在tcp协议上,首先是tcp三次握手建立连接
客户端向服务器的1723端口发送syn包,服务端收到回复SYN,ACK;客户端回复ACK
Pptp控制-链接请求建立:
客户端发送start-control-connection request
服务端回应start-control-connection reply
客户端发送Outgoing-Call-Request,请求建立PPTP隧道,该消息包含GRE报头中的Callid,该id可唯一地标识一条隧道
服务端发送Outgoing-Call-Reply,应答客户端的建立PPTP隧道请求
客户端发出Set-Link-info,设置PPP协商的选项
PPP协议的LCP协商
双方协调配置参数
身份认证
1.Server向Client发送Challenge,其中包括一个Challenge string(value字段)和Server Name(pptpd)MS-CHAP-V2身份验证程序发送16个八位字节的质询值字段
2、Client向Server发送Response,其中用户名使用明文发送,密码(syberos)和Challenge字段混合hash后以密文(value字段)形式发送,对等质询字段是一个16个八位组的随机数。顾名思义,它由对等方生成,并用于计算NT响应字段
3、Server读取密码文件,对用户身份进行验证,验证成功,向Client发送Success,表示身份验证成功,消息字段包含42个八位字节的验证器响应字符串和可打印消息