Alliot's blog

Drcom校园网认证系列(一) 抓包

drcom(俗称小地球)广泛用于各大高校的宽带认证,常见包括三个版本,5.2.0 的P、D、X版。
P版就是在普通的PPPOE拨号的基础上添加了一个客户端与服务器通信认证的过程。
D版直接通过客户端的接口与服务器建立连接。X版复杂许多,一般会先有802.1x认证再进行端口通讯认证。
本教程能够解决大部分的P、D版本,X版本还在测试,其他的版本就不用看了。

说明

本教程大部分内容来自网络各大牛的帖子与文章,大牛众多且出名,就不一一感谢与强调其版权。博主只进行了测试与整理以及部分错误的修正,所产生的一切后果,一概不负责。仅供学习与交流,请勿用于商业用途!

所有用到的材料:链接:http://pan.baidu.com/s/1bpl3Hsb 密码:0our

开始

确定所使用的客户端版本

打开学校的客户端,右上角可以看到ver5.2.1(*)
版本

电脑安装必要软件

python2.7(调试用到)、wireshark(抓包工具)、notepad++(修改代码用到),网上都有的,自己找一下,这里就不贴出来了。

网络抓包

1、 先断开网络,注销并关闭drcom客户端。
2、 打开wireshark,选中你联网用的那个连接。点击start!如图所示:
wireshark抓包
软件会进入如下界面
运行截图
现在打开drcom客户端,拨号连接并在线保持1分钟左右,然后注销,完全关闭drcom后,选择wireshark的停止抓包,选择File-save 选择保存路径,并重命名该文件为dr.pcapng (拓展名为.pcang)
完成抓包

对抓包后的数据进行分析

1、 把下载的drcom_p_config.py 和latest-pppoe.py和dr.pcapng放入一个文件夹中,且将文件夹命名为a
2、 用notepad2打开drcom_p_config.py 把里边的998改为dr.pcapng (改好了的就忽略) 并保存。

3、 右键我的电脑—属性—高级系统设置—环境变量—在系统变量找到path—编辑—新建—在框里输入python2.7的安装目录,并保存。关闭窗口。
4、开始-运行 cmd进入命令提示符。输入文件夹所在的盘符,我的是在F盘 输入F:并回车。

1
CD a

输入

1
python drcom_p_config.py > config.txt

cmd
5、进入到你的a文件夹,发现里面多了一个config.txt文件。用Notepad++打开(为避免不必要的麻烦,以下操作所有的文件全部用它)
类似这样的:

1
2
3
4
5
server = '*.*.*.*'
pppoe_flag = '\x00'
keep_alive2_flag = '\xdc'

全选复制
关闭,并把config.txt重命名为drcom.conf
5、打开latest-pppoe.py 将#CONFIG 到 # CONFIG_END 中间的部分粘贴成刚才的。
6、测试是否可用。
  ①打开命令提示符 将latest-pppoe.py拖进去并回车
  ②同时用电脑的宽带拨号进行拨号。看看能不能上网。可以的话,就说明抓包没错。

如果此文为您解决燃眉之急或是带来些许明朗,不妨打赏Alliot一杯香茗或是一杯咖啡