1.一种结合神经网络模型和Hashcat的混合口令破解方法,其特征在于,包括下述步骤:S101,对口令数据集进行数据清洗以去除无效或异常数据、提取可用的真实口令;S102,对数据清洗后的口令数据集切分为短口令数据集和长口令数据集;S103,使用全部口令数据集对神经网络模型进行初始训练以学习通用的口令模式和概率分布以获得用于生成口令的通用神经网络模型,冻结通用神经网络模型的低层神经元参数,分别用短口令数据集和长口令数据集对通用神经网络模型的高层参数进行微调训练,从而得到适用于短口令和长口令的两个专属模型;S104,使用长口令的专属模型生成长口令并加入字典;使用短口令的专属模型生成短口令,将短口令根据Hashcat的掩码规则映射为掩码,统计掩码的概率并根据掩码的概率进行降序排列得到掩码列表;S105,针对待破解的目标口令哈希值,通过Hashcat掩码攻击模式结合所述掩码列表对目标口令哈希值进行破解,通过Hashcat字典攻击模式结合所述字典对目标口令哈希值进行破解,返回破解成功的口令。
2.根据权利要求1所述的结合神经网络模型和Hashcat的混合口令破解方法,其特征在于,步骤S101中数据清洗包括:口令去重、删除位数不符合要求的口令、包含无效字符的口令、删除不可打印的ASCII码中的部分或全部。
3.根据权利要求1所述的结合神经网络模型和Hashcat的混合口令破解方法,其特征在于,步骤S102中对数据清洗后的口令数据集切分为短口令数据集和长口令数据集包括:遍历数据清洗后的口令数据集中的每一个口令,结合预设的长度阈值L,将口令长度小于等于长度阈值L的口令划分到短口令数据集,将口令长度大于长度阈值L的口令划分到长口令数据集,最终将数据清洗后的口令数据集切分为短口令数据集和长口令数据集。
4.根据权利要求1所述的结合神经网络模型和Hashcat的混合口令破解方法,其特征在于,步骤S104中生成长口令或短口令时,包括按照规模生成口令数据集,且生成每一个规模的口令数据集后判断是否生成完成:S201,初始化当前规模,使用本轮完成训练并微调后的专属短口令神经网络模型生成当前规模的真实口令构成的数据集,将真实口令根据Hashcat的掩码规则映射为掩码并降序排列;S202,增大当前生成口令规模得到新的当前规模;S203,使用本轮完成训练并微调后的专属短口令神经网络模型生成新的当前规模的真实口令构成的数据集,将真实口令根据Hashcat的掩码规则映射为掩码并降序排列;S204,根据下式计算新的当前规模、上一规模的掩码列表之间的掩码重合率:C=|A∩B|/N;其中,C表示掩码重合率,A为从当前规模的数据集中提取概率大于特定阈值T的掩码集合,B为从上一规模的数据集中提取概率大于特定阈值T的掩码集合,|A∩B|表示为两集合的共有元素数,N为A中概率大于特定阈值T的掩码数量,掩码重合率的值域为[0,1];S205,判断掩码重合率是否大于预设阈值R,若大于预设阈值R,则判定当前规模的口令生成完成,结束并退出;否则跳转步骤S202。
5.根据权利要求3所述的结合神经网络模型和Hashcat的混合口令破解方法,其特征在于,步骤S104中使用长口令的专属模型生成长口令的真实口令数据并加入字典时,生成长口令的真实口令的长度为[L,L max ],其中L为预设的长度阈值,L max 为口令长度的最大值。
6.根据权利要求5所述的结合神经网络模型和Hashcat的混合口令破解方法,其特征在于,步骤S104中使用短口令的专属模型生成短口令的真实口令时,生成短口令的真实口令的长度为[L min ,L],其中L为预设的长度阈值,L min 为口令长度的最小值。
7.根据权利要求6所述的结合神经网络模型和Hashcat的混合口令破解方法,其特征在于,所述预设的长度阈值取值为10。
8.根据权利要求7所述的结合神经网络模型和Hashcat的混合口令破解方法,其特征在于,所述口令长度的最大值为32。
9.根据权利要求8所述的结合神经网络模型和Hashcat的混合口令破解方法,其特征在于,所述口令长度的最小值为6。
10.根据权利要求1所述的结合神经网络模型和Hashcat的混合口令破解方法,其特征在于,步骤S105中通过Hashcat掩码攻击模式结合所述掩码列表对目标口令哈希值进行破解时,包括优先使用掩码列表中概率更高、且超过预设阈值的掩码对目标口令哈希值进行破解。