Linux’ta yetki yükseltme yollarını kapatmak: SUID, sudo, cron
SUID, sudo, cron ve hassas dosyaları denetlemek; yükseltme girişimlerini tespit etmek.
Seviye 301 · 17 ders · 15 pratik lab
Dersler
Harita ve denetim
- Yetki yükseltme yolları haritası: Linux'ta bir kullanıcının yetkisinin hangi yollarla yükselebileceğine genel bir bakış edinip denetim listeni oluşturacaksın.
- Kendi sunucunu denetlemek: otomatik denetim araçları: Otomatik denetim araçlarını kendi sunucunda çalıştırıp çıktısını yorumlamayı ve düzeltilecek yerleri belirlemeyi öğreneceksin.
- Kısa görev: lab sunucusunda otomatik denetim çalıştır ve bulguları sınıflandır
Dosya ve yetki yolları
- SUID dosyalarını denetlemek: SUID bitli dosyaların ne anlama geldiğini öğrenip kendi sunucunda gereksiz veya riskli olanları bulup temizleyeceksin.
- getcap ile dosya yeteneklerini (capabilities) denetlemek: SUID olmadan da fazla yetki taşıyan programları getcap ile bulup gereksiz yetenekleri kaldırabileceksin.
- sudo kurallarını denetlemek ve daraltmak: sudo kurallarını okuyup gereğinden geniş olanları bulmayı ve yetkileri yalnızca gereken komutlara daraltmayı öğreneceksin.
- cron ve root betiklerinin izinleri: cron ile çalışan zamanlanmış görevlerin ve root betiklerinin dosya izinlerini denetleyip sıradan kullanıcıların değiştirebildiklerini düzelteceksin.
- Yazılabilir systemd birimleri ve PATH sırası: gözden kaçan yollar: Root olarak çalışan servis dosyalarının ve betiklerin başkası tarafından değiştirilebildiği durumları bulup izinleri düzeltebileceksin.
- Kısa görev: üç yükseltme yolunu kapat ve kapandığını doğrula
Bilgi sızıntıları
- Hassas dosyalar ve yapılandırma sızıntıları: Yedekler, ayar dosyaları ve anahtarlar gibi hassas dosyalarda yanlış izinleri ve sızan bilgileri bulup kapatacaksın.
- Kabuk geçmişinde unutulan kimlik bilgileri: Kabuk geçmişinde ve betiklerde unutulmuş parola ve anahtarları bulup temizlemeyi, bunların tekrar oluşmasını nasıl önleyeceğini öğreneceksin.
- /etc/passwd ve /etc/shadow koruması: /etc/passwd ve /etc/shadow dosyalarının ne tuttuğunu, doğru izinlerini ve değişikliklerin nasıl izleneceğini öğreneceksin.
- Paylaşılan kütüphane yolları ve yazılabilir dizinler
- Kısa görev: sunucuda unutulmuş kimlik bilgilerini bul ve kaldır
Yama ve tespit
- Çekirdek sürümünü izlemek ve yerel yükseltme açıklarını yamalamak: Sunucunun çekirdek sürümünü bilinen açık duyurularıyla eşleştirip yamayı planlayabilecek ve yeniden başlatma sonrası doğrulayabileceksin.
- Yetki yükseltme girişimlerini tespit etmek: Günlüklerde ve denetim kayıtlarında beklenmedik yetki değişikliklerini yakalayıp bunlar için uyarı kuralları kurmayı öğreneceksin.
- Bitirme görevi: bir sunucudaki yükseltme yollarını kapat: Bitirme görevinde kurgusal bir şirketin Linux sunucusundaki yetki yükseltme yollarını bulup kapatacak ve yaptıklarını raporlayacaksın.
Pratik lablar
- Lab sunucusunda otomatik denetim çalıştır ve bulguları sınıflandır: Yerel denetim betiğinin çıktısını dosya, yetki, sızıntı ve yama başlıklarına ayır.
- Sunucudaki yetki yükseltme yollarının haritasını çıkar: Bulunan her zayıf noktayı başlangıç kullanıcısından root'a uzanan bir yol üzerinde göster ve önem sırası ver.
- Otomatik denetimin abarttığı bulguları ayıkla: Beş bulguyu elle doğrula, gerçek yolları yanlış alarmlardan ayır ve gerekçeyle raporla.
- Yetki veren fazladan SUID dosyasını bul ve bitini kaldır: Paket varsayılanı olmayan SUID dosyayı bul, bitini kaldır ve artık yetki vermediğini doğrula.
- Dosya yeteneklerini denetle ve gereksiz olanı kaldır: getcap çıktısındaki riskli yeteneği bul, kaldır ve programın işlevini bozmadığını sına.
- Üç yükseltme yolunu kapat ve kapandığını doğrula: SUID, yetenek ve sudo kaynaklı üç yolu düzelt, denetimi yeniden çalıştır ve önce-sonra tablosunu doldur.
- root'un çalıştırdığı cron betiklerinin izinlerini denetle: root cron girdilerinin çağırdığı betikleri listele, başkalarının yazabildiğini düzelt.
- Yazılabilir systemd birimlerini ve PATH sırasını düzelt: Yazılabilir birim dosyalarını ve root PATH'inde yazılabilir dizini bul, izinleri düzelt ve doğrula.
- Paylaşılan kütüphane yollarındaki yazılabilir dizinleri kapat: Kütüphane arama yolu yapılandırmasındaki yazılabilir dizini bul, kaldır ve servislerin doğru kütüphaneyi yüklediğini kontrol et.
- Kabuk geçmişinde unutulan kimlik bilgilerini bul ve kaldır: Kullanıcı geçmiş dosyalarında parola içeren komutları bul, temizle ve ilgili parolayı değiştir.
- Okunabilir yapılandırma dosyalarındaki gizli bilgileri bul: Uygulama dizinlerinde herkesin okuyabildiği parola ve anahtarları bul, izinleri daralt ve gizli bilgiyi döndür.
- passwd ve shadow dosyalarının korumasını denetle: Yanlış izinli shadow yedeğini ve passwd'de özet barındıran satırı bul, düzelt ve bütünlüğü doğrula.
- Çekirdek sürümünü izle ve yerel yükseltme açıklarını yamala: Çalışan çekirdeği bültenlerle karşılaştır, güncel çekirdeği kur ve yeniden başlatma sonrası sürümü doğrula.
- Yetki yükseltme girişimlerini tespit eden kuralları kur: SUID değişikliği ve beklenmedik root süreçleri için izleme kuralı ekle, test olayı üret ve kaydı bul.
- Bir sunucudaki tüm yükseltme yollarını kapat ve raporla: Yelkovan Bankası lab sunucusunda denetim, düzeltme, tespit ve yeniden denetim adımlarını tamamla, raporu yaz.
Kurs hakkında
SUID, sudo, cron ve hassas dosyaları denetlemek; yükseltme girişimlerini tespit etmek.
Ne öğreneceksin
- Harita ve denetim
- Dosya ve yetki yolları
- Bilgi sızıntıları
- Yama ve tespit
Ön koşullar
Aynı yolun 101 ve 201 düzeyindeki konularına hâkim olmalısın.
Lab ortamı
Dersler, tarayıcında açılan sana özel bir Kali Linux terminalinde ve ona bağlı özel bir lab ağında geçer. Kurulum gerekmez.
Sık sorulan sorular
- Bu kurs benim düzeyime uygun mu?
- Kurs 301 düzeyindedir; daha düşük düzeydeki kursların konularını bildiğin varsayılır.
- Kurulum gerekir mi?
- Hayır. Her ders tarayıcında açılan sana özel bir lab ortamında geçer.
- Dersler nasıl işleniyor?
- Her ders 8 ile 10 adımdan ve bir kısa sınavdan oluşur. İlk adımlarda yazman gereken komut gösterilir, sonraki adımlarda yardım azalır; iki denemede takılırsan çözüm açılır.
- Ücretsiz deneyebilir miyim?
- Evet. Her kursun ilk üç dersi ücretsizdir.