''Linux'da Güvenlik Nasıl İşler? (Konu: 3.5, 3.6, 4.0)''

21.08.2019

''İçerikdeki Konular:

3.5 Yerel Cihazların Güvenliği

3.6 Fiziksel Güvenlik İhlallerini Belirleme

4.0 Yerel Güvenlik

Yerel cihazların güvenliği;

Sisteminize eklenmiş bir webcam veya mikrofon varsa, bir saldırganın bu cihazlara erişim
sağlaması tehlikesini göz önünde bulundurmalısınız. Kullanımda değilken bu tür cihazların
kasadan ayırmak veya fişlerini çekmek bir seçenek olabilir. Bu tür cihazlara erişim sağlayan
yazılımı da (kullanımı kitapçıklarını/belgelerini okuyarak) çok iyi tanımalısınız.
Fiziksel Güvenlik İhlallerini Belirleme Dikkat edilmesi gereken ilk nokta bilgisayarınızın ne zaman yeniden başlatıldığıdır. Linux sağlam ve kararlı bir işletim sistemi olduğu için, makinenizi yeniden başlatmanızın gerektirdiği nadir durumlar, sizin gerçekleştirdiğiniz işletim sistemi güncellemeleri, veya donanım değişikliği gibi durumlardır. Eğer makineniz böyle bir şey yapmadığınız halde kapanıp açılmışsa, bu, makinenizin güvenliğinin bir saldırgan tarafından bozulduğunun bir işareti olabilir. Bilgisayarın bulunduğu alanda ve kasada kurcalama işaretleri arayın. Bir çok saldırgan varlıklarının izlerini günlüklerden siler, bütün günlükleri incelemek ve herhangi bir uygunsuzluk olup olmadığını gözden geçirmek, iyi bir fikirdir. İyi bir fikir olan bir başka şey de, günlük verisini güvenli bir yerde saklamaktır, örneğin, iyi korunmuş bir ağınızdaki bu işe adanmış bir günlük sunucusunda. Makinenin güvenliği bir kere bozuldu mu, günlük verisi çok az yarar sağlar, çünkü saldırgan tarafından değiştirilmiş olması muhtemeldir. Syslog sunucu programı (daemon), günlükleri merkezi bir syslog sunucusuna göndermek üzere yapılandırılabilir, ama bu bilgi çoğunlukla şifresiz gönderilir, bu da veri aktarılırken bir saldırgan tarafından görülmesine izin vermek anlamına gelir. Bu, ağınız ve herkese açık olmasını düşünmediğiniz konular hakkındaki bilgilerin ortaya çıkmasına yol açabilir. Gönderilen veriyi şifreleyen syslog sunucu programları da vardır. Farkında olmanız gereken bir diğer durum, sahte syslog mesajları hazırlamanın kolay olduğudur bunun için yayımlanan bir program vardır. Hatta syslog, ağdan gelen ve gerçek kökenini göstermeden yerel bilgisayardan geldiğini iddia eden günlük satırlarını bile kabul eder.

Günlüklerinizde denetim altında tutmanız gereken bazı şeyler:

  1. Kısa veya tamamlanmamış günlükler.
  2. Tarih ve zamanları garip olan günlükler.
  3. Yanlış erişim hakları veya sahiplikleri olan günlükler.
  4. Bilgisayarın veya servislerin yeniden başlatılma kaytları.
  5. Kayıp günlükler.
  6. Su kullanımı kayıtları veya sisteme garip yerlerden yapılan girişler

Sistem günlük verisini, bu belgede daha sonra Sistem Hesap Verilerinizi Takip Edin bölümünde tartışacağız.

Yerel Güvenlik;

Şöyle bir göz atılması gereken sonraki konu, yerel kullanıcılardan gelen saldırılara karşı sistem güvenliğiniz konusu. Kullanıcıların yerel olduğunu söyledik mi? Evet! Sistem saldırganlarının root hesabına giden yollarındaki ilk şeylerden bir tanesi yerel bir kullanıcı hesabına erişim elde etmektir. Bu saldırganlar, gevşek bir yerel güvenlik ile, kötü ayarlı bir yerel servis veya çeşitli “böceklerden” yararlanarak, normal kullanıcı erişimlerini root erişimine “terfi ettirir”. Eğer yerel güvenliğinizin sıkı olduğundan emin olursanız, saldırganın üzerinden atlaması gereken başka bir çit daha oluşturmuş olursunuz. Yerel kullanıcılar, gerçekten söyledikleri kişi oldukları durumda bile sistem üzerinde fazlaca kargaşa yaratabilir. Tanımadığınız insanlara, veya iletişim bilgilerine sahip olmadığınız birine hesap açmak, gerçekten çok kötü bir fikirdir.

Yeni Hesap Açma;

Kullanıcı hesaplarının, kullanıcıların yapması zorunlu işler için asgari gereklerini karşılayacak
şekilde açıldığından emin olmalısınız. Eğer (10 yaşındaki) oğlunuza bir hesap açarsanız,
erişiminin bir kelime işlemci ya da çizim programıyla sınırlı olmasını, ve kendisinin olmayan
veriyi silme yetkisinin olmamasını isteyebilirsiniz. Diğer kullanıcıların Linux makinenize meşru bir erişim sağlamasına izin verirken esas olarak alınabilecek bazı kurallar:

  1. Onlara, gereksinim duydukları en az yetkiyi verin.

  2. Ne zaman ve nereden sisteme giriş yaptıklarına, ya da yapmaları gerektiğine dikkat edin.

  3. Kullanılmayan hesapların kapandığından emin olun.

  4. Bütün bilgisayar ve ağlarda aynı kullanıcı isminin kullanılması, hesabın bakımını
    kolaylaştırması, ve günlük verisinin daha kolay çözümlenmesi açısından tavsiye edilir.

  5. Grup kullanıcı kimliklerinin yaratılması mutlak surette yasaklanmalıdır. Kullanıcı hesapları
    sorumluluk mekanizması da sağlar, ve bu birden fazla kişinin kullandığı grup hesaplarıyla
    mümkün değildir.

Güvenlik ihlallerinde kullanılan bir çok yerel kullanıcı hesabı, aylardır hata yıllardır
kullanılmayanlardır. Kimse onları kullanmadığı için, ideal bir saldırı aracıdırlar.

Root Güvenliği;

Makinenizdeki, peşinden en fazla koşulan hesap root (üstün kullanıcı) hesabıdır. Bu hesap bütün makine üzerinde yetki sağlamasının yanı sıra, ağdaki diğer makineler üzerinde de yetki sağlıyor durumda olması mümkündür. Unutmayın ki root hesabını, sadece özel işler için ve çok kısa süreliğine kullanmalısınız, geri kalan zamanlarda normal kullanıcı olarak işlerinizi yürütmelisiniz. Root kullanıcısı olarak sisteme giriş yaptığınızda, yaptığınız küçük hatalar dahi sorunlara yol açabilir. Root hesabıyla ne kadar az zaman harcarsanız, o kadar güvende olursunuz. Diğer kullanıcıların Linux makinenize meşru bir erişim sağlamasına izin verirken esas olarak alınabilecek bazı kurallar:

  1. Karmaşık bir komut kullanırken, komutu ilk önce yıkıcı olmayan başka bir şekilde
    kullanmayı deneyin… Özellikle komutun geniş çaplı kullanımında… Örneğin rm foo*.bak, yapmak istiyorsanız, önce ls foo*.bak komutunu kullanarak, silmek üzere olduğunuz dosyaların, silmeyi düşündüğünüz dosyalar olduğundan emin olun. Bu tür tehlikeli komutların kullanımında, komutlar yerine echo kullanmak da zaman zaman işe yarayabilir.

  2. Kullanıcılarınıza, rm komutunun, dosyaları silmeden önce onay almasını sağlayacak,
    varsayılan bir takma ismini oluşturun.

  3. Sadece belirli, tek bir işi yapmanız gerektiği zamanlarda root olun. Eğer kendinizi bir
    şeyin nasıl yapıldığını tahmin etmeye çalışırken bulursanız, normal kullanıcı hesabınıza
    geri dönüp, root tarafından neyin yapılacağından emin olmadan önce root kullanıcısına
    dönmeyin.

  4. Root için komut yolu tanımı çok önemli. Komut yolu (yani PATH evre değişkeni),
    girdiğiniz herhangi bir komut ya da programın hangi dizinlerde aranacağını belirtir. Root
    kullanıcısı için komut yolunu olabildiğince sınırlandırmaya çalışın, ve asla . dizinini
    eklemeyin (“geçerli dizin” anlamına gelir [8]. Ek olarak, komut yolunuzda, yazılabilen
    dizinler bulundurmayın, çünkü bu saldırganların bu dizinler içine, bir sonraki sefer
    kullandığınızda root erişim izniyle çalışacak olan yeni çalıştırılabilir dosyalar koyabilmesi
    anlamına gelir.

  5. Asla rlogin/rsh/rexec araçlarını (r-araçları olarak adlandırılırlar) root olarak kullanmayın.
    Çünkü bunlar, çok çeşitli saldırılara açık komutlardır, dolayısıyla root olarak
    çalıştırıldıklarında çok daha tehlikeli hale gelirler. Asla root için .rhosts dosyası
    oluşturmayın.

  6. /etc/securettydosyası, root olarak giriş yapılabilecek terminalleri belirtir. Bu
    dosyanın varsayılan ayarları (Red Hat Linux’ta) yerel sanal konsollardır. Bu dosyaya
    herhangi bir şey eklerken çok tedbirli olun. Root olmanız gerektiğinde uzaktan normal bir
    kullanıcı hesabına ( ssh (Güvenli Kabuk) ve stelnet veya diğer şifrelenmiş bir yolla) giriş
    yapıp su komutuyla root olabilirsiniz. Dolayısıyla doğrudan root olarak giriş yapabilmeye
    gereksiniminiz yoktur.

  7. Root’u kullanırken daima yavaş ve temkinli davranın. Davranışlarınız bir çok şeyi
    etkileyebilir. Tuşlara dokunmadan önce düşünün!

Eğer birine (umarız güvenilir biridir), mutlak surette root hesabını kullanması için izin vermeniz
gerekiyorsa, yardımcı olabilecek bir kaç araç var. sudo, kullanıcıların, parolalarını kullanarak
sınırlı sayıda komutu root olarak çalıştırmalarına izin verir. Bu, örneğin, bir kullanıcının,
ayrılabilir medyanın bağlanması veya çıkarılması işini, diğer root yetkilerini kullanamadan
yapabilmesi anlamına gelebilir. sudo aynı zamanda, başarılı ve başarısız sudo denemelerinin
bir günlüğünü tutar, bu şekilde kimin ne yapmak için bu komutu kullandığını izlemeniz mümkün hale gelir. Bu sebeple sudo, birden fazla kişinin root erişimi olduğu yerlerde bile iyi bir iş yapar, çünkü değişikliklerin takip edilmesinde yardım etmiş olur. sudo belirli kullanıcılara belirli yetkiler vermekte yararlı olmasına rağmen, bazı eksiklikleri vardır. Sadece sınırlı bir takım işlerde kullanılmak zorundadır, örneğin bir sunucuyu yeniden başlatmak, veya yeni kullanıcılar eklemek gibi. sudo ile çalıştırılan, ve kabuğa çıkmaya izin veren her program, sisteme root erişimi sağlamış olur. Buna örnek olarak bir çok metin düzenleyici gösterilebilir. Ayrıca,/bin/cat kadar zararsız bir program bile, dosyaların üzerine yazmakta, ve root erişimi sağlamakta kullanılabilir. sudo programını, yapılan işten kimin sorumlu olduğunun izlenilmesi için kullanılan bir programmış gibi düşünün, ve hem root kullanıcısının yerine geçmesini hem de güvenli olmasını beklemeyin.’’

Okuduğunuz için teşekkür ederim.
Konuya gelecek ilgiye göre devamı gelecektir.

5 Beğeni

Bu konu son cevaptan 10 gün sonra otomatik olarak kapatıldı. Yeni cevap girilmesine izin verilmiyor.