没办法 现在的这些人,都是饭桶,就是这样,自己没有什么本事,混了个事就吊的很。
基本上每个学校的网络中心都是这个样子的
港湾 <请使用文明用语>你老母,垃圾公司
被系统过滤成这个样子了,好玩
感觉Dr.com也不是很好用,好像就是加了个winsock,和Windows下某些软件有冲突 802.11的实现好像就是这样的。
可能学校在某些地方做了改动,例如计费等等,这样标准的客户端可能就搞不定了。 如果真的是不兼容标准协议造成的
也许需要抓包分析,或反向工程了。这样也太吃力不讨好了
港湾好像是卖设备的。
我这只能用无线网卡来模拟,我能想到的,搞得到的,采用802.1x认证的设备就只有无线网卡了。
另:
802.11是无线局域网的协议
802.1x才是负责认证的 晕。犯低级错误了 :-D。道歉一个
这种认证方式还是用得非常多的。不过一旦认证没过,什么packet都发不出去。 有什么办法模拟,硬的,软的都行? 现在有些交换机就支持这种认证方式。模拟还真不太好办。
我见过的一个程序是用pcap来直接生成认证包来访问。不过拿不到source,这个程序涉及计费,所以属于"机密" :-(
802.1x是第二层的协议,有些第二层的交换机可以开启这项功能,但我去哪里借这样的交换机呀。
交换机就别想了 我用siniffer pro抓过港湾的包,密码是没有经过md5加密就发送老
所以那些认证对港湾无效(呵呵) 照LZ的意思就是没有办法解决港湾的认证
既然 密码是没有经过md5加密就发送老 那MD5加密的是什么呢? 那些认证对密码进行老md5加密,而港湾没有加密,当然发送的包都不一样,怎么可能通过认证嘛
只有对其源码修改才行 那些认证对密码进行老md5加密,而港湾没有加密,当然发送的包都不一样,怎么可能通过认证嘛
只有对其源码修改才行
如果真是这样,对源码的修改不难吧。
楼主可以试试。
据我所知
据我所知,我们学校的港湾应该没有加入计费机制,因为,学校是按包月收费的,不论流量大小。to:色大侠,我的编程水平很差,让我修改源码是修改不来的。
to:西南石油大学,我们学校用的当然是港湾了,要不然,我干吗发这个求助贴。咱们两个都好惨啊,内联网却不能上网。 我正在写这个程序,但是到发送密码这一步它就不成功,老是fail.我都郁闷惨老 cheaper
精神上支持 ^_^
继续努力 终究会成功的 ^_^
辛苦了 直接修改xsupplicant-1.2.4\src\eap_types\md5\eapmd5可能会快一点
发送帧的DATA部分是在函数
int eapmd5_process(struct generic_eap_data *thisint, u_char *dataoffs,
int insize, u_char *outframe, int *outsize)
中生成的。
关键是要分析发送帧的DATA部分在港湾的认证系统中是什么结构。
更好一点的办法还是修改\xsupplicant-1.2.4\src\eap.c
添加自己的认证方式
主要是两个地方:
struct eap_type_handler eaphandlers[] = {
{EAP_TYPE_MD5, "EAP_MD5", eapmd5_setup, eapmd5_process, eapmd5_get_keys,
eapmd5_failed, eapmd5_cleanup},
{EAP_TYPE_TLS, "EAP_TLS", eaptls_setup, eaptls_process, eaptls_get_keys,
eaptls_failed, eaptls_cleanup},
{EAP_TYPE_TTLS, "EAP_TTLS", eapttls_setup, eapttls_process, eapttls_get_keys,
eapttls_failed, eapttls_cleanup},
{EAP_TYPE_MSCHAPV2, "EAP_MSCHAPV2", eapmschapv2_setup, eapmschapv2_process,
eapmschapv2_get_keys, eapmschapv2_failed, eapmschapv2_cleanup},
{EAP_TYPE_PEAP, "EAP_PEAP", eappeap_setup, eappeap_process, eappeap_get_keys,
eappeap_failed, eappeap_cleanup},
{EAP_TYPE_LEAP, "EAP_LEAP", eapleap_setup, eapleap_process, eapleap_get_keys,
eapleap_failed, eapleap_cleanup},
#ifdef EAP_SIM_ENABLE
{EAP_TYPE_SIM, "EAP_SIM", eapsim_setup, eapsim_process, eapsim_get_keys,
eapsim_failed, eapsim_cleanup},
{EAP_TYPE_AKA, "EAP_AKA", eapaka_setup, eapaka_process, eapaka_get_keys,
eapaka_failed, eapaka_cleanup},
#endif
{EAP_TYPE_OTP, "EAP_OTP", eapotp_setup, eapotp_process, eapotp_get_keys,
NULL, eapotp_cleanup},
{EAP_TYPE_GTC, "EAP_GTC", eapotp_setup, eapotp_process, eapotp_get_keys,
NULL, eapotp_cleanup},
{NO_EAP_AUTH, NULL, NULL, NULL, NULL, NULL, NULL}
};
和
// Header files for auth types we know about.
#include "eap_types/md5/eapmd5.h"
#include "eap_types/tls/eaptls.h"
#include "eap_types/ttls/eapttls.h"
#include "eap_types/mschapv2/eapmschapv2.h"
#include "eap_types/peap/eappeap.h"
#include "eap_types/leap/eapleap.h"
#include "eap_types/otp/eapotp.h"
#ifdef EAP_SIM_ENABLE
#include "winscard.h"
#include "eap_types/sim/eapsim.h"
#include "eap_types/aka/eapaka.h"
#endif
然后写自己的认证方式的函数。