T1482-win-活动目录信息获取检测
来自ATT&CK的描述
攻击者可能会尝试收集有关域信任关系的信息,这些信息可用于识别Windows多域或林环境中的横向移动的机会。域信任为域提供了一种机制,以允许基于另一个域的身份验证过程访问资源。域信任允许受信任域的用户访问信任域中的资源。发现的信息可以帮助攻击者进行SID历史记录注入、票据传递和Kerberoasting。可以使用DSEnumerateDomainTrusts()Win32 API调用,.NET方法和LDAP枚举域信任。已知Windows实用程序Nltest被攻击者用来枚举域信任信息。
测试案例
在本文中将介绍以下内容:
- 使用csvde获取活动目录信息
- 使用ldifde获取活动目录信息
- 使用AdFind获取活动目录信息
- 使用nltest获取域内信息关系
检测日志
Windows安全日志、sysmon日志
测试复现
0x01 使用csvde获取活动目录信息
说明文档:
使用csvde导出的文件格式为csv,可以使用Microsoft Excel查看
默认只能在以下系统使用,例如:
- Windows Server 2003
- Windows Server 2008
- Windows Server 2003 R2
- Windows Server 2008 R2
- Windows Server 2012,
- Windows Server 2003 with SP1
- Windows 8
- ~
导出当前域内活动目录信息示例
导出当前域内所有信息:
csvde -f all.csv
导出当前域内所有用户信息:
csvde -f user.csv -r "(&(objectCategory=person))"
导出当前域内所有机器信息:
csvde -f machine.csv -r "(&(objectCategory=computer))"
导出当前域内所有组信息:
csvde -f group.csv -r "(&(objectCategory=group))"
导出当前域内所有管理员组的用户信息:
csvde -f admin.csv -r "(&(objectCategory=group)(name=Domain Admins))"
导出当前域内所有OU信息:
csvde -f ou.csv -r "(&(objectCategory=organizationalUnit))"
导出当前域内所有的域用户名:
csvde -f username.csv -r "(&(objectCategory=person))" -l SamAccountName
导出当前域内所有的计算机名:
csvde -f machinename.csv -r "(&(objectCategory=computer))" -l name
模拟测试效果
#域控制器模拟测试效果windows server 2016
C:\Users\12306br0>csvde -f all.csv
连接到“(null)”
用 SSPI 作为当前用户登录
将目录导出到文件 all.csv
搜索项目...
写出项目
...............................................................................................................................................................................................................................
导出完毕。后续处理正在进行...
导出了 223 个项目
命令已成功完成
测试留痕效果
#windows安全日志4688进程创建
已创建新进程。
创建者主题:
安全 ID: 361A\12306br0
帐户名: 12306br0
帐户域: 361A
登录 ID: 0x36D7FD
目标主题:
安全 ID: NULL SID
帐户名: -
帐户域: -
登录 ID: 0x0
进程信息:
新进程 ID: 0x12c0
新进程名称: C:\Windows\System32\csvde.exe
令牌提升类型: %%1938
强制性标签: Mandatory Label\Medium Mandatory Level
创建者进程 ID: 0x1234
创建者进程名称: C:\Windows\System32\cmd.exe
进程命令行: csvde -f all.csv
建议
备注:通过Windows安全日志可以看到,在进程csvde创建之后;会进行端口绑定活动生成事件5158;接着进行筛选连接行为生成事件5156,端口389;最后关闭进程事件4689.
从域外远程导出活动目录信息示例
导出远程域内所有信息:
csvde -s 192.168.1.1 -a test\admin Password -f all.csv
暂无模拟测试以及测试留痕数据。
0x02 使用ldifde获取活动目录信息
说明文档:
使用ldifde导出的文件格式为LDIF,可以使用notepad.exe查看
导出当前域内活动目录信息示例
导出当前域内所有信息:
ldifde -f all.txt
导出当前域内所有用户信息:
ldifde -r "(&(objectCategory=person))" -f user.txt
导出当前域内所有机器信息:
ldifde -r "(&(objectCategory=computer))" -f machine.txt
导出当前域内所有组信息:
ldifde -r "(&(objectCategory=group))" -f group.txt
导出当前域内所有管理员组的用户信息:
ldifde -r "(&(objectCategory=group)(name=Domain Admins))" -f admin.txt
导出当前域内所有OU信息:
ldifde -r "(&(objectCategory=organizationalUnit))" -f ou.txt
导出当前域内所有的域用户名:
ldifde -r "(&(objectCategory=person))" -l SamAccountName -f username.txt
导出当前域内所有的计算机名:
ldifde -r "(&(objectCategory=computer))" -l name -f machinename.txt
模拟测试效果
C:\Users\12306br0\Desktop\AdFind>ldifde -f all.txt
连接到“12306BR0B4DD.361a.com”
用 SSPI 作为当前用户登录
将目录导出到文件 all.txt
搜索项目...
写出项目...............................................................................................................................................................................................................................
导出了 223 个项目
命令已成功完成
C:\Users\12306br0\Desktop\AdFind>
测试留痕效果
已创建新进程。
创建者主题:
安全 ID: 361A\12306br0
帐户名: 12306br0
帐户域: 361A
登录 ID: 0x36D7FD
目标主题:
安全 ID: NULL SID
帐户名: -
帐户域: -
登录 ID: 0x0
进程信息:
新进程 ID: 0xdd8
新进程名称: C:\Windows\System32\ldifde.exe
令牌提升类型: %%1938
强制性标签: Mandatory Label\Medium Mandatory Level
创建者进程 ID: 0x69c
创建者进程名称: C:\Windows\System32\cmd.exe
进程命令行: ldifde -f all.txt
建议
备注:基于Windows安全日志检测该异常行为,重点可关注Windows安全日志中的4688、5158、5156、4689事件,其中进程信息、目标端口(53、389)可作为重点关注对象。
从域外远程导出活动目录信息示例
导出远程域内所有信息:
ldifde -s 192.168.1.1 -a test\admin Password -f all.txt
暂无模拟测试以及测试留痕数据。
0x03 使用AdFind获取活动目录信息
下载地址:https://www.joeware.net/freetools/tools/adfind/
导出当前域内活动目录信息示例
导出当前域内所有信息:
adfind.exe -h 127.0.0.1>all.tx
导出当前域内所有用户信息:
adfind.exe -h 127.0.0.1 -f objectcategory=person>user.txt
导出当前域内所有机器信息:
adfind.exe -h 127.0.0.1 -f objectcategory=computer>machine.txt
导出当前域内所有组信息:
adfind.exe -h 127.0.0.1 -f objectcategory=group>group.txt
导出当前域内所有管理员组的用户信息:
adfind.exe -h 127.0.0.1 -f "(&(objectCategory=group)(name=Domain Admins))">admin.txt
导出当前域内所有OU信息:
adfind.exe -h 127.0.0.1 -f objectcategory=organizationalUnit>ou.txt
导出当前域内所有的域用户名:
adfind.exe -h 127.0.0.1 -f objectcategory=person SamAccountName>username.txt
导出当前域内所有的计算机名:
adfind.exe -h 127.0.0.1 -f objectcategory=computer name>machinename.txt
模拟测试效果
C:\Users\12306br0\Desktop\AdFind>AdFind.exe -h 127.0.0.1>all.txt
AdFind V01.52.00cpp Joe Richards ([email protected]) January 2020
测试留痕效果
#windows安全日志进程创建4688,Windows server 2016测试效果
已创建新进程。
创建者主题:
安全 ID: 361A\12306br0
帐户名: 12306br0
帐户域: 361A
登录 ID: 0x36D7FD
目标主题:
安全 ID: NULL SID
帐户名: -
帐户域: -
登录 ID: 0x0
进程信息:
新进程 ID: 0x10a4
新进程名称: C:\Users\12306br0\Desktop\AdFind\AdFind.exe
令牌提升类型: %%1938
强制性标签: Mandatory Label\Medium Mandatory Level
创建者进程 ID: 0x69c
创建者进程名称: C:\Windows\System32\cmd.exe
进程命令行: AdFind.exe -h 127.0.0.1
建议
备注:基于Windows安全日志检测该异常行为,重点可关注Windows安全日志中的4688、5158、5156、4689事件,其中进程信息、目标端口(389)可作为重点关注对象。
从域外远程导出活动目录信息示例
导出远程域内所有信息:
adfind.exe -h 192.168.1.1 -u test\admin -up Password>all.txt
暂无模拟测试以及测试留痕数据。
0x04 使用Nltest获取活动目录信息
说明文档:
使用语法
nltest [/域控服务器: <servername>] [<operation> [<parameter>]
/server:<ServerName>在您指定的远程域控制器上运行nltest。如果未指定此参数,则nltest在本地计算机(即域控制器)上运行。
导出当前域内活动目录信息示例
显示域的信任关系下面的示例列出了为您的域建立的信任关系。
nltest /domain_trusts
模拟测试效果
PS C:\Users\wangxin> nltest /domain_trusts
域信任的列表:
0: 361A 361a.com (NT 5) (Forest Tree Root) (Primary Domain) (Native)
此命令成功完成
测试留痕效果
#Windows安全日志,4688进程创建,windows server 2008
已创建新进程。
主题:
安全 ID: 361A\wangxin
帐户名: wangxin
帐户域: 361A
登录 ID: 0x23cb8
进程信息:
新进程 ID: 0xa08
新进程名: C:\Windows\System32\nltest.exe
令牌提升类型: TokenElevationTypeDefault (1)
创建者进程 ID: 0x9e8
建议
备注:建议基于Windows安全日志中的进程信息进行检测。
参考推荐
MITRE-ATT&CK-T1482
https://attack.mitre.org/techniques/T1482/
渗透基础——活动目录信息的获取2:Bypass AV