Neler yeni

Yazılım Forum

Tüm özelliklerimize erişmek için şimdi bize katılın. Kayıt olduktan ve giriş yaptıktan sonra konu oluşturabilecek, mevcut konulara yanıt gönderebilecek, itibar kazanabilecek, özel mesajlaşmaya erişebilecek ve çok daha fazlasını yapabileceksiniz! Bu hizmetlerimiz ise tamamen ücretsiz ve kurallara uyulduğu sürece sınırsızdır, o zaman ne bekliyorsunuz? Hadi, sizde aramıza katılın!

Dizin Gezinme (Directory Traversal) Açıkları: Tanımı, Etkileri ve Korunma Yöntemleri

Dizin Gezinme (Directory Traversal) Açıkları Nedir?

Dizin Gezinme (Path Traversal veya Dot-Dot-Slash olarak da bilinir) açıkları, saldırganların bir web sunucusunun dosya sisteminde dizinler arasında gezinerek normalde erişmeleri gerekmeyen dosya veya dizinlere erişmelerini sağlayan güvenlik zafiyetleridir. Bu zafiyet genellikle, kullanıcıdan alınan girdinin (örneğin dosya adları veya yollar) yeterince doğrulanmaması veya temizlenmemesi sonucunda ortaya çıkar.

Nasıl Çalışır?

Saldırganlar, genellikle URL parametrelerinde veya form girdilerinde "../" (üst dizine çıkma) karakter dizilerini kullanarak sunucunun dosya yapısında yukarı doğru hareket etmeye çalışır. Amaç, web kök dizini dışındaki hassas dosyalara (örneğin, şifre dosyaları, yapılandırma dosyaları, sistem günlükleri) ulaşmaktır.

Örnekler:
  • Linux/Unix Sistemlerinde:
    Kod:
        http://example.com/download.php?file=../../../../etc/passwd
    Bu, /etc/passwd dosyasına erişmeye çalışır.
  • Windows Sistemlerinde:
    Kod:
        http://example.com/showimage.asp?img=..\..\..\windows\system32\drivers\etc\hosts
    Bu, Windows sistemlerindeki hosts dosyasına erişmeye çalışır.

Saldırganlar ayrıca, url kodlaması (%2e%2e%2f) veya unicode kodlaması (..%c0%af) gibi yöntemleri de kullanarak filtreleri atlatmaya çalışabilirler.

Potansiyel Etkiler:
  • Hassas sistem dosyalarına veya uygulama yapılandırma dosyalarına erişim.
  • Kayıtlı kullanıcı bilgileri veya şifreler gibi gizli verilere ulaşma.
  • Uygulama veya sunucu üzerinde yetkisiz dosya işlemleri (okuma, yazma, silme).
  • Tam bir sistem ele geçirme (diğer zafiyetlerle birleştirildiğinde).

Korunma Yöntemleri:

Bu tür zafiyetlerden korunmak için aşağıdaki önlemler alınmalıdır:

  • Girdi Doğrulaması (Input Validation): Kullanıcıdan gelen tüm girdileri (özellikle dosya yolları için) beyaz liste (whitelist) yaklaşımıyla doğrulayın. Sadece izin verilen karakterlere ve dizinlere izin verin.
  • Yol Normalleştirme (Path Canonicalization): Kullanıcı girdisini işlemeden önce, tüm ".." veya benzeri dizin manipülasyonlarını kaldırarak yolu normalleştirin.
  • Dosya Sistemi Sınırlandırması: Web sunucusunun veya uygulamanın sadece belirli bir dizin içinde çalışmasını sağlamak için chroot ortamları veya sanal ortamlar kullanın.
  • En Az Ayrıcalık Prensibi (Least Privilege): Uygulamanın veya web sunucusunun, işlemleri gerçekleştirmek için ihtiyaç duyduğu en az ayrıcalığa sahip olduğundan emin olun.
  • Yapılandırma: Web sunucusu yapılandırmasında dizin listeleme (directory listing) özelliğini kapatın ve hassas dosyalara doğrudan erişimi engelleyin.

Örnek (PHP):

Zafiyetli Kod:
Kod:
<?php
$file = $_GET['file'];
include("/var/www/html/" . $file);
?>

Güvenli Kod:
Kod:
<?php
$file = basename($_GET['file']); // Yalnızca dosya adını alır
$allowed_files = ['page1.html', 'page2.html']; // Beyaz liste
if (in_array($file, $allowed_files)) {
    include("/var/www/html/secure_pages/" . $file);
} else {
    echo "Geçersiz dosya!";
}
?>

Dizin gezinme açıkları, basit ama etkili olabilen zafiyetlerdir. Girdi doğrulaması ve güvenli kodlama pratikleri ile kolayca önlenebilirler.
 
shape1
shape2
shape3
shape4
shape5
shape6
Üst

Bu web sitenin performansı Hazal Host tarafından sağlanmaktadır.

YazilimForum.com.tr internet sitesi, 5651 sayılı Kanun’un 2. maddesinin 1. fıkrasının (m) bendi ve aynı Kanun’un 5. maddesi kapsamında Yer Sağlayıcı konumundadır. Sitede yer alan içerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır.

YazilimForum.com.tr, kullanıcılar tarafından paylaşılan içeriklerin doğruluğunu, güncelliğini veya hukuka uygunluğunu garanti etmez ve içeriklerin kontrolü veya araştırılması ile yükümlü değildir. Kullanıcılar, paylaştıkları içeriklerden tamamen kendileri sorumludur.

Hukuka aykırı içerikleri fark ettiğinizde lütfen bize bildirin: lydexcoding@gmail.com

Sitemiz, kullanıcıların paylaştığı içerik ve bilgileri 6698 sayılı KVKK kapsamında işlemektedir. Kullanıcılar, kişisel verileriyle ilgili haklarını KVKK Politikası sayfasından inceleyebilir.

Sitede yer alan reklamlar veya üçüncü taraf bağlantılar için YazilimForum.com.tr herhangi bir sorumluluk kabul etmez.

Sitemizi kullanarak Forum Kuralları’nı kabul etmiş sayılırsınız.

DMCA.com Protection Status Copyrighted.com Registered & Protected