Görev ve Zafiyet Senaryosu
Belge indirme portalında dosya adı URL parametresinden alınarak sunucu dosya yoluna eklenmektedir: /var/www/uploads/ + file. Saldırgan dosya adına ../ ekleyerek uploads klasöründen çıkar ve kök dizindeki hassas dosyaları ekrana döker.
Hedef (Objective)
🎯 Görev: /documents?file=contract.pdf parametresini ../../../etc/passwd veya ../../config/secret.key olarak değiştirerek gizli sistem anahtarını okuyun.
Adım Adım Çözüm Metodolojisi
Dosya Parametresini İnceleme
Belge indir linkine tıklayarak adres çubuğundaki file=... parametresini gözlemleyin.
Dizin Atlatma Karakterleri Enjeksiyonu
Parametreyi ../../../etc/passwd veya ../config/vault.env olarak değiştirin.
Hassas Dosya Sızıntısı & Bayrak
Sunucu yetkisiz dosyanın içeriğini ekrana bastığında dosya içindeki bayrağı yakalayın.
Örnek Payload ve İstismar Kalıpları
../../../etc/passwd..\..\..\windows\win.ini....//....//....//etc/passwd%2e%2e%2f%2e%2e%2fetc%2fpasswd
Güvenli Kodlama ve Savunma Mekanizmaları
Zafiyet Nasıl Kapatılır?
- Kullanıcıdan gelen dosya adlarını doğrudan dosya sistemi yollarına birleştirmeyin; dosya ID si ve veritabanı eşleştirmesi kullanın.
- Dosya adından .. ve / karakterlerini ayıklamak yerine güvenilir bir beyaz liste (whitelist) ile kontrol yapın.
- Dosya okuma işlemlerinde path.resolve ve kök dizin kontrolü (chroot jail) uygulayın.
Uygulamaya Başlamaya Hazır mısınız?
SiberAdam interaktif arenasında hedef tarayıcı, DevTools ve CyberTerminal ile bayrağı hemen yakalayın.
Şimdi Çözmeye Başla ⚡