2016-05-30 12 views
0

は今、私は私のプライベートネットワーク内のscapyに基づくプログラミングEAP-MD5認証テストスクリプトだscrtip scapyベースのEAP-MD5認証に失敗します。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」という文字列をチェックしました。

あなたには、いくつかのガイドやヒントを与えてもらえますか?私の問題は何ですか?

答えて

0

自分で解決策を見つけました。コードの下で 、

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

私は 'eap.id' 取り扱いのためにミスを犯しました。 str()関数のpack( "!B"、eap.id)instedを使うべきです。

関連する問題