Aralık 2020

17 Aralık 2020 Perşembe

Try Hack Me Pickle Rick Odasının Çözümü


 


Pickle Rick Odasının Çözümü

 

Bu blog yazımda Try Hack Me de bulanan Pickle Rick odasının çözümünü göstereceğim haydi başlayalım ….

 

(Bu Rick ve Morty temalı meydan okuma, Rick'in iksirini turşudan insana dönüştürmesine yardımcı olacak 3 bileşen bulmak için bir web sunucusundan yararlanmanızı gerektirir.

 

Sanal makineyi bu göreve dağıtın ve web uygulamasını keşfedin.)

 

 


Yukarıdaki ipuçları okuyarak bir web servisinin olduğunu anlamıştık zaten ama biz ne olur ne olmaz sistemimizi nmap taraması gerçekleştiriyoruz hangi servislerin çalıştığını görmek için.

nmap taramızı yapıyoruz.

En yaygın kullanılan 2 portun açık olduğunu görüyoruz. 80. port açık olduğundan dolayı hemen web servisinin çalıştığından emin olduğumdan dolayı internet tarayıcıma IP adresini yazarak bağlandım ve karşıma web sitesi çıktı.

 


ana sayfada pek bir şey bulamadım kaynak kodunu inceleyelim bakalım neler göreceğiz.


kaynak koduna baktığımız zaman bize bir kullanıcı adı veriyor bunu hemen yanımıza not edip yolumuza devam ediyoruz.

gizli dizinlerin ve giriş sayfaları olabilme ihtimaline karşı hemen bir gobuster taraması gerçekleştiriyorum.

gobuster taraması bittikten sonra gizli dizinleri de keşfettik hemen bunların içerisine girip ne var ne yok bir bakalım.

robots.txt inceleyince karşımıza değişik bir string çıkıyor ne işe yardığını bilmiyorum şimdilik ama yine yanıma not alıyorum ileride lazım olabilir belki ;



assets dizinine bakıyorum daha sonra burada resimler ve birkaç kaynak kod dışında bir şey bulamadım.


login.php dizinine girince bizden bir kullanıcı adı parola istiyor.



kullanıcı adını ana sayfanın kaynak kodunu incelerek bulmuştuk şifrede acaba robots.txt de bulmuş olduğumuz string olabilir mi diye deneyince tataaa giriş yapabiliyoruz. 



komut paneli gibi bir şey karşımıza çıktı galiba burada command injection atağını yapmamızı istiyorlar eee o zaman hadi başlayalım;

normalde dizin içerisinde gezinmek için kim olduğumuzu görmek için kullanmış olduğum komutları bir girelim bakalım nelerle karşılaşacağız.






ls komudunu çalıştırdığımız zaman txt dosyalarını görüyorum bunları okumak için ilk olarak cat komutlarıyla içerisine bakalım.

görünüşe göre cat komutunu engellemişler komutumuz çalışmadım onun benzer işlevini olan less komutunu deneyelim bakalım çalışacak mı

ve karşımıza geldi ilk sorunun cevabını bulmuş olduk.

daha sonra ls komutuyla bulmuş olduğum diğer dizinlere bakalım;

diğer dizinlerde pek bir şey bulamadık

 

clue.txt içerisine bakalım

galiba burada bize diğer dosya dizinlerine bakmamız hakkında ipucu veriyor bunu alalım bir kenara bakalım başka ipucu bulabilecek miyiz.

 

şimdi bir önce ipucumuzda bize aslında ne yapacağımız hakkında bir fikir vermişti şimdi home dizinine bakıp diğer soruların flag değerlerini elde etmeye çalışalım;



ubuntu ve rick adında iki farklı kullanıcı gördük rick altına bakalım neler varmış diye;



second ingredients gördük bir bakalım neymiş.



2.flag değerinide karşımızda gördük. şimdi don flag değerini bulmamız gerekiyor.  şimdi root dizinine erişmemiz gerekmekte tabi ki burada öncelikle root olmak gerekiyor şimdi sudo –l ile mevcut kullanıcının root yetkilerini bir bakalım ilk olarak



tüm sudo erişim haklarına sahip olduğumuzu görebiliyoruz burada o zamana hemen root dizinin altına bakalım orada neler var diye



3rd.txt dosyasının içerisinde bir bakalım 


 

ve son flag değerimizi buluyoruz.

 











Try Hack Me Pickle Rick writeup


7 Aralık 2020 Pazartesi

Try Hack Me Simple CTF Çözümü


  



Try Hack Me Simple CTF

 

Bu blog yazımız da Try Hack Me platformunda bulunan Simple CTF odasının çözümü anlatacağım

 



Bu kısımda hedef makinemizi deploy butonuna basarak aktifleştirdik.

 


(1000 numaralı bağlantı noktası altında kaç hizmet çalışıyor?)


Burada bizden çalışan portları tespit etmemizi istiyor burada yapmamız gereken nmap taramasını gerçekleştirmek ve 1000 numaralı port sayısından düşük port sayılarını yazmak.




 

(En yüksek bağlantı noktasında ne çalışıyor?)

Burada port numarası en yüksek olandan hangi servisinin çalıştığını soruyor yine nmap taraması sonucunda görülebilir.



 

 

 

(Uygulamaya karşı kullandığınız CVE nedir?)


Burada bir zafiyet olduğunu anlıyoruz bu zafiyetten ilerlenmesi gerekmektedir bundan dolayı nmap te tarama sonucu 80.port yani http portu açık olduğundan dolayı ilk olarak o tarafta zafiyet aramaya başlıyoruz browserımızdan hedefe makinenin ıp adresini yazarak bağlandık.



web hizmeti verildiğini gördük gizli dizinleri tespit etmek için gobuster aracının yardımıyla gizli dizinleri keşif etmeye çalışıyoruz.

 


gobuster taraması sonucu /simple  dizinini keşif ettik hemen içerisine girip ne olup olmadığını görüyoruz.




burada bizi bir web sitesi teması karşılıyor gidip CMS Made Simple hakkında biraz araştırma yaptıktan sonra ne olduğunu öğrendim.  CMS Made Simple (CMSMS) açık kaynak (GPL) lisansıyla yayınlanan bir içerik yönetim sistemidir (CMSMS) web geliştiricileri ve site sahipleri tarafından kullanılmaktadır.  Hazır olarak kullanıldığı öğrendiğim zaman burada zafiyet olabileceğini düşündüm ve hemen versiyon bilgileri aradım sayfa kaynağını inceledim fakat bir şey göremedim en sonda en alt kısmında versiyon bilgisini bize kabak gibi sunmuşlardı.



hemen versiyon hakkında cve arattım.



ve CVE numaraını yazınca sorunun cevabını bulmuş olduk.

 

 

(Uygulama ne tür bir güvenlik açığına açıktır?)

burada hemen CVE numarasının yanında yazmış oldukları sql injection güvenlik açığının olduğunu cevap olarak yazdım.

 

 

 

(parola nedir?)


aslında burada tüm yapboz parçalarını birleştirip sistemde kullanılan parolanın ele geçirilmesini istiyor. şimdi biz uygulamada nasıl zafiyet olduğunu öğrendik bundan dolayı bu zafiyeti kullanarak sisteme sızmaya çalışacağız.
Kali linuxta searchsploit aracı yardımıyla var olan zafiyet için hazırlanmış exploitleri aramamıza yardımcı olmaktadır.

CMS Simple adında exploit var mı yok mu arttık



çıktı sonucunda en altta sqli açığı ve bununla ilgili 46635.py hakkında exploit olduğunu gösterdi. Be expoti çalıştırarak sistemde kullanılan parolayı elde etmeye çalışalım.

exploitin olduğu dizine gidip ve expoliti çalıştıralım.


 

(Burada exploiti çalıştırırken hata alabilirisiniz çünkü requests ve termcolor modülü büyük bir ihtimalle yüklü olmadığından hata döndürecektir burada bu modülleri eklemeniz gerekmektedir. bu modülleri eklemek için;
sudo pip install termcolor -t /usr/lib/python2.7
sudo pip install requests -t /usr/lib/python2.7
modülleri yükledikten sonra exploiti çalıştırdığınız zaman hata almayacaksınız.)

 

exploiti çalıştırmak için gereken parametreleri ve değerli verdikten sonra parola ve kullanıcı adı bilgisini bulması için bekliyoruz.


exploit sonucunda parolayı ve kullanıcı adını görebiliyoruz.

 

 

 


(Elde edilen bilgilerle nereye giriş yapabilirsiniz?)

nmap taraması sonucu ssh servisinin olduğunu görmüştük ve ssh bağlantısını deniyorum.



bağlantı gerçekleşti.

 

(Kullanıcı bayrağı nedir?)


burada sunucu içerisinde biraz dolaşınca user.txt görüyoruz ve cat komutuyla görebiliyoruz.



 

 

 

(Giriş dizininde başka bir kullanıcı var mı? Onun adı ne?)

 

yine makine içerisinde home dizini altında diğer kullanıcıyı görebiliyoruz.



 

 

 

 

(Ayrıcalıklı bir kabuk oluşturmak için nelerden yararlanabilirsiniz?)


burada root yetkisini almak için neyden yararlanılır diye bahsetmek istemiş hemen sudo –l komutumuz ile sudo üzerinde root yetkisinde çalıştırılabilecek uygulamaları görebilmekteyiz.



burada vim aracı ile kabuk oluşturabiliriz.

 

 

 

(root bayrağı nedir?)


burada root yetkisine erişip root ile dizin dosyaların içerisinde gezinmemiz gerekmektedir daha önce vim aracı ile sudo üzerinden çalışabileceğini görmüştük bunda dolayı root yetkisinde çalıştırıp kabuk almalıyız.

vim aracını açıp içerisine :!bash yazıp enterlıyoruz.





vim yazdıktan sonra root yetkisine yükseliyoruz.

daha sonra içerde dolandıktan sonra root.txt bulup içerisini okuyoruz ve flag değerini elde ediyoruz.







 

 Try Hack Me Simple CTF writeup