密码破解之RADIUS-CHAP-MD5

来源:互联网 发布:英语六级听力软件那个 编辑:程序博客网 时间:2024/05/08 14:54

1. 遇到CHAP

客户端在进行拨号时,用户名没有被加密,而密码被加密了。

在用wireshark抓到的包中,过滤RADIUS的数据包,就会看到数据包中radius协议部分的数据:
密码破解之RADIUS-CHAP-MD5

其中的authenticator为服务器发给客户端的验证码;
user-name为客户端提交的明文的没有经过加密的用户名;
CHAP-Password为客户段使用验证码和密码经过运算后得出的加密的密码;
 
2.搜素CHAP加密:
挑战-握手验证协议(CHAP)  CHAP是一种加密的验证方式,能够避免建立连接时传送用户的真实密码。NAS向远程用户发送一个挑战口令(challenge),其中包括会话ID和一个任意生成的挑战字串(arbitrary challengestring)。远程客户必须使用MD5单向哈希算法(one-way hashing algorithm)返回用户名和加密的挑战口令,会话ID以及用户口令,其中用户名以非哈希方式发送。  CHAP对PAP进行了改进,不再直接通过链路发送明文口令,而是使用挑战口令以哈希算法对口令进行加密。因为服务器端存有客户的明文口令,所以服务器可以重复客户端进行的操作,并将结果与用户返回的口令进行对照。CHAP为每一次验证任意生成一个挑战字串来防止受到再现攻击(replay attack)。在整个连接过程中,CHAP将不定时的向客户端重复发送挑战口令,从而避免第3方冒充远程客户(remote clientimpersonation)进行攻击。
相关介绍:
http://network.51cto.com/art/201109/291563.htm
 
3. CHAP加密的破解

chapcrack这个工具是解析握手包的 

1) 首先获得一个数据包捕获与一个MS-CHAPv2网络握手(例如:PPTP VPN或WPA2企业握手)。

2) 使用chapcrack解析握手包(命令:chapcrack parse -i path/to/capture.cap).

3)将握手包提交到 www.cloudcracker.com 这个网站去解析握手包

4) 获得解密的数据包捕获结果 (chapcrack decrypt -i path/to/capture.cap -o output.cap -n )

看完这几部 我淡定了 原来 貌似还是跑字典 貌似没有用算法解开!!!

chapcrack源码:http://blog.chinaunix.net/uid-16979052-id-3260086.html

https://github.com/moxie0/chapcrack

 

前2步好做,第3步需要不小的经济开支了,选择字典种类和字数,相应的开支也将变化;

密码破解之RADIUS-CHAP-MD5

 

 

4. 寻找其他破解工具

针对WPA/WPA2加密,破解工具很多,有EWSA,hashcat等。

和WPA/WPA2相比,CHAP的破解过程相似,同样是暴力破解即跑字典,但在前2款软件和其开发公司都没有针对CHAP破解的工具。

搜索其他的针对CHAP的破解工具,依然没有结果。

 

5. 转化为MD5破解

在客户端回应服务器的过程中,它是将前一步服务器发送过来的authen值和自己的密码经过了hash运算得到了CHAP-Password值,所以这一步的过程本质应该算是MD5或哈希预算的过程,或许能将CHAP破解转化为MD5破解,而针对MD5的破解,前2个软件中都有相应的选项。

有关MD5:http://bbs.et8.net/bbs/archive/index.php/t-1009906.html

 百度百科:http://baike.baidu.com/view/7636.htm

破解网站:http://www.cmd5.com/

 

RADIUS 协议: http://blog.chinaunix.net/uid-2628744-id-2454869.html

              http://blog.csdn.net/antswallow/article/details/5620178

 

  CHAP协议结构:http://wenku.baidu.com/view/1755abff700abb68a982fb5e.html

                            http://blog.sina.com.cn/s/blog_468926f20100oaug.html

计算方法有以下之说:

 

响应值按下面的公式进行计算: 

   Response=HASH(Identifier+secret+Challenge)  

其中“+”号表示将各数据在内存中串起来,其中HASH算法可以使用MD5,所以计算出来的HASH值是固定的,16字节长

Secret password = MD5(Chap ID + Password + challenge)


下面是一个数据包中的值:

 identifier: 0x2 (2)

Authenticator: 264935e2d61304bf0705143faa3f1ca4

User-Name: 83717511

CHAP-Password: 02ae21e32802ccfd5b6d9a702d631f9813

NAS-IP-Address: 127.0.0.1 (127.0.0.1)

Calling-Station-Id: 00-21-00-E3-D2-B4

0 0
原创粉丝点击