哈希值HASH.pdf
《哈希值HASH.pdf》由会员分享,可在线阅读,更多相关《哈希值HASH.pdf(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、哈希值HASH 对入侵者来说,获取Windows 的口令是整个攻击过程至关重要的一环,拥有系统原来用户的口令,将使得内网渗透和守控更加容易。Windows 系统中的Hash 密码值主要有LM-HASH以及 NTLM-HASH值两部分构成,一旦入侵者获取了系统的Hash 值,通过LC5 以 及 彩 虹 表等 破 解工 具 可以 很快的 获 取系 统 的密 码。为 此 安 天365 团 队()特别针对系统口令攻击与防范展开专题进行研究,本文主要作为其中的一个子课题,探讨如何使用Gethashes工具来获取系统的Hash值,并对 Hash值的生成原理等知识进行了介绍,最后还介绍了一些有关Hash破解
2、方面的技巧。一、Hash基本知识1Hash定义Hash,一般翻译为“散列”,也有直接音译为“哈希”的,就是把任意长度的输入(又叫做预映射,pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,而不可能从散列值来唯一的确定输入值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。2Hash的应用HASH 主要用于信息安全领域中加密算法,它把一些不同长度的信息转化成杂乱的128 位的编码里,叫做HASH 值。也可以说,Hash就是找到一种数据内容和数据存放地址之
3、间的映射关系。3hash算法在密码上的应用MD5 和 SHA1 可以说是目前应用最广泛的Hash算法,而它们都是以MD4 为基础设计的。那么他们都是什么意思呢?这里简单说一下:(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 相同。M
4、D5 比 MD4 来得复杂,并且速度较之要慢一点,但更安全,在抗分析和抗差分方面表现更好(3)SHA1 及其他SHA1 是由 NIST NSA 设计为同 DSA 一起使用的,它对长度小于264的输入,产生长度为 160bit 的散列值,因此抗穷举(brute-force)性更好。SHA-1 设计时基于和MD4 相同原理,并且模仿了该算法。Hash算法在信息安全方面的应用主要体现在以下的3 个方面:(1)文件校验我们比较熟悉的校验算法有奇偶校验和CRC 校验,这 2 种校验并没有抗数据篡改的能力,它们一定程度上能检测并纠正数据传输中的信道误码,但却不能防止对数据的恶意破坏。MD5 Hash 算法
5、的“数字指纹”特性,使它成为目前应用最广泛的一种文件完整性校验和(Checksum)算法,不少 Unix 系统有提供计算md5 checksum的命令。(2)数字签名Hash 算法也是现代密码体系中的一个重要组成部分。由于非对称算法的运算速度较慢,所以在数字签名协议中,单向散列函数扮演了一个重要的角色。对 Hash值,又称“数字摘要”进行数字签名,在统计上可以认为与对文件本身进行数字签名是等效的。而且这样的协议还有其他的优点。(3)鉴权协议鉴权协议又被称作挑战-认证模式:在传输信道是可被侦听,但不可被篡改的情况下,这是一种简单而安全的方法。文档编码:CK6C3C4E4M10 HS6B8E8B6
6、X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3
7、K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F
8、9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编
9、码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C
10、3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M
11、10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6
12、B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3二、Windows 下 Hash密码值1.Windows 系统下的 hash密码格式Windows 系统下的 hash密码格式为:用户名称:RID:LM-HASH 值:NT-HASH 值,例如:Administrator:
13、500:C8825DB10F2590EAAAD3B435B51404EE:683020925C5D8569C23AA724774CE6CC:表示用户名称为:Administrator RID 为:500 LM-HASH 值为:C8825DB10F2590EAAAD3B435B51404EE NT-HASH 值为:683020925C5D8569C23AA724774CE6CC 2.Windows 下 LM Hash 值生成原理假设明文口令是“Welcome”,首先全部转换成大写“WELCOME”,再做将口令字符串大写转后后的字符串变换成二进制串:“WELCOME”-57454C434F4D45
14、00000000000000 技巧:可以将明文口令复制到UltraEdit 编辑器中使用二进制方式查看即可获取口令的二进制串。说明:如果明文口令经过大写变换后的二进制字符串不足14 字节,则需要在其后添加 0 x00 补足 14 字节。然后切割成两组7 字节的数据,分别经str_to_key()函数处理得到两组 8 字节数据:57454C434F4D45-str_to_key()-56A25288347A348A 00000000000000-str_to_key()-0000000000000000 这两组 8 字节数据将做为 DESKEY 对魔术字符串“KGS!#$%”进行标准 DES加密
15、KGS!#$%-4B47532140232425 文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8
16、E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7
17、 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8
18、E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R
19、3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:
20、CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C
21、4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R356A25288347A348A-对4B47532140232425进 行 标 准DES加 密-C23413A8A1E
22、7665F 0000000000000000-对 4B47532140232425进行标准 DES加密-AAD3B435B51404EE 将加密后的这两组数据简单拼接,就得到了最后的LM Hash LM Hash:C23413A8A1E7665FAAD3B435B51404EE 关于 str_to_key()函数见最后附录1 3.Windows 下 NTLM Hash 生成原理从 IBM 设计的 LM Hash 算法存在几个弱点,微软在保持向后兼容性的同时提出了自己的挑战响应机制,NTLM Hash 应运而生。假设明文口令是“123456”,首先转换成 Unicode字符串,与 LM Hash
23、 算法不同,这次不需要添加0 x00补足 14 字节123456-310032003300340035003600 从 ASCII 串转换成 Unicode串时,使用 little-endian 序,微软在设计整个SMB 协议时就没考虑过 big-endian序,ntoh*()、hton*()函数不宜用在SMB 报文解码中。0 x80之前的标准 ASCII 码转换成 Unicode 码,就是简单地从0 x?变成 0 x00?。此类标准 ASCII 串按little-endian 序转换成 Unicode 串,就是简单地在原有每个字节之后添加0 x00。对所获取的 Unicode 串进行标准MD
24、4 单向哈希,无论数据源有多少字节,MD4 固定产生 128-bit的哈希值,16字 节310032003300340035003600-进 行 标 准MD4单 向 哈 希-32ED87BDB5FDC5E9CBA88547376818D4 就得到了最后的NTLM Hash NTLM Hash:32ED87BDB5FDC5E9CBA88547376818D4 与 LM Hash 算法相比,明文口令大小写敏感,无法根据 NTLM Hash 判断原始明文口令是否小于8 字节,摆脱了魔术字符串KGS!#$%。MD4 是真正的单向哈希函数,穷举作为数据源出现的明文,难度较大。文档编码:CK6C3C4E4
25、M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS6B8E8B6X7 ZL3K8E10F9R3文档编码:CK6C3C4E4M10 HS
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 哈希值 HASH
限制150内