详解WindowsHash与破解技术总结.docx

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
详解Windows Hash与破解 概述 1.1 hash Hash,一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度的输入(又叫做预映射, pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来唯一的确定输入值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。? 常用hash算法的介绍: (1)MD4 MD4(RFC 1320)是 MIT 的Ronald L. Rivest在 1990 年设计的,MD 是 Message Digest(消息摘要) 的缩写。它适用在32位字长的处理器上用高速软件实现——它是基于 32位操作数的位操作来实现的。 (2)MD5 MD5(RFC 1321)是 Rivest 于1991年对MD4的改进版本。它对输入仍以512位分组,其输出是4个32位字的级联,与 MD4 相同。MD5比MD4来得复杂,并且速度较之要慢一点,但更安全,在抗分析和抗差分方面表现更好。 (3)SHA-1及其他 SHA1是由NIST NSA设计为同DSA一起使用的,它对长度小于264的输入,产生长度为160bit的散列值,因此抗穷举(brute-force)性更好。SHA-1 设计时基于和MD4相同原理,并且模仿了该算法。 Hash算法在信息安全方面的应用主要体现在以下的3个方面: (1)文件校验 我们比较熟悉的校验算法有奇偶校验和CRC校验,这2种校验并没有抗数据篡改的能力,它们一定程度上能检测并纠正数据传输中的信道误码,但却不能防止对数据的恶意破坏。 MD5 Hash算法的数字指纹特性,使它成为目前应用最广泛的一种文件完整性校验和(Checksum)算法,不少Unix系统有提供计算md5 checksum的命令。 (2)数字签名 Hash 算法也是现代密码体系中的一个重要组成部分。由于非对称算法的运算速度较慢,所以在数字签名协议中,单向散列函数扮演了一个重要的角色。对 Hash 值,又称数字摘要进行数字签名,在统计上可以认为与对文件本身进行数字签名是等效的。而且这样的协议还有其他的优点。 (3) 鉴权协议 如下的鉴权协议又被称作挑战–认证模式:在传输信道是可被侦听,但不可被篡改的情况下,这是一种简单而安全的方法。以上就是一些关于hash以及其相关的一些基本预备知识。 windows hash Windows hash由二部分组成,分别是LM HASHNT HASH。Windows系统关于hash的组成如下: 用户名称:RID:LM-HASH值:NT-HASH值 2.1 Windows下LM HASH生成原理 LM HASH生成规则如下: 1.用户的密码被限制为最多14个字符。 2.用户的密码转换为大写。 3.系统中用户的密码编码使用了OEM内码页 4.密码不足14字节将会用0来补全。 5.固定长度的密码被分成两个7byte部分。每部分转换成比特流,在分7bit为一组末尾加0,组成新的编码 6.上步骤得到的8byte二组,分别作为DES key为“KGS!@#$%”进行加密。 7.将二组DES加密后的编码拼接,得到最终LM HASH值。 实例演示: ·假设明文口令是“admin”,首先全部转换成大写“ADMIN”, ·密码字符串大写后变换成十六进制串:41444D494E ·转换后的十六进制字符串按照二进制计算只有40bit,为了满足14字节的要求,所以需要补全72bit的二进制0,得最终补全后十六进制为:41444D494E000000000000000000 ·将上述编码(41444D494E000000000000000000)分成2组7byte的数据,分别为: 41444D494E0000 00000000000000 ·将每一组7byte的十六进制转换为二进制,每7bit一组末尾加0,在转换成十六进制组成得到2组8byte的编码: 41444D494E0000—40A212A894700000 00000000000000—0000000000000000 ·利用上面计算出来的2组编码,作为DES加密key分别对“KGS!@#$%”(换算成十六进制:4B47532140232425)字符,进行DES加密,如下: 40A212A894700000—-DES加密—-F0D412BD764FFE81 0000000000000000—-DES加密—-AAD3B435B51404EE ? ·将二组值拼接,最终得到LM HASH值为: F0D412BD764FFE81 AAD3B435B51404EE 验证如下图: 2.2 Windows下NTLM

文档评论(0)

1112111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档