在同一区域内的另一栋楼无法认证——特殊结构的认证包?
jimlee2048 opened this issue · 6 comments
通过修改minieap源代码,在将checkv4.c
中的两个长数组修改为从我校Linux客户端中提取的值后,我成功的在A栋楼使用minieap通过了认证,以下是我的修改:#4e27a86。
然而,修改后能在A栋楼正常认证的minieap,在同一生活区内的另一栋楼(B栋楼)中却无法通过认证,提示如图所示的字段格式错误,未发现特征值(偏移量 0x6)
错误。在尝试 #60 中提到的@ysc3839的patch后,依然是同样的错误提示。
通过抓包分析,我发现一个非常奇怪的问题:同一个官方Linux认证客户端,在B栋发送的认证包与在A栋发送的认证包存在较大的差异:同一个客户端,却在两栋楼发送了结构上完全不同的EAP-Response-Identity
数据帧与EAP-Response-MD5-Challenge
数据帧。同时,B栋发送的EAP-Response-Identity
与EAP-Response-MD5-Challenge
,也不是@ShanQincheng在他的论文中展示的数据帧结构。
(上图标识有误,应为EAP-Response-MD5-Challenge
)
个人猜测:B栋的认证设备可能存在不同,导致认证需要发送特殊结构的认证包。可能这就是导致A栋通过的minieap无法在B栋使用的原因?同时让我比较迷惑的是,同一个官方客户端,又是如何在不同的网络环境下发送出不同结构的认证包的呢?还请作者帮忙看看这个问题,非常感谢!
@updateing ,出于隐私原因,具体抓包信息请问方便通过邮箱发给您嘛?
您的邮箱地址是aGFvdGlhQGdtYWlsLmNvbQ==(base64)吗?
请问一下是根据什么来修改checkV4.c
中的两个长数组呢?我已经抓包了
请问一下是根据什么来修改
checkV4.c
中的两个长数组呢?我已经抓包了
需要从锐捷官方Linux客户端文件中提取
hyrathb/mentohust#282 (comment)
请问一下是根据什么来修改
checkV4.c
中的两个长数组呢?我已经抓包了需要从锐捷官方Linux客户端文件中提取 hyrathb/mentohust#282 (comment)
翻了整个issue,还是不懂怎么修改
请问一下是根据什么来修改
checkV4.c
中的两个长数组呢?我已经抓包了需要从锐捷官方Linux客户端文件中提取 hyrathb/mentohust#282 (comment)
翻了整个issue,还是不懂怎么修改
就在我引用的这条回复里……
使用Hex编辑器打开锐捷Linux客户端的二进制执行文件rjsupplicant
,然后
如果你还是想自己提取,依然可以搜索字节2012102613440120,搜索到的第一段取长度1820,接着的第二段长度2035
非常感谢,问题已经解决了 123485k/opwnwrt-minieap-fjut