华为H3C iNode客户端802.1X协议的分析和破解

我司一直使用华为H3C(表面叫华三,实际上就是华为)客户端做上网认证。这货最大的问题是终端管控,会看看你客户端安装了什么,有没有插便携WiFi设备等等,如果不满足条件,就不给上网。一直很好奇,它是如何传输这些信息的,是否可能被重放攻击呢?于是借着搜索,分析了一把它的协议,总结一下如此: 1.首先是客户端用mac地址广播消息,说:“我要上网,服务器在哪里” 2.服务器接到请求,说:“哥在这里,交出用户名” 3.客户端说:“用户名是我的mac地址,给你”。我司是用mac地址作为用户名的。主要Identity字段:aAtxdzQ1Tx8rPxELPVbcxXI= 001F29038A21,后面的部分便是我的mac地址(前面的字段实际上非常重要,这里先跳过) 4.服务器说:“用户名正确,给你个随机值,用这个和你的密码做个MD5上来看看” 5.客户端乖乖送上MD5值,密码还是我的mac值 6.服务器说:“看来是正确的,放你一马吧” 实际上,这就是标准的802.…