Merhabalar herkese. Bu yazıda sizlerle beraber hackNos: Os-Bytesec zafiyetli makinenin çözümünü inceleyeceğiz.
https://www.vulnhub.com/entry/hacknos-os-bytesec,393/
Makine ismi: Os-Bytesec
Yayınlanma Tarihi: 8 Kasım 2019
Yapan: Rahul Gehlaut
Boyut/Format: 885mb/OVA
Zorluk: Orta
İşletim Sistemi: Linux
Seri: hackNos
Açıklama: Makinedeki 2 flag dosyasını bul.
Not: Başlamadan önce belirtmek isterim. İndirdiğiniz makine VMware 'da düzgün çalışmayacaktır. VirtualBox üzerinden CTF'i çözmenizi öneririm.
İlk önce makinemizin ip adresini tespit etmek için "netdiscover" komutunu kullanıyoruz.
IP adresini öğrendikten sonra nmap taraması yapalım. Bakalım neler var.
Nmap taramasına göre sistemimizde http(web), netbios-ssn ve ssh çalışıyormuş. SSH servisi default olarak 22. portta çalışır normalde. Ama boş, herhangi bir portta çalışmasında da sıkıntı yoktur. Biz ilk iş olarak tarayıcıdan web servisimize göz atalım.
Sitemizi biraz inceledikten sonra en aşağıda bir yazı mevcut. "####################GET#####smb##############free" bize smb ile alakalı ipucu veriyor. Biraz daha bilgi toplamaya ihtiyacımız var gibi. Sistem hakkında bilgi toplamaya çalışalım şimdi.
'smb' adında bir kullanıcı keşfettik. Az öncede web sayfamızda 'GET smb free' bilgisi yazıyordu. nmap taramasında da hatırlarsınız netbios-ssn servisinda "Samba smbd" çalışmaktaydı. Bu kadar smb ile alakalı bilgi topladığımıza göre smbclient aracımızı kullanalım artık.
Bizden parola isteyecektir ama hatırlayın "GET smb free". Hiç bişi yazmadan enter ladığımızda giriş yapabiliyoruz. ls ile neler var baktığımızda 'main.txt' ve 'safe.zip' dosyalarını görüyoruz. Bunları kendi bilgisayarımıza indirebilmek için "get" komutu yeterli olacaktır. Şimdi dosyalarımızda neler var onlara bakalım.
main.txt dosyamızda bişi yok. safe.zip dosyamız ise şifreli. zip şifresini bulmak için bruteforce attack aracımızı kullanalım.
zip dosyamız içerisinde bir jpg birde cap dosyamız bulunuyor. Wireshark ile uğraşmış arkadaşlar bilir. cap dosyaları wireshark ile oluşturulur veya okunur. İlk wireshark ile okumaya çalışsamda 50bine yakın paket olduğunu görüyorum. Bu sebeple aircrack-ng ile 50bin paket arasından user pass yakalamaya çalışcaz. Buda vereceğimiz wordlist ile gerçekleşiyor.
Kullanıcı adı: blackjax
Şifresi: snowflake
Ve giriş bilgilerimizi öğrenmiş olduk. Hemen ssh bağlantımızı yapalım. Yalnız hatırlayın ssh servisi 2525. portta çalışmaktaydı. Onun için portu da söyleyerek giriş yapacağız.
Giriş yaptıktan sonra bin/bash shell kabuğunda ilerlemek için aşağıdaki komutu giriyoruz. Bu komutu ctf çöze çöze aklınıza kazınacaktır. Yeter ki kopyala-yapıştır yapmayın. Elle yazın
ilk flag'ımızı bulduk. Şimdi sırada ikinci flagımızı açabilmek için yetki yükseltme işlemlerine gidelim. İlk olarak sistemde super user yetkisi verilmiş bişiler var mı bakalım.
Yukarıda gördüğünüz path'ler super user yetkisi verilmiş dosyalar. Biz burada netscan üzerinden yetki yükseltme işlemi yapacağız. Super user yetkisi verildiğini görmek isteyenler komut satırına "ls -al | grep nets" yazabilirler. -rwsr-xr-x yetki tablosu göreceksiniz.
/usr/bin/netscan gerçektende çalıştırabiliyor muyuz, çalışıyor mu bakalım.
Evet gerçektende super user yetkili bir araç. Başka bişi deneyin permission hatası alacaksınız. Bu yüzden bu yoldan yetki yükselmeye gidiyoruz. Kısıtlı yetkili hesapla çalıştırabileceğimiz araçlar bizi root yetkili yapacak.
Şimdi sırayla yetki yükseltme işlemini yapalım.
Root yetkisine eriştiğimize göre son flag'ımızı da gösterelim.
Elimden geldiğince çözümü anlatmaya çalıştım. Umarım faydalı ve doğru anlatabilmişimdir. Bir başka CTF çözümünde buluşmak üzere Allah'a emanet olun
https://www.vulnhub.com/entry/hacknos-os-bytesec,393/
Makine ismi: Os-Bytesec
Yayınlanma Tarihi: 8 Kasım 2019
Yapan: Rahul Gehlaut
Boyut/Format: 885mb/OVA
Zorluk: Orta
İşletim Sistemi: Linux
Seri: hackNos
Açıklama: Makinedeki 2 flag dosyasını bul.
Not: Başlamadan önce belirtmek isterim. İndirdiğiniz makine VMware 'da düzgün çalışmayacaktır. VirtualBox üzerinden CTF'i çözmenizi öneririm.
İlk önce makinemizin ip adresini tespit etmek için "netdiscover" komutunu kullanıyoruz.
IP adresini öğrendikten sonra nmap taraması yapalım. Bakalım neler var.
Kod:
nmap -sS -sV -O 192.168.1.48
Nmap taramasına göre sistemimizde http(web), netbios-ssn ve ssh çalışıyormuş. SSH servisi default olarak 22. portta çalışır normalde. Ama boş, herhangi bir portta çalışmasında da sıkıntı yoktur. Biz ilk iş olarak tarayıcıdan web servisimize göz atalım.
Sitemizi biraz inceledikten sonra en aşağıda bir yazı mevcut. "####################GET#####smb##############free" bize smb ile alakalı ipucu veriyor. Biraz daha bilgi toplamaya ihtiyacımız var gibi. Sistem hakkında bilgi toplamaya çalışalım şimdi.
Kod:
enum4linux -U 192.168.1.48
'smb' adında bir kullanıcı keşfettik. Az öncede web sayfamızda 'GET smb free' bilgisi yazıyordu. nmap taramasında da hatırlarsınız netbios-ssn servisinda "Samba smbd" çalışmaktaydı. Bu kadar smb ile alakalı bilgi topladığımıza göre smbclient aracımızı kullanalım artık.
Kod:
smbclient //192.168.1.48/smb -U smb
Bizden parola isteyecektir ama hatırlayın "GET smb free". Hiç bişi yazmadan enter ladığımızda giriş yapabiliyoruz. ls ile neler var baktığımızda 'main.txt' ve 'safe.zip' dosyalarını görüyoruz. Bunları kendi bilgisayarımıza indirebilmek için "get" komutu yeterli olacaktır. Şimdi dosyalarımızda neler var onlara bakalım.
main.txt dosyamızda bişi yok. safe.zip dosyamız ise şifreli. zip şifresini bulmak için bruteforce attack aracımızı kullanalım.
Kod:
fcrackzip -D -p /usr/share/wordlists/rockyou.txt -u safe.zip
zip dosyamız içerisinde bir jpg birde cap dosyamız bulunuyor. Wireshark ile uğraşmış arkadaşlar bilir. cap dosyaları wireshark ile oluşturulur veya okunur. İlk wireshark ile okumaya çalışsamda 50bine yakın paket olduğunu görüyorum. Bu sebeple aircrack-ng ile 50bin paket arasından user pass yakalamaya çalışcaz. Buda vereceğimiz wordlist ile gerçekleşiyor.
Kod:
aircrack-ng -w /usr/share/wordlists/rockyou.txt user.cap
Kullanıcı adı: blackjax
Şifresi: snowflake
Ve giriş bilgilerimizi öğrenmiş olduk. Hemen ssh bağlantımızı yapalım. Yalnız hatırlayın ssh servisi 2525. portta çalışmaktaydı. Onun için portu da söyleyerek giriş yapacağız.
Kod:
ssh -p 2525 [email protected]
Kod:
python -c 'import pty;pty.spawn("/bin/bash")'
ilk flag'ımızı bulduk. Şimdi sırada ikinci flagımızı açabilmek için yetki yükseltme işlemlerine gidelim. İlk olarak sistemde super user yetkisi verilmiş bişiler var mı bakalım.
Kod:
find / -type f -perm -u=s 2>/dev/null
Yukarıda gördüğünüz path'ler super user yetkisi verilmiş dosyalar. Biz burada netscan üzerinden yetki yükseltme işlemi yapacağız. Super user yetkisi verildiğini görmek isteyenler komut satırına "ls -al | grep nets" yazabilirler. -rwsr-xr-x yetki tablosu göreceksiniz.
/usr/bin/netscan gerçektende çalıştırabiliyor muyuz, çalışıyor mu bakalım.
Evet gerçektende super user yetkili bir araç. Başka bişi deneyin permission hatası alacaksınız. Bu yüzden bu yoldan yetki yükselmeye gidiyoruz. Kısıtlı yetkili hesapla çalıştırabileceğimiz araçlar bizi root yetkili yapacak.
Şimdi sırayla yetki yükseltme işlemini yapalım.
Kod:
$PATH
Kod:
cd /tmp
Kod:
echo "/bin/sh" >netstat
Kod:
chmod 777 netstat
Kod:
export PATH=/tmp:$PATH
Kod:
/usr/bin/netscan
Root yetkisine eriştiğimize göre son flag'ımızı da gösterelim.
Elimden geldiğince çözümü anlatmaya çalıştım. Umarım faydalı ve doğru anlatabilmişimdir. Bir başka CTF çözümünde buluşmak üzere Allah'a emanet olun