“Aslanlar kendi tarihçilerine kavuşuncaya kadar kitaplar avcıyı övecektir.”
___________________________________________________________Afrika Atasözü
Herkese merhaba,
Bu yazı içerisinde Hackthebox Irked makinasının çözümü anlatılmaktadır.
İşletim Sistemi: Linux
Zorluk: Kolay [4.4/10]
NMAP taramasıyla işe koyuluyoruz:
root@kali:~/htb/irked# nmap -sV -sC -p- -T4 10.10.10.117
Tarama sonucunda ssh, http, rpc, ve irc servis portlarının açık olduğunu görmekteyiz. HTTP servisini kontrol etmek için tarayıcı üzerinden giriş yaptığımızda içerisinde resim bulunan kaynak kodunda da herhangi bir bilgi barındırmayan boş bir sayfayla karşılaşıyoruz.
Dirbuster, Dirb, Gobuster vb. araçları kullanarak dizin ve dosya taraması yaptımızda da ilginç herhangi bir şeyle karşılaşmamaktayız Yukarıdaki resimde de gördünüz gibi giriş sayfasında bulunan “IRC is almost working!” notu bizlere irc servis portuna yönelmemiz konusunda ipucu veriyor.
IRC servis portuna kurulu olan UnrealIRCd hakkında biraz google araştırması yaptığımızda daha önce çıkan açık ve bununla alakalı exploit olduğunu görüyoruz [CVE-2010-2075 1].
root@kali:~/htb/irked# searchsploit unrealircd
İlgili metasploit modülünü kullanarak shell bağlantımızı alıyoruz.
msf > use exploit/unix/irc/unreal_ircd_3281_backdoor
Non-interactive shell bağlantımızı interactive shell e dönüştürmek için aşağıdaki komutu kullanıyoruz.
python -c "import pty;pty.spawn('/bin/bash')"
ircd kullanıcı ile içerdeyiz.
ircd@irked:~/Unreal3.2$ cat /etc/passwd
Sistemdeki kullanıcı adlarını kontrol ettiğimizde djmardov isimli bir başka kullanıcının bulunduğunu görmekteyiz.
İlgili kullanıcının dizini altındaki dosyaları listeleyerek önemli bir şey olup olmadığına bakalım:
ircd@irked:~/Unreal3.2$ ls -lahR /home/djmardov/*
Yukarıdaki resimde de görüldüğü gibi Documents klasörü altında user.txt ve .backup bulunmakta. User.txt’i görünce user flagi bulduk sandım ancak mevcut kullanıcıda user.txt görüntüleme iznimiz yok. .backup’ı açtığımızda içerisinde bir not ve şifre olarak kullanılacak bir metin olduğunu görüyoruz:
Dosya içerisinde çıkan metnin bir Stegonagrafi (bilgi gizleme) yönteminde şifre olarak kullanılabileceğini anlamak çok zor olmuyor. Elimizdeki verilere dönüp baktığımızda anasayfa (http://10.10.10.117 1) içerisindeki sarı gülücük resminin içine bir veri gizlenmiş olabileceğini düşünebiliriz.
Anasayfadaki irked.jpg dosyasını bilgisayarımıza indirip steghide aracıyla içerisinde gizlenen veriyi .backup dosyası içerisinden çıkan “UPupDOWNdownLRlrBAbaSSss” şifresiyle çıkarabilmekteyiz.
Resim içine gizlenen pass.txt dosyasından çıkan “Kab6h+m+bbp2J:HG” şifrenin daha önce tespit ettiğimiz djmardov kullanıcısının şifresi olduğunu anlıyoruz. Bu kullanıcı bilgileriyle makinaya ssh bağlantısı gerçekleştirelim.
root@kali:~/htb/irked# ssh [email protected]
User flagine ulaştık sırada yetki yükseltme ve root flagini elde etme aşaması var!
YETKİ YÜKSELTME
Linux sistemlerde yetki yükseltme denemeleri için temel bilgi içeren bu linki 5 referans alabilirsiniz. Bu makinada da SUID SGID bitleri aracılığıyla yetki yükseltme yöntemi kullanılmaktadır.
djmardov@irked:~$ find / -perm -u=s -type f 2>/dev/null
SUID bit içeren dosyaları arattığımızda /usr/bin/viewuser dosyasının alışılmışın dışında olarak listelenmesi dikkatimizi çekecektir.
İlgili dosyayı çalıştırdığımızda /tmp/listuser isimli bir dosyanın bulunamadığı hatasını veriyor. Aradığı adreste aradığı isimde bir dosya oluşturarak istediğimiz komutu root yetkisi ile çalıştırmasını sağlayacağız.
O yüzden /tmp dizini altında listusers adında bir dosya oluşturarak içerisine
Böylelikle /root/root.txt aracılığıya asıl hedefimiz olan flag bilgisine de ulaşmış olduk.
görüşmek üzere.
___________________________________________________________Afrika Atasözü
Herkese merhaba,
Bu yazı içerisinde Hackthebox Irked makinasının çözümü anlatılmaktadır.
İşletim Sistemi: Linux
Zorluk: Kolay [4.4/10]
NMAP taramasıyla işe koyuluyoruz:
root@kali:~/htb/irked# nmap -sV -sC -p- -T4 10.10.10.117
Tarama sonucunda ssh, http, rpc, ve irc servis portlarının açık olduğunu görmekteyiz. HTTP servisini kontrol etmek için tarayıcı üzerinden giriş yaptığımızda içerisinde resim bulunan kaynak kodunda da herhangi bir bilgi barındırmayan boş bir sayfayla karşılaşıyoruz.
Dirbuster, Dirb, Gobuster vb. araçları kullanarak dizin ve dosya taraması yaptımızda da ilginç herhangi bir şeyle karşılaşmamaktayız Yukarıdaki resimde de gördünüz gibi giriş sayfasında bulunan “IRC is almost working!” notu bizlere irc servis portuna yönelmemiz konusunda ipucu veriyor.
IRC servis portuna kurulu olan UnrealIRCd hakkında biraz google araştırması yaptığımızda daha önce çıkan açık ve bununla alakalı exploit olduğunu görüyoruz [CVE-2010-2075 1].
root@kali:~/htb/irked# searchsploit unrealircd
İlgili metasploit modülünü kullanarak shell bağlantımızı alıyoruz.
msf > use exploit/unix/irc/unreal_ircd_3281_backdoor
Non-interactive shell bağlantımızı interactive shell e dönüştürmek için aşağıdaki komutu kullanıyoruz.
python -c "import pty;pty.spawn('/bin/bash')"
ircd kullanıcı ile içerdeyiz.
ircd@irked:~/Unreal3.2$ cat /etc/passwd
Sistemdeki kullanıcı adlarını kontrol ettiğimizde djmardov isimli bir başka kullanıcının bulunduğunu görmekteyiz.
İlgili kullanıcının dizini altındaki dosyaları listeleyerek önemli bir şey olup olmadığına bakalım:
ircd@irked:~/Unreal3.2$ ls -lahR /home/djmardov/*
Yukarıdaki resimde de görüldüğü gibi Documents klasörü altında user.txt ve .backup bulunmakta. User.txt’i görünce user flagi bulduk sandım ancak mevcut kullanıcıda user.txt görüntüleme iznimiz yok. .backup’ı açtığımızda içerisinde bir not ve şifre olarak kullanılacak bir metin olduğunu görüyoruz:
Dosya içerisinde çıkan metnin bir Stegonagrafi (bilgi gizleme) yönteminde şifre olarak kullanılabileceğini anlamak çok zor olmuyor. Elimizdeki verilere dönüp baktığımızda anasayfa (http://10.10.10.117 1) içerisindeki sarı gülücük resminin içine bir veri gizlenmiş olabileceğini düşünebiliriz.
Anasayfadaki irked.jpg dosyasını bilgisayarımıza indirip steghide aracıyla içerisinde gizlenen veriyi .backup dosyası içerisinden çıkan “UPupDOWNdownLRlrBAbaSSss” şifresiyle çıkarabilmekteyiz.
Resim içine gizlenen pass.txt dosyasından çıkan “Kab6h+m+bbp2J:HG” şifrenin daha önce tespit ettiğimiz djmardov kullanıcısının şifresi olduğunu anlıyoruz. Bu kullanıcı bilgileriyle makinaya ssh bağlantısı gerçekleştirelim.
root@kali:~/htb/irked# ssh [email protected]
User flagine ulaştık sırada yetki yükseltme ve root flagini elde etme aşaması var!
YETKİ YÜKSELTME
Linux sistemlerde yetki yükseltme denemeleri için temel bilgi içeren bu linki 5 referans alabilirsiniz. Bu makinada da SUID SGID bitleri aracılığıyla yetki yükseltme yöntemi kullanılmaktadır.
djmardov@irked:~$ find / -perm -u=s -type f 2>/dev/null
SUID bit içeren dosyaları arattığımızda /usr/bin/viewuser dosyasının alışılmışın dışında olarak listelenmesi dikkatimizi çekecektir.
İlgili dosyayı çalıştırdığımızda /tmp/listuser isimli bir dosyanın bulunamadığı hatasını veriyor. Aradığı adreste aradığı isimde bir dosya oluşturarak istediğimiz komutu root yetkisi ile çalıştırmasını sağlayacağız.
O yüzden /tmp dizini altında listusers adında bir dosya oluşturarak içerisine
komutlarını yazıyoruz. Daha sonra /tmp/listuser dosyasına çalıştırma izni verip SUID bit içeren /usr/bin/viewuser dosyasını çalıştırdığımızda listuser dosyası içerisindeki komut root yetkisi ile çalıştırılacağından root shell elde etmiş olacağız.#!/bin/bash
/bin/bash
Böylelikle /root/root.txt aracılığıya asıl hedefimiz olan flag bilgisine de ulaşmış olduk.
görüşmek üzere.
Moderatör tarafında düzenlendi: