中心入侵渗透

问题1. windows登录的明文密码,存储过程是怎么样的?密文存在哪个文件下?该文件是否可以打开,并且查看到密文?

回答:

Windows登录的明文密码的存储过程是:

  1. 当用户尝试登录Windows时,系统会要求用户输入密码。
  2. 用户输入的密码不会以明文形式直接存储在计算机上,而是会传递给本地安全机构(LSA)。
  3. LSA会对密码进行哈希处理(加密),生成密码的哈希值。
  4. 加密后的哈希值会存储在Windows注册表中的安全账户管理器(SAM)数据库中。

密文(即密码的哈希值)存储在SAM数据库中,该数据库通常位于

C:\Windows\System32\config\SAM

目录下。

SAM文件是系统级文件,并且受到操作系统的保护,因此一般情况下无法直接打开。并且由于SAM文件是以二进制形式存储的,并且包含加密的哈希值,因此即使能够打开文件,也无法直接查看到明文密码或易于理解的密文形式。

问题2. 我们通过hashdump 抓取出 所有用户的密文,分为两个模块,为什么? 这两个模块分别都代表什么?

回答:

可以看到 windows hash由二部分组成,分别是LM HASH和NTLM HASH
这是对同一个密码的两种不同的加密方式。
组成为:username:RID:LM-HASH值:NTLM-HASH值

我们通过hashdump抓取出所有用户的密文时,密文被分为两个模块,这是因为Windows系统为了兼容性和安全性,采用了两种不同的哈希算法来存储用户密码的散列值。这两个模块分别代表:

这种分组的原因在于Windows系统中存储密码的机制。在早期版本的Windows系统中,如Windows 95、98等,使用的是LM Hash来存储用户的密码。而从Windows NT(例如Windows 2000及以上版本)开始,引入了NT Hash作为新的密码存储方式。因此,为了兼容旧系统和新系统,hashdump工具在抓取密码哈希时,会分为两个模块来分别表示它们。

问题3. 为什么第一个模块 永远是一样的aad3?

回答:

aad3是由于Windows禁用了LM-hash 或者为空时LM Hash值为AAD3B435B51404EEAAD3B435B51404EE,当hashdump工具显示LM Hash字段为"AAD3B435B51404EEAAD3B435B51404EE"时,这表示LM Hash已被禁用,且该值是一个固定的占位符,用于标识LM Hash的不可用状态。

问题4. 这两个模块的加密算法有什么不同,如何加密的?

回答:

LM Hash和NTLM Hash的加密算法区别:

  1. 算法原理:

    • LM Hash:
      • LM Hash全称为LAN Manager Hash,是微软早期为了提高Windows操作系统的安全性而采用的散列加密算法。
      • 其本质是基于DES(Data Encryption Standard)加密的,但由于DES算法本身存在安全漏洞,LM Hash也较易被破解。
    • NTLM Hash:
      • NTLM Hash是Windows系统后续版本中用于替换LM Hash的更安全的哈希算法。
      • 它本质上使用了MD4(Message Digest Algorithm 4)加密算法,但MD4虽然较DES安全,也已被证明存在安全漏洞,因此NTLM Hash也不是最安全的解决方案。
  2. 加密流程:

    • LM Hash加密过程(以明文密码"Admin@123"为例):
      1. 将明文密码转换为大写(ADMIN@123)。
      2. 将大写密码转换为16进制字符串(41444D494E40313233)。
      3. 如果密码不足14字节,用0补全至14字节。
      4. 分组并转换为二进制,然后按7位一组取出并末尾补0,转换为16进制。
      5. 使用DES算法进行加密。
    • NTLM Hash加密过程(同样以明文密码"Admin@123"为例):
      1. 将明文密码转换为16进制字符串(41646D696E40313233)。
      2. 将16进制编码转换为Unicode格式(在每个字节后添加0x00)。
      3. 对Unicode格式的编码进行MD4加密,生成32位的十六进制数字串。
  3. 安全性:

    • LM Hash:由于其基于的DES加密算法较容易受到攻击,因此在Windows Vista和Windows Server 2008以后的版本中,LM Hash被默认禁用。
    • NTLM Hash:虽然NTLM Hash较LM Hash更安全,但MD4算法本身也存在安全漏洞,因此它也不是一个长期可依赖的安全解决方案。现代Windows系统更倾向于使用Kerberos或更安全的身份验证机制。

LM Hash和NTLM Hash在算法原理、加密流程和安全性方面存在显著差异。LM Hash基于DES加密,较容易被破解,因此在现代Windows系统中已被禁用;而NTLM Hash则基于MD4加密,相对更安全,但MD4本身也存在安全漏洞。

相关推荐
CatalyzeSec5 天前
工具推荐-testssl
测试工具·web安全·渗透
vortex55 天前
红队规范:减少工具上传,善用系统自带程序
安全·网络安全·渗透
渗透测试老鸟-九青14 天前
面试经验分享 | 杭州某安全大厂渗透测试岗
经验分享·安全·网络安全·面试·渗透·漏洞·代码审计
Sol_915 天前
Tr0ll: 1 Vulnhub靶机渗透笔记
笔记·网络安全·渗透·靶机
CatalyzeSec21 天前
Android渗透环境配置教程
android·web安全·渗透
vortex51 个月前
玩转 Burp Suite (1)
安全·网络安全·渗透·burpsuite
vortex51 个月前
渗透的本质是信息收集——一点思考
安全·web安全·渗透·信息收集