基于scapy的EAP-MD5身份验证scrtip中的MD5密码失败

时间:2016-05-30 10:00:43

标签: python authentication scapy

现在我正在编写基于私有网络中的scapy的EAP-MD5身份验证测试脚本。

但是,我在“响应md5-challange”状态时失败了'密码失败'。

我的脚本代码如下。在此例程中,参数'pkt'来自请求的MD5-Challange EAP数据包

==========================================

 def response_md5_handler(pkt):
    global _PASSWD
    # .. skip .. 
    eth = pkt.getlayer(Ether)
    eap = pkt.getlayer(EAP)
    raw = pkt.getlayer(Raw)

    mypass = _PASSWD

    mychallegne =  str(eap.id) + mypass  + raw.load[1:] 
    resp = md5(mychallegne ).digest()
    resp = chr(len(resp)) + resp
    mypkt = _mk_eap_resp_md5(eth.dst, eap.id, resp )
    sendp(mypkt)

==========================================

早期阶段(EAPOL开始,请求身份处理,响应标识)没问题,我已经检查了'PASSWD'字符串。

你能提供一些指导或提示吗?我的问题是什么?

1 个答案:

答案 0 :(得分:0)

我自己找到了解决方案。 在下面的代码中,

mychallegne =  str(eap.id) + mypass  + raw.load[1:] 

我为'eap.id'犯了错误。处理。 我应该使用str()函数的包("!B",eap.id)。