技术
DrCom 5.2.1(X) 版协议分析 —— 序
引言
本文仅适用于韶关学院南区、西区宿舍拨号的 DrCom 5.2.1(X) 客户端。
在生活中我们经常会用到无线 Wi-Fi 网络,而本人所就读的学校西区宿舍区使用的是 DrCom 5.2.1(X) 版本的客户端,官方发布有 Windows, Linux, MacOS 三大平台的版本,经过测试只有 Windows 版本可正常使用,且仅有的 Windows 版本对 Wi-Fi 共享工具做出限制,优化差到检测到 Wi-Fi 共享软件就会 CPU 爆炸(占用100%),在拨号过程中以及拨号后容易出现掉线或无法上线的情况。由于本人秉承着爱作死,爱折腾的精神,对学校使用的拨号客户端通信协议进行分析。
工具准备
- Wireshark —— 抓包工具
- IDA Pro —— 反汇编工具
- DrCom 5.2.1 (X) —— 拨号客户端
- g++ —— C++ 编译环境,用于测试算法
- Office PowerPoint —— 方便分析协议
初步分析
第一次接触这种内网拨号客户端,从 Github 上 EasyDrcom 大佬的项目可以了解到,P版客户端认证使用 802.1x 协议进行内网认证,再用 PPPOE 进行外网认证。而作为X版,协议方面应该不会有太大的差异。为了验证这一说法是否符合我们的客户端,在这里使用 Wireshark 抓包工具对客户端拨号全过程进行抓包。