Ders 1.37: Bir hizmeti systemd ile korumalı alana almak
Bir saldırgan bir hizmeti ele geçirirse o hizmetin yapmasına izin verilen her şeyi elde eder. systemd birkaç ayarla bunu çok küçültebilir: özel bir kullanıcı olarak çalıştırmak, yeni ayrıcalık kazanmayı yasaklamak, işletim sistemini hizmetin kendi verisi dışında salt okunur yapmak, ev dizinlerini ve aygıtları gizlemek, her yeteneği (capability) bırakmak. systemd-analyze security her hizmetin ne kadar açıkta olduğunu puanlar. Laboratuvarda Northwind'in iki hizmetini karşılaştırıyor, rapor üreticinin hiçbir koruma olmadan root olarak çalıştığını buluyor, onu bir ek parçayla sağlamlaştırıyor ve sonucu doğruluyorsun.
17 dk
Bu derste öğreneceklerin
- Hizmet korumalı alanını ve en az yetkiyi açıklamak
- systemd-analyze security çıktısını okumak
- Bir sağlamlaştırma ek parçası yazmak
- Bir hizmeti özel bir kullanıcıyla çalıştırmak
- Yeni açıklık puanını doğrulamak
Temel terimler
- NoNewPrivileges=
- Hizmet ve alt süreçleri hiçbir zaman, örneğin setuid programlarla, ayrıcalık kazanamaz.
- ProtectSystem=strict
- Tüm dosya sistemini hizmet için salt okunur bağlar; ReadWritePaths= istisnaları listeler.
- Yetenekler (capabilities)
- Root'un güçlerinin parçalara bölünmüş hâli (CAP_NET_BIND_SERVICE, CAP_SYS_ADMIN…).
- PrivateTmp=
- Hizmete diğerlerine görünmeyen kendi /tmp'sini verir.
- Açıklık puanı
- systemd-analyze security'nin 0 (güvenli) ile 10 (tehlikeli) arası tahmini.
← Linux dağıtımları · Tüm dersler · Diski hâlâ dolduran silinmiş dosyalar →