一种基于GPU集群的WPA共享密钥破解系统技术方案

技术编号:9836244 阅读:194 留言:0更新日期:2014-04-02 01:09
本发明专利技术涉及密码破解技术领域,本发明专利技术公开了一种基于GPU集群的WPA共享密钥破解系统,其具体包括一个控制节点和多个GPU计算节点;所述控制节点截获WPA数据包,特征值提取模块提取出破解特征值,控制节点的用户交互模块接收用户定义的破解口令的范围;口令空间划分模块给每个GPU计算节点划分一定范围的口令区间,并传送给每个对应的GPU计算节点;GPU计算节点计算得到临时的校验参数MIC_TMP,当临时的校验参数MIC_TMP与校验参数MIC值相同时,则认为此破解口令passphrase为共享密钥,密码破解完成。本发明专利技术采用GPU集群对WPA/WPA2-PSK的口令进行破解,支持多节点的GPU集群,可根据需求适当地进行扩展,较好地提升破解性能,同时针对GPU集群的异构特点,设计了可靠的任务调度系统,现负载均衡,提高了破解速度。

【技术实现步骤摘要】
一种基于GPU集群的WPA共享密钥破解系统
本专利技术涉及密码破解
,尤其涉及一种基于GPU集群的WPA共享密钥破解系统。
技术介绍
近年来,随着智能手机、平板电脑等移动终端的急速发展,无线局域网WLAN(WirelessLocalAreaNetwork)的发展也极为迅猛,甚至有代替有线网络成为主要上网方式的趋势。因此WLAN也成为侦查取证的一个重要目标。WLAN的标准IEEE802.11中规定了对于无线网络数据的保护方案:WEP、WPA和WPA2。其中WEP是最早的方案,已被发现有较多的漏洞,可以在很快的时间内被成功攻击,因此现在对于WLAN的保护一般都是采用WPA或WPA2。WPA/WPA2采用两种身份认证方式:共享密钥PSK(Pre-ShareKey)认证和IEEE802.1X认证。前者模式比较简单,只需要一个密钥(或口令)即可实现,通常在家庭、小企业和公共区域的热点上使用,后者需要提供有效凭证,通过特定的认证服务器来实现,具有相对更高的安全性。随着人们安全意识的提高,越来越多地用户选择使用WPA/WPA2-PSK对无线上网进行保护,由于目前尚未发现WPA/WPA2-PSK协议的明显缺陷,因此只能依靠暴力攻击的方法对WPA/WPA2-PSK进行破解(即将密码进行逐个推算直到找出真正的密码为止),以获取共享密钥从而进一步获取所需的通信数据。很显然这样的密码破解方式需要的计算量是相当大的。对于WPA/WPA2-PSK的破解已有不少的研究成果,都是通过穷举法来进行暴力攻击。最有名的软件是Aircrack-ng,它支持CPU上的计算,在单核CPU上的破解速度为1500个口令/秒左右。图像处理器GPU(GraphicProcessUnit)的高性能数据处理能力的发展,为WPA/WPA2-PSK的高速破解提供了新的解决途径。GPU将大量的晶体管用作计算单元,适合高计算强度的应用。GPU在高性能运算方面具有三个突出优点:第一,数据的并行处理能力强大,NVIDIA公司目前最新的GPUK20峰值浮点运算能力超过3TFLOPS,这几乎和一个小型CPU集群相当;第二,GPU拥有出色的高密集运算能力,K20的带宽超过200GB/s;第三,GPU拥有良好的可编程性,支持多种高级语言编程,NVIDIA开发的CUDA架构支持C/C++和Fortran。俄罗斯Elcomsoft公司的WPA/WPA2-PSK破解软件ElcomsoftWirelessSecurityAuditor可以支持GPU,其基于Python开发的开源软件Pyrit支持多核CPU和GPU。它们的破解速度在每片GPU上能够达到5万到7万个口令/秒。但是这些软件仅支持单机系统,最多包含4片GPU,对于破解速度要求非常高的场合性能仍然显得非常有限。综上,基于CPU的破解方式破解速度低,基于GPU的破解方式仅能支持单机系统,破解能力同样有限且扩展性差。
技术实现思路
针对现有技术中的密码破解系统破解速度低,破解能力有限,扩展性差的技术问题,本专利技术公开了一种基于GPU集群的WPA共享密钥破解系统。本专利技术公开了一种基于GPU集群的WPA共享密钥破解系统,其具体包括一个控制节点和多个GPU计算节点,所述控制节点包括用户交互模块、特征值提取模块和口令空间划分模块;所述控制节点截获WPA数据包,将WPA数据包发送到特征值提取模块,特征值提取模块提取出WPA数据包中的破解特征值,其中破解特征值包括接入点的名称SSID、接入点的MAC地址AP_MAC、客户端的MAC地址STA_MAC、两个随机数SNonce和Anonce、以及校验参数MIC;所述控制节点的用户交互模块用于接收用户定义的破解口令的范围;所述口令空间划分模块根据接收的破解口令的范围给每个GPU计算节点划分一定范围的口令区间,并通过消息传递接口MPI传送给每个对应的GPU计算节点;GPU计算节点根据接入点的名称SSID、接入点的MAC地址AP_MAC、客户端的MAC地址STA_MAC、两个随机数SNonce和Anonce、以及分配给GPU计算节点的破解口令passphrase进行计算得到临时的校验参数MIC_TMP,当临时的校验参数MIC_TMP与校验参数MIC值相同时,则认为此破解口令passphrase为共享密钥,并将破解的结果返回给控制节点,密码破解完成;当计算得到的临时的校验参数MIC_TMP与校验参数MIC值不相同时,则更换破解口令,以新的破解口令进行计算得到新的临时的校验参数,直到所有的破解口令逐一计算并比较后完成。更进一步地,上述GPU计算节点包括主机端CPU和设备端GPU;所述所述主机端CPU用于为GPU设备端破解进行前期破解数据准备和后期破解结果收集;所述设备端GPU用于破解计算。更进一步地,上述主机端CPU包括初始化模块、数据传输模块和破解配置模块;所述初始化模块用于初始化CPU主机端的线程,所述数据传输模块用于将从控制节点中接收到的破解特征值通过PCIE总线从CPU主机端传递到GPU设备端,所述破解配置模块用于根据每个GPU计算节点中每张GPU卡实际的参数信息来设置破解的配置参数。更进一步地,上述设备端GPU包括口令生成模块和口令破解模块,所述口令生成模块根据偏移量、GPU线程ID号以及字符集长度生成破解口令,所述口令破解模块根据破解特征值和破解口令,计算得到校验参数MIC_TMP。更进一步地,上述口令空间划分模块划分口令的过程具体为使用静态负载均衡的方法为每个GPU计算节点中的每张GPU卡划分一定范围的口令区间。更进一步地,上述MIC值写到GPU的常量内存中,接入点的名称SSID、接入点的MAC地址AP_MAC、客户端的MAC地址STA_MAC以及两个随机数SNonce和Anonce写入GPU的全局内存中。更进一步地,上述根据破解特征值和破解口令,计算得到校验参数MIC_TMP的具体过程为:首先SSID和passphrase作为pdkdf2_SHA1函数的输入参数生成预共享密钥PSK,PSK的值等同于预共享主密钥PMK;然后,产生的PMK和STA_MAC、AP_MAC、SNonce、ANonce通过SHA1_prf生成一个PTK,取PTK的前16个字节即为MIC_KEY,最后通过HMAC_MD5或者HMAC-SHA1生成最后的MIC_TMP值。WPA和WPA2的区别在仅在于于生成MIC值的最后一步中WPA使用HMAC-MD5算法,而WPA2使用HMAC-SHA1算法。本专利技术的破解方法可以适用于WPA和WPA2。通过采用以上的技术方案,本专利技术的有益效果为:本专利技术采用GPU集群对WPA/WPA2-PSK的口令进行破解,支持多节点的GPU集群,可根据需求适当地进行扩展,较好地提升破解性能,同时针对GPU集群的异构特点,设计了可靠的任务调度系统,现负载均衡,提高了破解速度。附图说明图1为整个密钥破解系统的拓扑图。图2为基于GPU集群密钥破解流程图。图3为口令生成模块的生成示意图。图4为WPA密码破解的具体实现过程。具体实施方式下面结合说明书附图,详细说明本专利技术的具体实施方式。一个WLAN至少包含1个无线接入点AP和一个用户(客户端)。WPA/WPA2-PSK的认证过程为一个四步握手过程,客户本文档来自技高网
...
一种基于GPU集群的WPA共享密钥破解系统

【技术保护点】
一种基于GPU集群的WPA共享密钥破解系统,其特征在于具体包括一个控制节点和多个GPU计算节点,所述控制节点包括用户交互模块、特征值提取模块和口令空间划分模块;所述控制节点截获WPA数据包,将WPA数据包发送到特征值提取模块,特征值提取模块提取出WPA数据包中的破解特征值,其中破解特征值包括接入点的名称SSID、接入点的MAC地址AP_MAC、客户端的MAC地址STA_MAC、两个随机数SNonce和Anonce、以及校验参数MIC;所述控制节点的用户交互模块用于接收用户定义的破解口令的范围;所述口令空间划分模块根据接收的破解口令的范围给每个GPU计算节点划分一定范围的口令区间,并通过消息传递接口MPI传送给每个对应的GPU计算节点;GPU计算节点根据接入点的名称SSID、接入点的MAC地址AP_MAC、客户端的MAC地址STA_MAC、两个随机数SNonce和Anonce、以及分配给GPU计算节点的破解口令passphrase进行计算得到临时的校验参数MIC_TMP,当临时的校验参数MIC_TMP与校验参数MIC值相同时,则认为此破解口令passphrase为共享密钥,并将破解的结果返回给控制节点,密码破解完成;当计算得到的临时的校验参数MIC_TMP与校验参数MIC值不相同时,则更换破解口令,以新的破解口令进行计算得到新的临时的校验参数,直到所有的破解口令逐一计算并比较后完成。...

【技术特征摘要】
1.一种基于GPU集群的WPA共享密钥破解系统,其特征在于具体包括一个控制节点和多个GPU计算节点,所述控制节点包括用户交互模块、特征值提取模块和口令空间划分模块;所述控制节点截获WPA数据包,将WPA数据包发送到特征值提取模块,特征值提取模块提取出WPA数据包中的破解特征值,其中破解特征值包括接入点的名称SSID、接入点的MAC地址AP_MAC、客户端的MAC地址STA_MAC、两个随机数SNonce和Anonce、以及校验参数MIC;所述控制节点的用户交互模块用于接收用户定义的破解口令的范围;所述口令空间划分模块根据接收的破解口令的范围给每个GPU计算节点划分一定范围的口令区间,并通过消息传递接口MPI传送给每个对应的GPU计算节点;GPU计算节点根据接入点的名称SSID、接入点的MAC地址AP_MAC、客户端的MAC地址STA_MAC、两个随机数SNonce和Anonce、以及分配给GPU计算节点的破解口令passphrase进行计算得到临时的校验参数MIC_TMP,当临时的校验参数MIC_TMP与校验参数MIC值相同时,则认为此破解口令passphrase为共享密钥,并将破解的结果返回给控制节点,密码破解完成;当计算得到的临时的校验参数MIC_TMP与校验参数MIC值不相同时,则更换破解口令,以新的破解口令进行计算得到新的临时的校验参数,直到所有的破解口令逐一计算并比较后完成;所述GPU计算节点包括主机端CPU和设备端GPU;所述主机端CPU用于为设备端GPU破解进行前期破解数据准备和后期破解结果收集;所述设备端GPU用于破解计算;所述设备端GPU包括口令生成模块和口令破解模块,所述口令生成模块根据偏移量、GPU线程...

【专利技术属性】
技术研发人员:吉庆兵于飞兰天张李军
申请(专利权)人:中国电子科技集团公司第三十研究所
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1