Popcorn Çözümü [HackTheBox]

Makine IP: 10.10.10.6

Nmap:
image
80 üzerinde bir Apache çalıştığını gördük.

image

Sayfada herhangi bir ipucu bulunmamakta, aramaya devam ediyoruz.

“Gobuster” ile dizin taraması yapıyoruz. (Burada da diğer komutlar gibi parametreler vs. gereksiz detaylar ile yazıyı şişirmek istemiyorum, komutlar ile ilgili detaylar google, man sayfalarında mevcut)

image
Burada /test , /torrent adlı dizinleri dikkatimizi çekiyor.

/test

image
PHP info sayfası açık bir şekilde bırakılmış. Sistem hakkında oldukça bilgi mevcut. Araştırmaya devam ediyoruz.

/torrent

image
Torrent için oluşturulmuş PHP dilinde kodlanmış bir script görüyoruz. Burada dikkatimizi upload bölümü çekiyor. Fakat dosya yüklemek için üye olmak gerekiyor. Üye olup torrent dosyası dışında birşey yüklenmediğini görüyoruz. Bunun yerine gerçekten bir torrent dosyası yükleyerek davranışını inceliyoruz.
image

Yüklediğimiz torrent için yeni bir panel açıyor. Burada da screenshot bölümünde png uzantılı dosya yükleyebileceğimizi görüyoruz. Şimdide burayı manipüle etmeye çalışacağız.

“msfvenom” aracı ile PHP dilinde reverse shell payloadımızı oluşturuyoruz.

image
Screenshot bölümüne bu oluşturduğumuz payloadı yükleyeceğiz. Fakat .png uzantılı dosya istediği için bunu Burp ile proxy yapıp değiştirerek atlatacağız.

image
İsteği yakalayıp filename bölümündeki .png uzantısını silip isteği gönderdiğimizde yüklendiğini dönen cevapta görüyoruz.

Peki bu attığımız php reverse shell nereye yüklendi? Shell alabilmek için tetiklememiz gerekiyor. Bu kez /torrent altında dizin taraması yapıyoruz.

image
PNG dosyalarının yüklendiği bölümü bulduk.

image
Tetiklemeden önce msfconsole üzerinden bir multihandler çalıştıralım.

image
(msfvenom oluştururken seçtiğimiz php payload ile buradaki payloadın aynı olması gerekiyor)

Tetiklediğimizde meterpreter oturumumuz geldi.

image
Yetki Yükseltme

Dizin taraması yaparken /test dizininde PHP info sayfasının olduğunu görüntülemiştik.

image
Linux çekirdek sürümünün 2.6.31 olduğunu görüyoruz. Ayrıca komut satırından da bakabiliriz.

image
2.6.31 sürümü için araştırma yaptığımızda yetki yükseltmek için exploit olduğunu görüyoruz.

image
Exploiti kendi makinemiz üzerinden hedefe taşıyacağız. Bunun için SimpleHTTPServer kullanıyoruz.

image
Hedef makinede wget bulunduğu için indirebiliyoruz. /tmp dizini tüm kullanıcılar için yetkili dizin olduğu için işlemlerimizi burada yapıyoruz.

image
C dilinde yazılmış exploiti gcc kullanarak derliyip çalıştırma yetkisi veriyoruz.

image
Exploit sistem üzerinde parolası 12345 olan firefart adında root yetkilerine sahip bir kullanıcı oluşturuyor. SSH ile bağlanıyoruz.

image
Exploit için daha detaylı bilgiye https://www.exploit-db.com/exploits/40839 buradan bakabilirsiniz.

14 Likes

Baştan sona tam bir atak senaryosu gibi işlenmiş, adım adım atak ile alâkalı alternatif yollar gösterilmiş. Komutlama için yüklenenler, yetki yükseltme mevzularıda dahil bu alanda kendisini geliştirmek isteyen arkadaşlar için güzel bir antreman ve döküman olacak. Unutmadan hem race condition(konumuzda dirtycow) hem sömürgeç geliştirme dediğimizde aklıma gelen şu makaleyide yorum ile eklemiş olayım, okumanız dileğiyle race condition exploitation

5 Likes