Author:zumikua Updated at:2013-11-06 12:56:46 UTC
zdcclient作为从09年开始服役的一个非官方认证客户端到现在还能够完成基本的认证功能实属不易,感谢神州数码公司的不思进取让我们能够在与官方、闭源的认证客户端对抗的拉锯战中获得暂时的喘息之机。
感谢pentie大神开源出来的zdcclient,感谢他为我们带来的深入浅出的[教程](http://apt-blog.net/tag/8021x)。
本文所述内容仅在武汉大学文理学部的网络环境中获得过测试。
zdcclient现在因协议的更新已经不能胜任本地的校园网环境了,在成功认证的两到三分钟后便会失去网络响应。在观察zdcclient的log后可以发现,zdclient经常会截获到Unknown的包,其eap_type位的数据为0xfa。后根据原版客户端的抓包发现,该0xfa包即为改进后的REQUEST_IDENTITY_KEEP_ALIVE包,其中附带了4字节的数据(attach_key)。因zdcclient中并未有对此包的相应代码,所以无法回传对应的保鲜报文,导致在认证后因长时间没有回传保险报文而被强制断线。
在了解问题的症结后我们开始着手研究RESPONSE_IDENTITY_KEEP_ALIVE报文的具体格式。经过推理与验证,发现其是由原版RESPONSE_IDENTITY_KEEP_ALIVE修改而来。其中EAP通信id与REQUEST中的id相同(在测试中按顺序递增),EAP协商类型为0xfa。而其中原本应该是用户名ASCII字符串的地方则变为了md5(用户名ASCII+REQUEST中提供的attach_key)。最后在EAPOL的尾部的DCBA信息体中没有了占据13字节的客户端版本信息, 只剩33字节。
由此我们便可以构造出对应的保鲜报文,具体还请参考程序。
git:https://gitcafe.com/ZumiKua/zdcclient4whu/
参考资料:
http://apt-blog.net/details_about_802_1x_in_campus_authentication_1
http://apt-blog.net/eap_explaination_2
Author:zumikua Updated at:2013-11-02 15:17:05 UTC
一个把磁链自动转为种子的下载地址的脚本而已,无任何技术含量可言
```
// ==UserScript==
// @name magnet2torrent
// @namespace magnet_to_torrent
// @description
// @include http://www.hacg.me/*
// @version 1
// @grant none
// @require http://code.jquery.com/jquery-1.8.2.min.js
// ==/UserScript==
$(".entry-content pre").each(function(){
s = $(this).html();
s = s.replace(/magnet:?xt=urn:btih:([a-z0-9]+)$/gm,function(url,hash){
hash = hash.toUpperCase();
return "
就知道撸,撸你麻痹";
});
$(this).html(s);
});
```
使用迅雷的接口,不保证稳定性。
使用方法:
安装完油猴子插件以后去
[这里](http://userscripts.org/scripts/show/181383)
点击右上角的install安装即可