标题:
[经验分享]
在Linux下搞定了xx电信的PPPOE认证 (转自熊叔国外blog)
[打印本页]
作者:
crazysteven
时间:
2010-11-30 13:44
标题:
在Linux下搞定了xx电信的PPPOE认证 (转自熊叔国外blog)
本帖最后由 crazysteven 于 2010-11-30 13:48 编辑
既然有人说我做了重复的工作,我Google一下,果然如此,送上链接:
http://cookinglinux.cn/pppoe-share.html
(貌似挂了)
顺便说一句,其实仅仅想破解他的反代理就更简单了,随便找个无关紧要的程序,比如ping.exe替换安装目录下的netsvchost.exe就行- -
===原文分割线≡ω≡===
xx电信最近吧PPPOE客户端升级到了一个恶心的东西上,虽然说这个东西要比那个什么狗屁DrCom要强一些,起码不会弹广告,但是一个 PPPOE拨号器竟然能用到16M内存,这是什么精神?这是在经济危机的大环境下拉动内存内需的国际主义精神啊!而且最恶心的是这东西还封装了防代理。严重的干扰和违背了网络中立性的原则(虽然这在天朝是潜规则)。
当然,一如既往的,电信也不会提供Linux的接入方法的。所以某熊遵循太祖的教导,自己动手丰衣足食。先逆向了那个拨号器,然后又山寨了一套linux用的算法。
其实某熊根本没好好学过汇编,对Linux也是二把刀水平,但是他的拨号器太弱智,所以没费多大劲就搞定了。
直接出结果好了,其实他的认证就是在用户名前面添加了一段字符串(似乎基本上所有的PPPOE认证都这么玩?比如臭名昭著的互联星空),结构如下:
(注:算法已经失效,自己继续研究去吧
)
首先是一个头:~
ghca
意味不明。然后紧跟一个随机生成的8字符的token(官方实现和时间有关但是仅仅用时间当作随机源),然后是分隔符1000,之后是一个MD5 Hash,Hash的内容是前面的token+”EXTR”+用户名 取前10字节用16进制表示。最后就是用户名了,而密码没有处理。
注:各位仁兄,希望您嘴下留情,不要到处传播,也不要搞什么太大的、过火的动作,自己偷着乐就行了,维护自己的权益但是一切以不伤害他人利益为原则吧,我被电信换客户端弄烦了,而且PPPOE要比那个DRCOM方便很多。再次拜谢。
知道了这些自然就可以写出一个pppd的插件hook用户名和密码提交就行了。插件写的很烂代码,在后面留着刷屏用。正文最后再吐槽一下电信竟然用PAP认证,拜托你是在校园网环境下提供接入唉,就不考虑一下嗅探之类的问题么- –
使用方法:
下载ppp的源码,吧代码放到pppd/plugins里面 用cc -I.. -I../../include -shared -o
ghca
.so
ghca
.c编译。
编辑/etc/ppp/options (或者其他的options文件,看你自己的设定了) 添加:
plugins /path/to/your/
ghca
.so
ghca_user 用户名
ghca_passwd 密码
就可以了。
反
正
以下代买比较陈旧,算法已经过期,所以划去了。。。。。囧,不要怪我我
====代码刷屏分割线====
本帖隐藏的内容需要回复才可以浏览
作者:
fzzt
时间:
2011-3-1 15:52
路过看看……
作者:
liyafe1997
时间:
2012-5-25 22:35
呵呵,这帖子当时我都没有看到啊。
现在才发现。
欢迎光临 稻草软件论坛 (http://www.dcrjs.com/)
Powered by Discuz! 7.2