本文大纲如下:基本概念NTDS.ditntds.dit为ad的数据库(C:\Windows\NTDS),内容有域用户、域组、域用户hash等信息,域控上的ntds.dit只有可以登录到域控的用户(如域管用户 3. diskshadow导出 NTDS.ditDiskShadow用于帮助管理员执行与卷影复制服务(VSS)相关的操作。 scecretdump远程DCSyncImpacket脚本集的 scecretdump.py 脚本支持在已知域管账号密码的前提下远程dump DC服务器的域用户Hash,Dump的命令如下:# python3 hashGithub已有开源的实现,来自3gstudent大佬的SharpDCSync https://github.com/3gstudent/Homework-of-C-Sharp/blob/master 结尾AD攻防自成体系,Dump域用户Hash只是冰山一角,通过深入剖析各种Dump手法和原理,加深对AD安全的理解及系统日志的熟悉,更好的在安全运营监控/应急响应中快速定位攻击行为,欢迎师傅们拍砖交流~
本文大纲如下: 基本概念 NTDS.dit ntds.dit为ad的数据库(C:\Windows\NTDS),内容有域用户、域组、域用户hash等信息,域控上的ntds.dit只有可以登录到域控的用户 3. diskshadow导出 NTDS.dit DiskShadow用于帮助管理员执行与卷影复制服务(VSS)相关的操作。 scecretdump远程DCSync Impacket脚本集的 scecretdump.py 脚本支持在已知域管账号密码的前提下远程dump DC服务器的域用户Hash,Dump的命令如下: # python3 hash Github已有开源的实现,来自3gstudent大佬的SharpDCSync https://github.com/3gstudent/Homework-of-C-Sharp/blob/master 结尾 AD攻防自成体系,Dump域用户Hash只是冰山一角,通过深入剖析各种Dump手法和原理,加深对AD安全的理解及系统日志的熟悉,更好的在安全运营监控/应急响应中快速定位攻击行为,欢迎师傅们拍砖交流
一、Group3r简介Group3r是C#编写的组策略检测工具,用于Pentester和红队成员快速枚举AD组策略中的相关设置,并在其中识别可利用的错误配置的工具,它通过LDAP连接域控解析域SYSVOL 二、输出方式Group3r实现了两种输出方式,命令参数及含义如表1-11所示。 表1-11查看Group3r输出方式|\-s|通过标准输出结果||---------------|----------------||\-fgroup3r.log|通过文件输出结果|三、使用方式Grou3r 使用十分简单,只需要执行如下命令即可对域内错误配置进行检测,执行命令及结果如图1-1所示
dnscmd /zonepront [domain]命令,如图1-2所示 再次列举指定域所有DNS记录,输入dnscmd /EnumRecords [domain] .命令,如图1-3所示 2)远程获取 /blob/master/dns-dump.ps1,在cmd中执行,如图1-7所示 3) 在Linux环境使用adidnsdump获取DNS记录。 3.使用PowerShell模块进行域信息收集 域信息收集一般可以通过net(MS-SAMR)、LDAP、RSAT等方法实现,这里重点说一下RSAT。 Windows Server 2008 R2(以及更新版本)提供了多个AD PowerShell cmdlet,这极大简化了使用ADSI(Active Directory Service Interface 使用AD PowerShell cmdlet前,需要在Windows客户端上安装RSAT,并确保已安装Active Directory PowerShell模块。
2)基本使用命令:参数说明:|参数|说明||---|---||user|域内用户名||password|域用户密码||domain|域名||carrier|双网卡计算机IP(中继主机)||target| /192.168.72.139||Win7(域内)|GOD.ORG|192.168.52.133/192.168.72.132||Win2008(域内)|GOD.ORG|192.168.72.138|5.2 通过CornerShot,我们可以探测Win10和Win7对Win2008的网络访问权限,如图1-3所示。! IMG330
Adfind的主要特点包括:轻量便携:单文件可执行程序,无需安装,可直接在目标主机上运行功能全面:支持查询用户、组、计算机、OU、GPO、信任关系、ACL等几乎所有AD对象灵活过滤:支持LDAP过滤语法 ,可精确筛选所需信息输出可控:支持自定义输出属性,并可导出为CSV等格式便于后续分析在域渗透测试中,Adfind常用于信息收集阶段,帮助测试人员快速了解域内结构、识别高价值目标(如域管理员、服务账户)、 例如,查询DN为CN=Computers,dc=klion,dc=local下的所有计算机对象,执行如下命令:执行结果如图1-3所示。 <palign="center">图1-3根据查询条件进行DN查询
2.3Filter(过滤条件)通过-f参数可以指定查询的过滤条件,支持LDAP查询语法。 ="center">图1-8查询域控版本3.2查询域DNS信息执行如下命令可以查询域内所有计算机对象的DNS主机名,结果如图1-9所示:<palign="center">图1-9查询域DNS信息侦查和利用工具,在安装ActiveDirectoryDomainServices(ADDS)后,ActiveDirectoryWebServices(ADWS)将自动开启,因此SharpADWS在所有域环境中都可以使用 对象,并筛选出受托者为DomainAdmins的DACL,执行命令及结果如图1-3所示:
--dnsdump--user<用户名>--password<密码>--domain<域名>--dc<域控IP>-odns命令及结果如图1-3所示。
一、域分析之AdExplorerAdExplorer(ActiveDirectory资源管理器)是高级ActiveDirectory(AD)查看器和编辑器。 如果有一个AD数据库的两个快照,则可以使用AD资源管理器的比较功能来查看它们之间更改了哪些对象、属性和安全权限。 下载地址:https://download.sysinternals.com/files/AdExplorer.zip二、连接AD下载AdExplorer后,会弹出连接对话框,我们对应输入域控的IP,以及域用户的账号密码后即可进行使用 ,如图1-1及图1-2所示
2.创建计算机账号 创建计算机账号就是把成员服务器和用户使用的客户机加入域,这些计算机加入域时会在Active Directory中创建计算机账号。 3.创建用户账号 1.首先我们应该在Active Directory中利用组织单位展示出企业的管理架构,选择新建组织单元。 2.创建了组织单位后,我们就可以在组织单位中创建用户账号。 搭建域完成! 之后可以配置响应的组策略等。 4.常见测试命令 Gpresult 或者 gpresult /r 获取组策略结果 适用场景:检查客户端电脑是是否加入域,加入了域以后获取的组策略结果。 Gpupdate /force 强制更新组策略 适用场景:每次在域服务器上面修改了组策略以后,如果需要策略立即生效的话,需要在域服务器上面和客户端电脑上面都执行上述命令。
1.00图1-1backup用户所在的组:::2.2验证对域控文件的访问能力(读/写)使用backup用户列举域控C:盘目录,验证文件访问能力,如图1-2所示。 可以看到,当backup用户位于域控本地BackupOperators组内时,通常对域控文件具备读取能力;但如图1-3所示,并不一定具备写入权限。:::center! 1.00图1-3用户不具备写入权限:::
2.3检查并获取SeBackupPrivilege(管理员PowerShell)在当前会话执行whoami/priv检查是否具备SeBackupPrivilege 1.00图1-10卷影副本F盘:::3.从卷影副本中复制目标文件(如图1-11)::::center!
执行BackupOperatorToDA(如图1-13):
3.将导出的文件复制到本地(如图1-14):
4.对导出的文件进行离线解密/提取Hash(解密流程前文已说明,此处不再展开
在一些中大型企业中,员工数量较多,运维人员为了方便管理每个员工的计算机,可能会为所有计算机的账号设置统一的口令,以对它们进行统一配置,并且将它们批量加入域。 我们可以使用 LAPSUI 直接查看域内计算机的本地密码,如图 1-1 所示。 ,执行如下命令(如图 1-3): 展开 Get-AdmPwdPassword -ComputerName "<计算机名称>" 图 1-3 在域控计算机中直接获取 LAPS 密码
.\ com用户,该用户为域用户而非域管理员,但在域内拥有的权限包括"复制目录更改"与"复制目录更改所有项",具体如图 1-2 所示。 图1-2 用户在域内权限设置2、利用该用户执行 Mimikatz 的 DCSync 功能以获取指定域用户哈希。 执行命令lsadump::dcsync/domain:test[].com/user:krbtgt[],执行结果如图1-3所示。 图 1-3 使用 Mimikatz 的 DCSync 功能获取指定域用户哈希3、执行命令lsadump::dcsync/domain:test[].com/all/csv获取test.com域中所有的用户哈 图 1-4 使用 Mimikatz 的 DCSync 功能获取全部域用户哈希3.
一、简介BloodHound是一款开源的AD域分析工具,它以图与线的形式,将域内用户、计算机、组、会话、ACL以及域内所有相关用户、组、计算机、登录信息、访问控制策略之间的关系只管展现,帮助红队便捷地分析域内情况 ,快速在域内提升自己的权限。 蓝队成员可使用BloodHound对己方网络系统进行更好的安全检测以保证域的安全性。BloodHound通过在域内导出相关信息,再将数据采集后,导入本地安装好的Neo4j数据库中,使域内信息可视化。 下载并解压完成后,打开cmd窗口进入解压后的bin目录,在cmd下执行命令neo4j.batconsole启动Neo4j服务,如图1-3所示
也就是说,假设域内有个用户 test.com/test1,其密码为 password@456,而客户端拥有的用户并不在域内,用户名为 test1,密码为 password@456,那么在 AS_REQ 环节中,利用 test.com/test1 去请求 KDC,与利用不在域内的 test1 去请求 KDC 的效果是一样的。 想要利用该手段必须满足 3 个条件:域内用户拥有 DCSync 权限;域外用户和域内用户的账号及密码一致;将域外主机的 DNS 指向域控制器,并通过 VPN 接入域内。 下面将会演示如何在域外利用 DCSync 功能获取域用户哈希。确定域外用户 test1 的密码和域内用户 test.com/test1 的密码是一致的。 图 1-1 将域外主机的 DNS 指向域控制器图 1-2 设置网络图 1-3 设置连接3. 将域控制器 IP 地址写入 Internet 地址中,如图 1-4 所示。
1.NTDS.DIT文件简介NTDS.DIT文件是域控制器中的数据库文件,该文件作为AD的数据库,存储了AD的所有数据,包括域内的用户对象、组和组成员身份等信息,以及域内所有用户的凭据信息。 NTDS.DIT文件与前文所讲的SAM文件类似,不同点在于SAM文件中只存放本机的用户哈希凭据,而NTDS.DIT文件中存放了所有域用户的哈希凭据。 图1-2从卷影副本中复制文件图1-3成功获取文件继续执行命令vssadmindeleteshadows/shadow={3f4b36c7-7b13-4eb7-9f37-9fa472faa2fb}删除刚刚创建的卷影副本 图1-6使用secretsdump.py来解密NTDS.DIT文件3.使用Ntdsutil.exe获取NTDS.DITNtdsutil.exe是微软提供的一个为AD提供管理设施的命令行工具。 利用该工具可以维护和管理AD的数据库,清理不常用的服务器对象,整理AD数据文件下线碎片等。
SCCM 介绍SCCM(System Center Configuration Manager)用于部署更新、管理工作站及服务器上的软件,并向各类设备打补丁(如主域控、Exchange 服务器、员工笔记本等 核心能力安装/卸载应用程序安装补丁/更新运行脚本配置 Windows 应用程序 网络设置部署操作系统以及其他类似的自动化运维任务3.
1概述在ActiveDirectory域环境中,任何经过身份验证的用户或计算机都可以通过域控制器上的LDAP服务获取大量域信息。攻击者常在AD域渗透的侦察阶段利用LDAP进行信息收集。 如图1-3所示,数据库中包含25,138个用户、4,367台计算机、2,298个组、464,353条ACL、525,628个关系,以及从不同路径到达域管理员的攻击路径。! IMG325<palign="center">图1-3导入BloodHound后数据库
3使用Ldapdomaindump自动化收集Ldapdomaindump是一款通过LDAP自动收集并解析域信息的工具 该工具可收集以下信息:域用户、组、计算机账户域策略(密码要求及锁定策略)域信任关系按组分类的域用户按操作系统排序的域计算机3.1执行信息收集在域外环境下,使用已知的普通域用户凭据即可连接域控制器。 如图1-5所示,展示了按不同操作系统对域计算机进行排序的结果。!IMG327<palign="center">图1-5按不同操作系统对域计算机进行排序情况组策略可分为本地组策略和域组策略。 1.本地组策略收集 本地组策略(Local Group Policy)是组策略的基础版本,它面向独立且非域的计算机, 包含计算机配置及用户配置策略,如图1-1所示。 2)进入本地组策略编辑器,如图 1-3 所示。 3)依次选择“计算机配置”→“ Windows 设置”→“脚本(启动 / 关机)”,然后选择 “启动”选项,如图 1-4 所示。 6)单击“显示文件”按钮(见图 1-7)就会打开一个目录,可以向该目录投放后门木马,实现权限维持,如图 1-8所示 2 域组策略收集 当想批量管理域内计算机时,域管理员就可以通过组策略管理来统一对域内用户进行管 接下来详细阐述域内组策略内容。
一、 域信息收集 Active Directory是一个可以通过域控制器来管理连接在同一逻辑网络中的一组计算机和用户系统。 Windows域包含以下组件: LDAP:可以通过LDAP访问的数据库,并且该数据库实现了符合【MS-DRSR】及【MS-ADTS】规范的几种RPC。 DNS:支持认证的DNS服务器,客户端使用该DNS定位相关资源 1 、域控制器收集 进入内网的后渗透阶段,一般分为两种情况,一种是工作组渗透,另一种是域渗透。 但是即使存在域环境,我们拿到的第一台计算机也不一定在域内,需要通过多种方式确定域控制器的位置,进而控制整个域。 域控制器一定会运行LDAP服务,默认形况下有4个端口开放,具体的端口协议配置信息如表所示,这些配置信息可以协助我们确认该计算机是不是域控制器,并且DNS服务一般是安装在域控上的,如图1-3所示