当前位置:网站首页>内网学习笔记(6)

内网学习笔记(6)

2022-06-24 21:56:00 七六九


在通常情况下、即使拥有管理员权限,也无法读取域控制器中的C:\Windwos\NTDS\ntds.dit文件(活动目录始终访问这个文件,所以文件被禁止读取)。使用Windows本地卷影拷贝服务可以获得文件的副本。

1.使用卷影拷贝服务提取ntds.dit

在活动目录中,所有的数据都保存在 ntds.dit文件中。ntds.dit是一个二进制文件,存储位置为域控制器的%SystemRoot%ntds\ntds.dit。ntds.dit 中包含(但不限于)用户名、散列值、组、GPP、OU等与活动目录相关的信息。它和SAM文件一样,是被Windows操作系统锁定的。本节将介绍如何从系统中导出ntds.dit,以及如何读取ntds.dit中的信息。在一般情况下,系统运维人员会利用卷影拷贝服务(Volume Shadow Copy Service, VSS)实现这些操作。VSS本质上属快照(Snapshot)技术的一种,主要用于备份和恢复(即使目标文件处于锁定状态)。

1.1 通过ntdsutil.exe提取ntds.dit

ntdsutil.exe是一个为活动目录提供管理机制的命令行工具。使用 ntdsutil.exe,可以维护和管理活动目录数据库、控制单个主机操作、创建应用程序目录分区、删除由未使用活动目录安装向导(DCPromo.exe)成功降级的域控制器留下的元数据等。该工具默认安装在域控制器上、可以在域控制器上直接操作,也可以通过域内机器在域控制器上远程操作。ntdsutil.exe支持的操作系统有 Windows Server 2003、 Windows Server 2008、 Windows Server 2012。

1.2 利用 vssadmin提取ntds.dit

vssadminn是 Windows Server 2008 & Windows 7提供的VSS管理工具,可用于创建和删除卷影拷贝、列出卷影拷贝的信息(只能管理系统 Provider创建的卷影拷贝)、显示已安装的所有卷影拷贝写入程序(writers)和提供程序(providers),以及改变卷影拷贝的存储空间(即所谓的“diff空间”)的大小等。vssadminn 的操作流程和ntdsutil类似

1.3 利用vssown.vbs脚本提取ntds.dit

vssown.vbs脚本的功能和vssadmin类似。vssown.vbs 脚本是由Tim Tomes开发的,可用于创建和删除卷影拷贝,以及启动和停止卷影拷贝服务。可以在命令行环境中执行该脚本。

1.4 使用ntdsutil的IFM创建卷影拷贝

除了按照前面介绍的方法通过执行命令来提取ntds dit,也可以使用创建一个 IFM的方式获取nsdi。在使用ntdsutil创建IFM时,需要进行生成快照、加载、将ntds. dit和计算机的SAM文件复制到目标文件夹中等操作。这些操作也可以通过PowerShell或WMI远程执行

1.5 使用diskshadow导出ntds.dit

微软官方文档中有这样的说明:“diskshadow.exe 这款工具可以使用卷影拷贝服务(VSS)所提供的多个功能。在默认配置下,diskshadow.exe 使用了一种交互式命令解释器, 与DiskRaid或DiskPart类似。”事实上,因为diskshadow的代码是由微软签名的,而且Windows Server 2008、Windows Server 2012和Windows Server 2016都默认包含diskshadow,所以,diskshadow 也可以用来操作卷影拷贝服务并导出ntds dit。diskshadow的功能与vshadow类似,且同样位于C:windows\system32\目录下。不过,vshdow是包含在Windows SDK中的,在实际应用中可能需要将其上传到目标机器中。
diskhadow 有交互和非交互两种模式。在使用交互模式时,需要登录远程桌面的图形化管理界面。不论是交互模式还是非交互模式,都可以使用exee调取一个脚本 文件来执行相关命令。

1.6 监控卷影拷贝服务的使用情况

通过监控卷影拷贝服务的使用情况,可以及时发现攻击者在系统中进行的一些恶意操作。

  • 监控卷影拷贝服务及任何涉及活动目录数据库文件(ntds.dit)的可疑操作行为。
  • 监控System Event ID 7036(卷影拷贝服务进人运行状态的标志)的可疑实例,以及创建vssvc.exe进程的事件。
  • 监控创建dkshndko.exe及相关子进程的事件。
  • 监控客户端设备中的diskshadow.exe实例创建事件。除非业务需要, 在Windows操作系统中不应该出现diskshadow.exe.如果发现,应立刻将其删除。
  • 通过日志监控新出现的逻辑驱动器映射事件。

2. 导出ntds.dit中的散列值

2.1 使用esedbexport恢复ntds.dit

下载libesedb

2.2 使用 impacket工具包导出散列值

2.3 在windows下解析ntds.dit 并导出域账号和域散列值

使用NTDSDumpex.exe可以进行导出散列值的操作。NTDSDumpex将ntds.dit、SYSTEM和NTDSDumpex.exe放在同一日录下,打开命令行环境,输人如下命令,导出域账号和域散列值

3.利用dcsync获取域散列值

3.1 使用mimikatz 转储域散列值

mimikaz有一个 deyne功能,可以利用卷影拷贝服务直接读取ntds.dit文件并检索城散列值。需要注意的是,必须使用域管理员权限运行mimikatz才可以读取ntds.dit.

3.2 使用dcsync获取域账号和域散列值

Invoke _DCSync.ps1可以利用desync直接读取ntds.dit,以获取域账号和域散列值

4. 使用MSF获取域散列值

使用的是 psexec_ntdsgrab模块

5. 使用vshadow.exe和QuarksPwDump.exe导出域账号和域散列值

在正常的域环境中,ntds.dit文件里包含大量的信息,体积较大,不方便保存到本地。如果域控制器上没有安装杀毒软件,攻击者就能直接进人域控制器,导出ntds.dit并获得域账号和域散列值,而不需要将ntds.dit保存到本地。
QuarksPwDump可以快速、安全、全面地读取全部域账号和域散列值。
ShadowCopy是一款免费的增强 型文件复制工具。ShadowCopy 使用微软的卷影拷贝技术,能够复制被锁定的文件及被其他程序打开的文件。
vshdow.exe是从Windows SDK中提取出来的。在本实验中,安装vshadow.exe 后,会在VSSDK72\TestApps\vshadow目录下生成一个bin文件vshadow.xce (可以将该文件单独提取出来使用)将文件全部放人domainhash文件夹中
在shadowcopy.bat中设置工作目录为C:Windows\Temp(目录可以在shadowcopy.bat中自行设置)
执行shaowopba脚本(该脚本使用vshadow.exe生成快照),复制ntds.dit.然后,使用QuarksPwDump修复ntds.dit并导出域散列值。运行该脚本后,会在刚刚设置的工作目录下存放导出的ntds.dit和hash.txt(包含域内所有的域账号及其散列值)。

本节列举了多种导出用户散列值的方法。在获得散列值后,可以使用本地工具或者在线工具对其进行破解。如果采用本地破解的方式,可以使用Cain LC7、Opherack、SAMInside、Hashal 等工具。如果采用在线破解的方式,针对NTLM Hash的在线破解网站针对LM Hash的在线破解网站

6. Kerberos 域用户提权漏洞分析与防范

微软在2014年1月18日发布了一个紧急补了,修复了Kerhers 城用户提权漏润(MS14-068 CVE201462424)所有Windwos服务器操作系统都会受该漏洞的影响,包括WindowsServer2003、Windows Server 208 Windows Sever 2008 R2、Windows Server 2012和Win2012R2。该漏洞可导致活动目录整体权限控制受到影响,允许攻击者将城内任意用户权限提升至域管理级别。通俗地讲,如果攻击者获取了城内任何台计算机的Shell 权限,同时知道任意城用的用户名、SID、密码,即可获得城管理员权限,进而控制域控制器,最终获得域权限。
这个漏洞产生的原因是:用户在向Kerberos 密明分发中心( KDC)申请TGT由票据授权服务产生的身份凭证)时,可以伪造自己的Kerberos票据。如果票据声明自己有域管理员权限,而在处理该票据时未验证票据的签名, 那么返给用户的 TGT就使普通域管理用户权限。该用户可以将TGT发送到KDC, KDC的TGS (票据授权服务)在验证TGT后,将服务票据(Service Ticket)发送给该用户,而该用户拥有访问任何该服务的权限,从而使攻击者可以访问域内的资源。

6.1 PyKEK工具包

pyKEK (Pybon Kerberos Expoiation Kit)是利用Kerberos协议进行渗透测试的工具包,使用PyKEK可以生生成一张高权原的服务票据,并通过mimikatz将服务票据注人内存。

PyKEK只需要系统中配置Python 2.7环境就可以运行。使用PyKEK,可以将Python文件转换为可执行文件

6.2 goldenPac.py

goldenPac.py是一个用于对Kerberos进行测试的工具,它集成在impacket/examples下。

原网站

版权声明
本文为[七六九]所创,转载请带上原文链接,感谢
https://blog.csdn.net/pggril/article/details/125395330