加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 服务器 > 安全 > 正文

传递哈希攻击的原理详解

发布时间:2022-07-11 15:13:37 所属栏目:安全 来源:互联网
导读:在渗透测试期间,为了提高审核员对信息系统的权限,很多人都会选择横向移动方法。在这种情况下,称为Pass The Hash(传递哈希)的技术被广泛应用,使审核员成为计算机上的管理员。 NTLM协议 NTLM协议是在Microsoft环境中使用的一种身份验证协议,特别是,它
   在渗透测试期间,为了提高审核员对信息系统的权限,很多人都会选择横向移动方法。在这种情况下,称为Pass The Hash(传递哈希)的技术被广泛应用,使审核员成为计算机上的管理员。
   
  NTLM协议
 
  NTLM协议是在Microsoft环境中使用的一种身份验证协议,特别是,它允许用户向服务器证明自己是谁,以便使用该服务器提供的服务。
 
  注意:在本文中,术语“服务器”是在客户端/服务器意义上使用的,“服务器”很可能是一个工作站。
 
   
  有两种可能的情况:
 
   
 
  1. 用户使用服务器的本地帐户的凭据,在这种情况下,服务器在其本地数据库中便含有用户的秘密,将能够对用户进行身份验证。
 
  2. 在Active Directory环境中,用户在身份验证期间使用域帐户,在这种情况下,服务器必须要求域控制器验证用户提供的信息。
 
  在这两种情况下,身份验证都是从客户端和服务器之间的挑战/响应阶段开始的。
 
  挑战/响应
 
  使用挑战/响应原则,以便服务器验证用户是否知道他正在验证的帐户的秘密,而不需要通过网络传递密码。这被称为零知识证明。整个过程分3步:
 
  1.协商:客户端告诉服务器它想要对其进行身份验证(NEGOTIATE_MESSAGE)。
 
  2.挑战:服务器向客户端发送一个挑战。这只不过是一个64位的随机值,随每个身份验证请求而变化(CHALLENGE_MESSAGE)。
 
  3.响应:客户端使用其密码的哈希版本作为密钥加密先前接收到的挑战,并将此加密版本连同其用户名和域(AUTHENTICATE_MESSAGE)返回给服务器。
 
   
 
  你可以看到用户管理员试图连接到计算机LKAPP01.lion.king。
 
   
  NTLM交换框顶部是红色的,底部是服务器响应CHALLENGE_MESSAGE中包含的信息。在这些交换之后,服务器拥有两件东西:
 
   
 
  1. 发送给客户端的挑战;
 
  2. 客户端的响应被自身的秘密加密了。
 
  要完成身份验证,服务器只需检查客户端发送的响应的有效性。但在那之前,让我们来检查一下客户的秘密。
 
  身份验证的秘密
 
  我们说过,客户端使用一个哈希版本的密码作为密钥,原因如下:为了避免在服务器上以明文形式存储用户密码,它是存储的密码的哈希值。现在,此哈希是NT哈希,它不过是MD4函数的结果,不含盐值。
 
   
   1.
   
 
  综上所述,当客户端进行身份验证时,它使用其密码的MD4指纹来加密挑战。然后,让我们看看接收到此响应后服务器端会发生什么。
 
   
 
  身份验证
 
  如前所述,有两种不同的身份验证情况。首先,用于身份验证的帐户是一个本地帐户,因此服务器知道这个帐户,并拥有该帐户的秘密副本。第二种是使用域帐户,在这种情况下服务器不知道这个帐户或它的秘密,它必须将身份验证委托给域控制器。
 
  本地帐户
 
  在使用本地帐户进行身份验证的情况下,服务器将使用用户的密钥(更确切地说是用户秘密的MD4哈希) 对发送给客户端的挑战进行加密。然后,它将检查其操作的结果是否等于客户端的响应,从而证明用户拥有正确的秘密。如果没有,则用户使用的密钥不是正确的,因为挑战的加密没有给出预期的密钥。
 
  为了执行此操作,服务器需要存储本地用户及其密码的哈希。这个数据库的名称是SAM(安全帐户管理器)。可以在注册表中找到SAM,特别是使用regedit工具时,但只能作为系统访问。不过,还可以使用psexec打开:
   
  1.
   
  副本也位于C:WindowsSystem32SAM的磁盘上,因此,它包含本地用户列表及其哈希密码,以及本地组列表。更准确地说,它包含了哈希的加密版本。但是,由于解密它们所需的所有信息也在注册表(SAM和SYSTEM)中,所以我们可以肯定地说哈希存储在其中。如果你想了解解密机制是如何工作的,你可以查看secretsdump.py代码或Mimikatz代码。
 
   

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读