- 6 May 2022
- 124
- 79
Öncelikle Herkese Merhaba Bugün Sizlerle "Poster" İsimli Ctfyi çözeceğiz
LİNK : TryHackMe | Poster
İLK ÖNCE
Open VPN aracılığıyla makinemizi TryHackMe ye bağlıyoruz.
1.SORU
Sunucuda kurulu rdbms nedir?
bunu öğrenmek için bir nmap taraması yapıyoruz ve 22.port ssh portu 80.port http portu olduğundan geriye kalan 5432.portumuzda rmdbs nin kurulu olduğunu anlıyoruz ve kurulu rmdbs nin ismini görmek için service kısmına bakıyoruz.
Cevap : postgresql
2.SORU
rdbms hangi bağlantı noktasında çalışıyor?
Bu sorunun cevabını 1.soruda bulmuştuk zaten
Cevap : 5432
3.SORU
Metasploit'i başlattıktan sonra, kullanıcı kimlik bilgilerini numaralandırmamıza izin veren ilişkili bir auxiliary modül arayın. Modüllerin tam yolu nedir (auxiliary ile başlayan)?
Metasploit e giriyoruz.
Postgresql ile ilgili bir exploit modülü araştırıyoruz yani "search postgresql" yazıyoruz metasploitimize
şimdi kimlik doğrulamayla alakalı olan exploitleri inceliyoruz
ve aralarından "auxiliary/scanner/postgres/postgres_login" bu exploiti buluyoruz
4.SORU
Bulduğunuz kimlik bilgileri nelerdir? örnek: kullanıcı:şifre
3.soruda bulduğumuz exploit modülünü kullanıyoruz kullanmak için exploiti seçmemiz ve ayarlamamız gerekli bunun için sırasıyla göstereceğim işlemleri uyguluyoruz
use auxiliary/scanner/postgres/postgres_login
yazıyoruz ve bu sayede exploitimizi seçimiş oluyoruz
şimdi ayar yapmamız gerekli bunun için
set RHOSTS <hedef ip>
yazıyoruz ve hedef makinamızı seçiyoruz
ardından "run" yazıyoruz ve teker teker şifreleri deniyor
ve aralarından bir tanesine Login Successful dediğini görüyoruz yani o kullanıcı adı ve şifre ile giriş yapabilmiş
CEVAP : postgresassword
5.SORU
Doğru kullanıcı kimlik bilgileriyle (auxiliary ile başlayarak) komutları çalıştırmanıza izin veren modülün tam yolu nedir?
yine aynı şekilde "search postgresql" yazıyoruz
y exploitleri inceliyoruz deniyoruz ve aralarından "auxiliary/admin/postgres/postgres_sql" bu exploiti buluyoruz
6.SORU
5.sorunun sonuçlarına göre, sunucuda kurulu rdbms sürümü nedir?
Bunu bulabilmek için 5.sorudaki exploiti modülünü kullancaz bu modülü kullanmak için sırasıyla
use auxiliary/admin/postgres/postgres_sql
yazıyoruz ve exploitimizi ayarlıyoruz
ayar yapmamız gerekli ayar yapmak için
set PASSWORD password
burda daha yeniki buludğumuz şifreyi girdik
set RHOSTS <hedef makina>
ve "run" yazıyoruz
ve karşımıza postgresql sürümü geliyor
7.SORU
Kullanıcı karmalarını çıkarmaya izin veren modülün tam yolu nedir (auxiliary ile başlayarak) ?
bu soruyu çözmek için exploit modüllerini araştırmalıyız bunun için soruyu ingilizceye çeviriyoruz
What is the full path of the module that allows for dumping user hashes (starting with auxiliary)?
bu sorunun içinden user hashses kelimesini anahtar kelime olarak alıyoruz
ve googlda "postgresql 9.5.21 exploit module user hashes" böyle aratıyoruz
karşımıza bir site çıkıyor "Postgres Password Hashdump"
sitede biraz aşağıya iniyoruz ve exploitimizi görüyoruz
Cevap : auxiliary/scanner/postgres/postgres_hashdump
8.SORU
Modül kaç kullanıcı karması döküyor?
bu soru için yukardaki bulduğumuz exploiti kullanmamız gerekiyor kullanmak için sırasıyla
use auxiliary/scanner/postgres/postgres_hashdump
diyerek exploitimizi ayaralıyoruz
set USERNAME postgres
set PASSWORD password
set RHOSTS <hedef makina>
run
dediğimizde önümüze hashler düşecek
tam 6 tane hash var
Cevap : 6
9.SORU
Kimliği doğrulanmış bir kullanıcının sunucuda kendi seçtikleri dosyaları görüntülemesine izin veren modülün (auxiliary ile başlayan) tam yolu nedir?
bu soruyu çözmemiz için bir exploit modülü bulmamız gerekli bunun için sırasıyla
metasploite giriyoruz
search postgresql
yazıyoruz ve çıkan exploitleri inceliyoruz incelerken sorudaki anahtar kelimeleri kullanıyoruz
ve exploitimizi buluyoruz
Cevap : auxiliary/admin/postgres/postgres_readfile
10.SORU
Uygun kullanıcı kimlik bilgileriyle (exploit ile başlayarak) rastgele komut yürütülmesine izin veren modülün tam yolu nedir?
aynı yukardaki yaptıklarımız gibi soruyu ingilizceye çeviriyoruz
What is the full path of the module that allows arbitrary command execution with the proper user credentials (starting with exploit)?
ve bir anahtar kelime arıyoruz anahtar kelimemiz "command execution" olsun diyerek metasploitteki exploitlere bakıyoruz ve aralarından bi tanesini seçiyoruz
exploit/multi/postgres/postgres_copy_from_program_cmd_exec
bunu seçiyoruz ve denediğimizde yanılmadığımızı anlıyoruz
Cevap : exploit/multi/postgres/postgres_copy_from_program_cmd_exec
11.SORU
Makineyi tehlikeye atın ve user.txt dosyasını bulun
metasploite giriyoruz
use auxiliary/admin/postgres/postgres_readfile
diyoruz
set RHOSTS <hedefmakina>
set PASSWORD password
run
diyoruz ve exploitimiz bir dosya buluyor /home/dark/credentials.txt
şimdi aynı exploitle aynı ayarları işlemleri yapıyoruz tek farklı olarak
set RFILE /home/dark/credentials.txt
run
yazdığımızda karşımıza bir ssh usernamesi ve passwordu çıkıyor
ssh ile giriyoruz
ssh dark@<hedefip>
terminale bunu yazıyoruz ve passwordu istiyor
passwordumuzu daha yeni bulmuştuk passwordumuz "qwerty1234#!hackme"
ve girdik
şimdi cd /home yazıyoruz
cd alison yazıyoruz
find / -type f -user alison 2>/dev/null
yazıyoruz
Bu sayede gizlenmiş dosyaları görebiliyoruz aralarından config.php dikkatimizi çekiyor ve cat toolü ile açıyoruz
cat /var/www/html/config.php
ve alisonun kullanıcı bilgilerini görüyoruz
şimdi terminale exit yazıyoruz
ve alisonun hesabına bağlanıyoruz ssh alison@<hedefip>
password isteyecektik password "p4ssw0rdS3cur3!#"
giriyoruz ve "cat user.txt" yazarak bayrağımızı buluyoruz
Cevap : THM{postgresql_fa1l_conf1gurat1on}
12.SORU
Ayrıcalıkları yükseltin ve root.txt dosyasını edinin
sudo -l
yazıyoruz ve alisonun passwordunu isteyecektir daha yeniki config dosyasından bulmuştuk onu giriyoruz "p4ssw0rdS3cur3!#"
böylelikle kendimize yetki vermiş olduk
cd /
yazıyoruz ve en başa geliyoruz
sudo cat /root/root.txt
yazıyoruz ve cat toolü ile root.txt dosyasını açıyoruz
ve bayrağımız
Cevap : THM{c0ngrats_for_read_the_f1le_w1th_credent1als}