find ile dosya izinlerini denetleme

0 ردود 5 مشاهدات
المقيّمون
المشاركون
صاحب الموضوع #1
find ile dosya izinlerini denetleme

Giriş ve amaç
Bir Linux sisteminde dosya izinlerini düzenli olarak kontrol etmek, güvenlik ve uyum için kritik bir adımdır. Özellikle kök dizinler, kullanıcı dizinleri ve web sunucusu köprülerinde yetkisiz erişim riskini azaltır. find komutu, derinlemesine arama yapması ve çıktı üzerinde filtreler uygulaması sayesinde bu denetimi etkili biçimde gerçekleştirir. Aşağıdaki teknikler, izin hatalarını ve potansiyel güvenlik açıklarını hızlıca tespit etmek için kullanılabilir.

Izinleri temel olarak incelemek
  • Sudo veya kök yetkisiyle, root sahipliğini ve izin bantlarını kontrol etmek gerekir. Örneğin, bir dizin altında tüm kullanıcıların yazma hakkı olan dosyaları bulmak güvenlik açısından kritik olabilir.
  • Belirli bir kullanıcıya veya gruba ait dosyaları izlemek, sahiplik değişikliklerini tespit etmek için önemlidir.


Pratik örnekler ve kullanımlar
  • Tüm dosyaların izinlerini gösteren, ancak sadece en sık karşılaşılan durumları öne çıkaran kısa bir çıktı:
    كود
    1find / -type f -printf "%p %m\n" 2>/dev/null | head -n 100

    Bu çıktı, her dosya yolunu ve onun 3 basamaklı modu (izinleri) gösterir. Ancak bu komut tüm sistemi taradığından zaman alabilir; bunu sınırlı bir alanda çalıştırmak daha pratiktir.
  • Belirli bir dizin altındaki yazılabilir dosyaları tespit etmek:
    كود
    1find /var/www -type f -perm -002 -print 2>/dev/null

    002, diğer kullanıcıların yazma iznini temsil eder. Bu tür dosyalar web uygulamaları için risk oluşturabilir.
  • Sahiplik çatlaklarını bulmak:
    كود
    1find /home -not -user $(id -u) -print 2>/dev/null

    Bu komut, mevcut kullanıcıya ait olmayan dosyaları listeler; adli veya güvenlik tetkikleri için kullanışlıdır.
  • Kök dizininde anormal izinleri olan dosyaları aramak:
    كود
    1find / -type f \( -perm -4000 -o -perm -2000 \) -print 2>/dev/null
    

    Setuid ve setgid bitecek izinler, güvenlik için kritik sinyaller olabilir ve dikkatle incelenmelidir.
  • Yetkisiz yazma izni olan dosyaları sınırlı bir alan içinde bulmak:
    كود
    1find /home -type f -perm -002 -ls 2>/dev/null
    

    Yazma izni olan dosyalar, bazen kötüye kullanılabilir; bu tür durumlar için periyodik taramalar uygundur.
  • Köprüler (symlinks) ve hedefleriyle ilgili güvenlik kontrolleri:
    كود
    1find / -type l -ls 2>/dev/null

    Symlinkler bazen yanlış hedeflere yönlendirebilir; izinlerle çeliştiği durumlar güvenlik açığı doğurabilir.


İpuçları ve güvenlik notları
  • Tarama sırasında çıktı çok hacimli olabilir. -maxdepth, -path veya -exclude seçenekleriyle odaklanmak faydalıdır.
  • 403Forbidden veya 404 gibi sonuçlar zararlı değildir; izin sorunlarını ve sahiplikleri doğrulamak için konumuna göre incelemek gerekir.
  • Scriptlerle otomatik periyodik taramalar kurabilirsiniz. Örneğin günlük veya haftalık cron görevleriyle belirli dizinleri tarayabilir ve rapor üretebilirsiniz.


Sonuç ve kapanış
find, dosya izinlerini hızlı ve esnek biçimde denetlemek için güçlü bir araçtır. Uygun filtrelerle hangi dosya türlerinin, hangi konumlarda potansiyel olarak riskli izinlere sahip olduğunu net biçimde ortaya koyar. Bu yaklaşımı kendi sunucularınızda nasıl konumlandırmayı düşünüyorsunuz? Belirli bir dizinin iznini günlük olarak kontrol etmek için hangi çerçeveyi kurmayı planlıyorsunuz?

يجب تسجيل الدخول للرد.

المستخدمون الذين يشاهدون هذا الموضوع (الإجمالي: 3, الأعضاء: 3, الضيوف: 0)
الإجمالي: 3 (الأعضاء: 3, الضيوف: 0)
0 اقتباسات محددة