Table of Contents
Merhabalar, bu yazımda sizlere TryHackMe platformunda bulunan “Gotta Catch’em All” isimli makinenin çözümü anlatacağım. Keyifli Okumalar…
Çözüm
1 — Nmap aracını kullanarak makine üzerindeki açık portlar ve servisler hakkında detaylı bilgi ediniyorum.
[root:/home/alper/Desktop/TRYHACKME]# nmap -sS -sV 10.10.81.24
Starting Nmap 7.94 ( https://nmap.org ) at 2023-06-07 17:34 +03
Nmap scan report for 10.10.81.24
Host is up (0.075s latency).
Not shown: 998 closed tcp ports (reset)
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 7.2p2 Ubuntu 4ubuntu2.8 (Ubuntu Linux; protocol 2.0)
80/tcp open http Apache httpd 2.4.18 ((Ubuntu))
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
2 — Web sayfasına gittiğim zaman bir apache doküman ekranı karşıma çıkıyor. Sayfa kaynağını incelediğimde html etiketi şeklinde gizlenmiş kullanıcı adı ve parola bilgileri çıkıyor. Bu bilgileri kullanarak SSH servisine bağlanıyorum.
</p>
</div>
<pokemon>:<***CENSORED***>
<!--(Check console for extra surprise!)-->
</div>
3 — SSH bağlantısı kurduktan sonra kullanıcı dizinindeki dosyaları inceliyorum. Bir C++ kodu içerisine gizlenmiş kullanıcı adı ve parola buluyorum.
[root:/home/alper/Desktop/TRYHACKME]# ssh pokemon@10.10.81.24
*
*
pokemon@root:~$
pokemon@root:~$ pwd
/home/pokemon
pokemon@root:~$ ls
Desktop Documents Downloads examples.desktop Music Pictures Public Templates Videos
pokemon@root:~$ cd Videos
pokemon@root:~/Videos$ ls
Gotta
pokemon@root:~/Videos$ cd Gotta
pokemon@root:~/Videos/Gotta$ ls
Catch
pokemon@root:~/Videos/Gotta$ cd Catch
pokemon@root:~/Videos/Gotta/Catch$ ls
Them
pokemon@root:~/Videos/Gotta/Catch$ cd Them
pokemon@root:~/Videos/Gotta/Catch/Them$ ls
ALL!
pokemon@root:~/Videos/Gotta/Catch/Them$ cd ALL!
pokemon@root:~/Videos/Gotta/Catch/Them/ALL!$ ls
Could_this_be_what_Im_looking_for?.cplusplus
pokemon@root:~/Videos/Gotta/Catch/Them/ALL!$ cat Could_this_be_what_Im_looking_for\?.cplusplus
# include <iostream>
int main() {
std::cout << "ash : ***CENSORED***"
return 0;
}pokemon@root:~/Videos/Gotta/Catch/Them/ALL!$
4 — Desktop dizinine geldiğim zaman bir zip dosyası görüyorum. Zip’ten çıkardığımda grass-type bayrağını bulunduran txt dosyası görüyorum. Dosyayı incelediğimde harflerin hexadecimal (onaltılık) tabanda yazıldığını anlıyorum. “xxd” komutu ile çözüp grass-type bayrağını elde ediyorum.
pokemon@root:~/Desktop$ unzip P0kEmOn.zip
Archive: P0kEmOn.zip
creating: P0kEmOn/
inflating: P0kEmOn/grass-type.txt
pokemon@root:~/Desktop$ cat P0kEmOn/grass-type.txt
***CENSORED***
pokemon@root:~/Desktop$
pokemon@root:~/Desktop$
pokemon@root:~/Desktop$ cat P0kEmOn/grass-type.txt | xxd -r -p
***CENSORED***
pokemon@root:~/Desktop$
5 — Daha sonra bulduğum kullanıcı adı ve parolayı kullanarak “ash” kullanıcısına geçiyorum.
Find komutu ile kalan bayrakları da buluyorum.
ash@root:/home/pokemon/Desktop$ find / -type f -name "*-type.txt" 2>/dev/null
/var/www/html/water-type.txt
/etc/why_am_i_here?/fire-type.txt
^C
ash@root:/home/pokemon/Desktop$ ls /home
ash pokemon roots-pokemon.txt