Sayfayı Yazdır | Pencereyi Kapat

Linux da Çekirdek Güvenliði

Nereden Yazdırıldığı: Bilginin Adresi
Kategori: Bilgisayar Güvenliði / Computer Security
Forum Adı: Güvenlik / Security Makaleleri
Forum Tanımlaması: Bilgisayarýnýzý Her Türlü Saldýrýya Karþý Korumak Ýçin Yapmanýz Gerekenler
URL: https://www.bilgineferi.com/forum/forum_posts.asp?TID=7923
Tarih: 04-07-2024 Saat 12:53


Konu: Linux da Çekirdek Güvenliði
Mesajı Yazan: megabros
Konu: Linux da Çekirdek Güvenliði
Mesaj Tarihi: 23-08-2009 Saat 12:16

Çekirdek, bilgisayarýnýzýn aðýný denetim altýnda tuttuðu için, çok güvenli olmasý ve bozulmamasý önemli. En yeni að saldýrýlarýný engellemek için, çekirdek sürümünüzü güncel tutmaya çalýþmalýsýnýz.

Çekirdeklerinizi ftp://ftp.kernel.org/ adresinden, veya daðýtýcýnýzdan bulabilirsiniz.


Ana Linux çekirdeðine, birleþtirilmiþ bir þifre yamasý saðlayan uluslararasý bir grup var. Bu yama, dýþsatým kýsýtlamalarý yüzünden ana çekirdeðe dahil edilemeyen þeyler ve bazý þifreliyazýmsal alt sistemler için destek saðlýyor. Daha fazla bilgi için:

http://www.kernel.org/

2.0 Çekirdek Derleme Seçenekleri

2.0.x çekirdekleri için izleyen seçenekler geçerlidir. Bu seçenekleri çekirdek yapýlandýrma iþlemi sýrasýnda görürsünüz. Burdaki yorumlarýn çoðu ./linux/Documentation/Configure.help belgesinden, ayný belge çekirdeðin make config aþamasýnda Help (Yardým) kýsmýnda da kullanýlýyor.

• Að Ateþduvarlarý (CONFIG_FIREWALL)


Bu seçenek, eðer Linux makinenizde ateþduvarý kullanacaksanýz, veya maskeleme yapacaksanýz açýk olmalý. Eðer sýradan bir istemci makine olacaksa, kapata da bilirsiniz.

• IP: yönlendirme/að geçidi (CONFIG_IP_FORWARD)

IP yönlendirmesini açarsanýz, Linux kutunuz bir yöneltici haline gelir. Eðer makineniz að üzerinde ise, bir aðdan diðerine veri yönlendiriyor olabilirsiniz, belki de bunun olmasýný engelleyen bir ateþduvarýný devre dýþý býrakarak. Normal çevirmeli að kullanýcýlarý bunu kapatmak isteyecektir, diðer kullanýcýlar ise bunun güvenlik yan etkileri üzerinde düþünmelidir. Ateþduvarý görevi yapacak makineler bu seçeneðin açýk olmasýný, ve ateþduvarý yazýlýmýyla uyum içinde kullanýlmasýný gerektirir.

IP yönlendirmeyi þu komutu kullanarak dinamik þekilde açabilir:

root# echo 1 > /proc/sys/net/ipv4/ip_forward

þu komutu kullanarak da kapatabilirsiniz:

root# echo 0 > /proc/sys/net/ipv4/ip_forward

/proc dizini içindeki dosyalarýn “sanal” dosyalar olduðunu ve gösterilen boyutun dosyadan alýnabilecek veri miktarýný yansýtmadýðýný aklýnýzdan çýkarmayýn.

• IP: syn kurabiyeleri (CONFIG_SYN_COOKIES)

“SYN Saldýrýsý”, makinenizdeki tüm kaynaklarý tüketen bir servis reddi (DoS) saldýrýsýdýr, sistemi yeniden baþlatmak zorunda kalýrsýnýz. Normal olarak bu seçeneði açmamanýzý gerektirecek bir sebep düþünemiyoruz. 2.2.x çekirdek serisinde bu yapýlandýrma seçeneði “syn kurabiye”lerini açmaya izin verir, fakat onlarý açmaz.

Açmak için aþaðýdaki komutu kullanmalýsýnýz:

root# echo 1 > /proc/sys/net/ipv4/tcp_syncookies

• IP: Ateþduvarý (CONFIG_IP_FIREWALL)


Makinenizi bir ateþduvarý olarak yapýlandýracaksanýz, veya maskeleme yapacaksanýz, veya PPP çevirmeli að arabirimini kullanarak çevirmeli að iþ istasyonunuza birinin girmesine engel olmak istiyorsanýz bu seçeneði açmanýz gerekir.

• IP: Ateþduvarý paket günlüðü (CONFIG_IP_FIREWALL_VERBOSE)


Bu seçenek ateþduvarýnýzýn paketler hakkýnda aldýðý gönderici, alýcý, port gibi bilgileri verir.

• IP: Kaynaktan yönlendirilen çerçeveyi düþür

(CONFIG_IP_NOSR)
Bu seçenek etkinleþtirilmelidir. Kaynaktan yönlendirilen çerçeveler, gidecekleri yeri paketin içinde bulundurur. Bu, paketin içinden geçtiði yöneltici tarafýndan incelenmemesi, ve sadece yönlendirmesi anlamýna gelir. Bu, potansiyel açýklardan yararlanmak isteyen verinin sisteminize girebilmesine olanak tanýyabilir.

• IP: Maskeleme (CONFIG_IP_MASQUERADE)

 Linux’unuzun ateþduvarý rolünü üstlendiði yerel aðýnýzdaki bilgisayarlardan biri dýþarý bir þey göndermek isterse, Linux’unuz kendini o bilgisayar olarak “maskeleyebilir”, yani trafiði istenen hedefe göndererek, kendisinden geliyormuþ gibi görünmesini saðlayabilir.Daha fazla bilgi için http://www.indyramp.com/masq adresindeki IP Maskeleme NASIL belgesine göz atýn.

• IP: daima parçala (CONFIG_IP_ALWAYS_DEFRAG)


Genellikle bu seçenek kapalý durumdadýr, fakat bir ateþduvarý veya maskeleyen bir bilgisayar oluþturuyorsanýz, etkin hale getirmek isteyeceksiniz. Veri bir bilgisayardan diðerine giderken, her zaman tek bir paket halinde deðil, bir kaç parçaya ayrýlarak gönderilir. Burdaki sorun birinin kalan paketlere orda olmasý beklenmeyen bazý bilgileri sokmasýdýr. Bu seçenek ayrýca, gözyaþý saldýrýsýna karþý yama uygulanmamýþ içerdeki bir bilgisayara yapýlan bu saldýrýyý da engelleyebilir.

• Paket Ýmzalarý (CONFIG_NCPFS_PACKET_SIGNING)


Bu, 2.2.x çekirdek dizisinde yer alan ve daha güçlü güvenlik için NCP paketlerinin imzalanmasýný saðlayan bir seçenektir. Olaðan durumlarda kapalý býrakabilirsiniz, ama gereksinim duyarsanýz orda
duruyor.

• IP: Ateþduvarý paket aðbaðlantýsý cihazý

(CONFIG_IP_FIREWALL_NETLINK)

Bu, bir paketin meþruluk durumuna bakarak kabul edilip edilmeyeceðini belirlemek amacýyla, kullanýcý uzayýnda çalýþan herhangi bir programýndaki paketlerin ilk 128 baytýný inceleyebilmenizi saðlayan etkileyi bir seçenektir.

Çekirdek Derleme Seçenekleri

2.2.x çekirdekleri için, seçeneklerin çoðu ayný, fakat yeni bir kaç seçenek daha var. Buradaki açýklamalarýn çoðu, çekirdeði derlerkenki make config aþamasýnda kullanýlan Yardým bölümünün referans aldýðý ./linux/Documentation/Configure.help belgesiyle aynýdýr
(Ç.N.: Çekirdek kaynak dosyalarý genelde /usr/src/linux altýnda bulunur, make config komutu da bu dizine girdikten sonra verilir. Bahsedilen dosya da make config komutunun verildiði dizine göre genelde ./Documentation/Configure.help altýndadýr)
Gereken seçeneklerin bir listesi için 2.0 açýklamalarýna baþvurun. 2.2 çekirdekteki en anlamlý deðiþiklir IP ateþduvarý kodudur. Artýk ateþduvarý oluþturmak için, 2.0 çekirdeðindeki ipfwadm programýnýn yerine ipchains programý kullanýlýyor.


(Ç.N.: 2.4 çekirdek sürümünden itibaren artýk bu iki programýn yerine iptables kullanýlmaktadýr).

• Soket Süzümü (CONFIG_FILTER)


Çoðu insan için bu seçeneðe hayýr demek güvenlidir. Bu seçenek, tüm soketlere kullanýcý uzayýnda bir süzgeci baðlamanýzý, ve bu yolla paketlerin geçiþine izin verilip verilmeyeceðini belirlemenizi saðlar. Çok özel bir gereksinim duyuyor olmadýkça ve böyle bir süzgeç programlayabilir bilgiye sahip olmadýkça hayýr demelisiniz. Ayrýca bu belgenin yazýlýþý sýrasýnda (Ç.N.: Özgün Ýngilizce belgenin) TCP dýþýndaki tüm protokoller destekleniyordu.

• Port Yönlendirme


Port Yönlendirme, ateþduvarýndaki belirli portlarda, dýþarý giden veya içeri gelen paketlerde bazý yönlendirmelerin yapýlabilmesini saðlar. Bu, örneðin bir WWW sunucusunu ateþduvarýnýn veya maskeleme bilgisisayarýnýn arkasýnda çalýþtýracaðýnýz halde o WWW sunucusunun dýþ dünyadan ulaþýlabilir durumda olmasý gerektiði durumlarda yararlýdýr. Bir dýþ istemci ateþduvarýnýn 80. portuna bir istek yollar, ateþduvarý bu isteði WWW sunucusuna yönlendirir, WWW sunucusu istekle ilgilenir ve sonuçlarý ateþduvarýnýn üstünden tekrar özgün istemciye gönderir. Ýstemci ateþduvarýnýn kendisinin WWW sunucusu olarak çalýþtýðýný düþünür. Bu, eðer ateþduvarýnýn arkasýnda bir WWW sunucu çiftliði bulunduruyorsanýz, yük dengelemede de kullanýlabilir. Bu özellik hakkýnda daha fazla bilgiyi http://www.monmouth.demon.co.uk/ipsubs/portforwarding.html adresinden bulabilirsiniz. Genel bilgi için ftp://ftp.compsoc.net/users/steve/ipportfw/linux21/ adresine göz atýn.

• Soket Süzümü (CONFIG_FILTER)


Bu seçeneði kullanarak, kullanýcý uzayýndaki programlarý tüm soketlere bir süzgeç ekleyebilir, dolayýsýyla çekirdeðe belirli tipteki verinin soket içinden geçip geçemeyeceðini bildirebilir. Linux soket süzümü þimdilik TCP dýþýndaki tüm soket tiplerinde çalýþýyor. Daha fazla bilgi için ./linux/Documentation/networking/filter.txt adresine göz atýn.

• IP: Maskeleme


2.2 çekirdek maskeleme geliþtirilmiþ durumda. Özel protokollerin maskelenmesi için ek destek saðlýyor vb. Daha fazla bilgi için IP Chains NASIL belgesine göz atýn.

7.3 Çekirdek Cihazlarý

Linux üzerinde güvenlik konusunda yardýmcý olabilecek bir kaç blok ve karakter cihazlar mevcuttur.

Çekirdek tarafýndan /dev/random ve /dev/urandom cihazlarý, rastgele veri saðlama amacýný taþýr.

Hem /dev/random hem de /dev/urandom, PGP anahtarlarýnýn üretilmesinde, ssh baðlantýlarýnda, ve rastgele sayýlarýn gerektiði diðer uygulamalarda kullanýlmak için yeteri kadar güvenli olmalýdýr. Verilen herhangi bu kaynaklardan çýkan herhangi bir sayý dizisi için saldýrganlar bir sonraki sayýyý tahmin edememeli. Bu kaynaklardan elde edilen verinin kelimenin tam anlamýyla rastgele olmasý için çok fazla çaba ortaya konmuþtur.

Bu iki cihaz arasýndaki tek fark, /dev/random cihazýnýn elindeki rastgele baytlarýn tükenmesi, ve yenileri toplanmasý için beklemek zorunda oluþunuzdur. Yani kullanýcý tarafýndan üretilen entropinin sisteme girmesi için beklemesi durumunda uzun bir süre çalýþmasý durabilir.
 
Dolayýsýyla /dev/random’ý kullanýrken dikkatli olmak zorundasýnýz (Belki de yapýlacak en iyi þey bu cihazý hassas anahtarlama bilgisini üretirken kullanmak, ve kullanýcýya “Tamam, yeterli” denilene kadar klavyesindeki tuþlara rastgele basmasýný söylemektir)

/dev/random yüksek kalitede entropi saðlar, kesmeler arasýndaki farklý zamanlarý ölçme vb. þeylerden elde edilir. Yeterli bitte rastgele veri var olana kadar çalýþmasý durur.


/dev/urandom benzeri bir cihazdýr, fakat depolanmýþ entropi azalmaya baþladýðýnda, olan kadarýnýn, güçlü bir þifreliyazýmsal hash deðerini döndürür. Bu, rastgele veri kadar güvenli olmasa da çoðu uygulama için yeterli derecede güvenlidir.

Bu cihazlardan okuma yapmak için aþaðýdaki gibi bir þey kullanabilirsiniz:

root# head -c 6 /dev/urandom | mimencode

Bu, konsola sekiz rastgele karakter yazar, örneðin parola üretimi için kullanýlabilir. mimencode programýný metamail paketi içinde bulabilirsiniz.
Algoritmanýn açýklamasý için /usr/src/linux/drivers/char/random.c ye göz atýn.

Saygýlar..

 



Sayfayı Yazdır | Pencereyi Kapat