LANGUAGE TRANSLATE

English French German Spain Italian Dutch Russian Portuguese Japanese Korean Arabic Chinese Simplified

28 Nisan 2012 Cumartesi

LİNUX'DA KRİTİK AÇIKLAR ve ÇÖZÜMLERİ

        Güvenlik konusunda diğer işletim sistemlerinden çok farklı bir yerde duran Linux'un da bir açığı bulundu. Bu ay ortaya çıkan bir açıkla 64-bit Linux işletim sistemi kullanan sistemlere, hacker'lar girebiliyor ve daha sonra tekrar uğrama ihtimallerine karşı bir açık kapı bırakabiliyorlar.

       CVE-2010-3081 olarak bilinen bu açık; Linux'un, RHEL, CentOS, Debian, Ubuntu, CloudLinux, SuSE ve daha birçoğunun 64-bit sürmünde kullanıcının karşısına çıkıyor. İşletim sistemlerinin 32-bit sürümlerinde ise bu açık bulunmuyor.

       Açığın "Ac1db1tch3z" adlı hacker tarafından internette yayınlanmasından sonra Linux, kernel'i yamalandı ve başta Ubuntu, Red Hat, Debian ve CentOS olmak üzere birkaç Linux dağıtımcısı bu açığı yeni sürümleriyle kapattı.

       Linux kullanıcılarının bu açıktan daha önce sistemlerine girilip girilmediğini kontrol etmelerinde fayda var.

      Araştırmacılar Linux'taki güvenlik açıklarını ortaya çıkartmaya devam ediyor. Son 8 yılda geliştirilen Linux sürümlerinin büyük çoğunluğunun tamamen ele geçirilmesine izin veren bir güvenlik açığı ortaya çıktı. Linux geliştiricileri derhal kritik bir güncelleme için harekete geçti.

      Ortaya çıkan program hatası kernel seviyesindeki işlemlerde yer alıyor. Örneğin Sock_sendpage işlemi dahil edilmeden bırakılırsa soruna yol açıyor. Fonksiyon işaretçisi sock_no_accept gibi ilgili bir yer tutucuya bağlanmak yerine etkinleştirilmemiş bir şekilde kalıyor. Sock_sendpage işaretçiyi her seferinde kontrol etmediği için işletim sisteminde güvenlik açığı oluşuyor.

     Güvenlik araştırmacısı Julien Tinnes'in açıklaması şöyle "Kernel kodu boş değerde uyguladığı için güvenlik açığı oluşuyor. Bir saldırgan ilk sayfaya kod yerleştirerek bu kodun kernel ayrıcalıklarıyla çalıştırılmasını sağlayabiliyor." Linux'ta NULL yani boş değer yüzünden oluşan diğer güvenlik açığını,
daha önceki haberimizden okuyabilirsiniz. Sonuçta bir ay içerisinde birbirine yakın iki kritik güvenlik açığı ortaya çıkmış oluyor. Araştırmacılar iki açığın bir arada kullanılabildiğini ve Mayıs 2001'den bu yana 2.4 ve 2.6 sürümlerinin tamamının etkilendiğini belirtiyorlar.Internet son birkaç yıldır daha tehlikeli olmaya başladı. Internet trafiği artmakta ve önemli işler Internet’te yapılmakta. Bununla birlikte insanlardan kaynaklanan zararlar da artmakta. Eğer çalınmaya değer bir şey varsa biri uğraşacak ve de onu çalacaktır. Bu günümüzde Internet dünyasında çok daha doğrudur. Linux sistemleri bile bu kuralın dışına çıkamazlar. Ama Linux’un bu Internet çalkantılarına karşı kuvvetli olması ve birçok sofistike güvenlik birimlerine sahip olması çok güzel birşey. Bu Linux’un Internet’le yoğun uğraşanlar arasında popüler olmasının en onemli sebebidir.


        Internet son birkaç yıldır daha tehlikeli olmaya başladı. Internet trafiği artmakta ve önemli işler Internet’te yapılmakta. Bununla birlikte insanlardan kaynaklanan zararlar da artmakta.

          Eğer çalınmaya değer bir şey varsa biri uğraşacak ve de onu çalacaktır. Bu günümüzde Internet dünyasında çok daha doğrudur. Linux sistemleri bile bu kuralın dışına çıkamazlar. Ama Linux’un bu Internet çalkantılarına karşı kuvvetli olması ve birçok sofistike güvenlik birimlerine sahip olması çok güzel birşey. Bu Linux’un Intermet’le yoğun uğraşanlar arasında popüler olmasının en onemli sebebidir.

           Bununla birlikte Linux güvenlik araçlarını uygun bir şekilde kullanmazsanız, problemlerle karşılaşabilirsiniz. Problemler kötü şekilde kurulmuş güvenlik araçlarından kaynaklanır. Bu yazı hangi hususlara dikkat edilmesi gerektiğini açıklamaya çalışacak.

           Sisteminize zorla girmek için kullanılacak birçok yol vardır. Genellikle bunlar var olan programların hatalarını kullanırlar. Linux kulanıcıları bu hatalara ışık tutar ve çabucak bir yama çıkartırlar. Bu yamalar diğer işletim sistemlerindeki kardeş programların yamalarından çok daha hızlı çıkarlar.

           Bu yazı makinenizi ( ya da ağınızı ) bu çeşit problemlere karşı nasıl koruyacağınızı açıklayacak. Aşağıda güvenli bir Linux’un nasıl yapılacağı açıklanacak.

              Ağ servisleri


          Linux bir sunucu olarak birçok servisi içinde bulundurabilir. Ör : FTP,WWW ve e-mail. Bunlar kapılar ( port ) vasıtasıyla sağlanır. Örnek vermek gerekirse
FTP 21. kapıyı kullanarak iletişim sağlar. Eğer servislerin dağılımı hakkında bilgi almak isterseniz /etc/servicesdosyasına göz atabilir.

            Sistem kaynaklarından kazanmak ve sistem yönetimini daha kolay kılmak için çoğu servis /etc/inetd.conf tarafından yönetilir. Bu dosya servislerin nasıl çalışacağını belirler.

              Nelere sahibiz

            Çoğu Linux dağitimi önceden birçok servisi açmasına rağmen bunlar güvenlik için kapalı olmalı. Birleşmiş sistemlerde güvenlik çok sorun değildir. Bu "yumuşak" ortamda kaza ile gerçekleşen zararların yeteri kadar önlendiğini varsaymakla beraber bu servislere girişin sağlanması bunları korumaktan önemlidir. Eğer Linux’unuz Internet’e açılırsa olaya daha değişik bir açıdan bakmalısınız. Sisteminizde hangi servislerin çalıştığını kontrol için netstat -vat komutu kullanılır.

Sonuç :


tcp 0 0 *:6000 *:* LISTEN
tcp 0 0 *:www *:* LISTEN
tcp 0 0 *:auth *:* LISTEN
tcp 0 0 *:finger *:* LISTEN
tcp 0 0 *:shell *:* LISTEN
tcp 0 0 *:sunrpc *:* LISTEN

         LISTEN yazan her satır bağlanılmayı bekleyen bir servistir. Bunlardan bağzıları tek bağımsız ( stand-alone ) programlardır; fakat çoğu /etc/inetd.conf tarafından kontrol edilir. Eğer bir servisin tam olarak ne yaptığını bilimiyorsanız /etc/services dosyasından bakabilirsiniz.

         Örneğin : grep ’^finger’ /etc/inetd.conf komutuyla şöyle bir çıktı alırsınız :

          finger stream tcp nowait nobody /usr/sbin/tcpd /usr/sbin/in.fingerd

          Programın ne yaptığına bakmak için man sayfalarından in.fingerd’ye bakın. Eğer servise ihtiyacınız yoksa onu /etc/inetd.conf dan başına bir diyez (#) koyarak kapatın.
# finger stream tcp nowait nobody /usr/sbin/tcpd /usr/sbin/in.fingerd

          Daha sonra killall -HUP inetd komutunu vererek inetd ’yi yeniden başlatın tabii ki finger ’i sonsuza dek kapattık. Eğer istersek yeniden # ’i
kaldırarak ve de killall -HUP inetd komutunu vererek bir daha açarız. Sistemi yeniden başlatmaya gerek yok. Eğer bir program inetd ’de yer almıyorsa, bağımsız (stand-alone) bir programdır. Bu servisi programı makineden kaldırarak
( uninstall ) kaldırabilirsiniz.Tabii bunu programın ne işe yaradığını ve ne yaptığınızı biliyorsanız yapın.

          Hosts . ( allow I deny )

           Çeşitli servislere ekstra güvenlik eklemek için Linux daha önceden belirtilmiş makinelere izin vererek ya da reddederek sistemi korur. Örnek olarak sadece sizin ağınıza bağlı bilgisayarlara ( Internet’teki bilgisayarlara değil ) izin vermek için /etc/hosts.allow ve /etc/hosts.deny dosyalarını düzenleyin.

SSH ( secure shell system )

              Makine bilgilerine bakarak bağlantıları reddetmek saldırılardan korunmak için iyi bir yöntem. Ama hepsi bu kadar değil.Sahte makine isimleriyle bağlantı yapmak olasıdır. Internet üzerinden programlar arası haberleşmede bilgi tehlikededir.Yeterli bilgiye sahip birisi bunlara bakabilir. Spoofing denen yöntemle sahte bilgileri Sisteminize aşılayabilirler. Bu problemler Internet protokollerinin karşılıklı haberleşmeleri sırasında gerçekleşir.Bu güçlüklerin üstesinden gelmek için ssh tasarlanmştir.

> SSH açık kaynak kodu ( open source ) şartlarına uygun olarak, bağlantılarda kimlik kontrolü ve şifreleme yapan sağlam yapılı ve iyi geliştirilmiş bir sistemdir. Şifreleme, bilgi paketlerinin iletmi sırasında kodlar kullanır. Kimlik doğrulama
( authentication ) bağlantı ya da paket iletimi varsa kullanılan bir yöntemdir. Diğer işletim sistemlerinde SSH istemcileri mevcuttur. Sunucu olarak Linux kullanılarak SSH düzeyinde bilgi iletimi sağlanabilir.

SSH hakkında daha fazla bilgi için color=#0000ffhttp://www.ssh.fi

programları izleme . Ne nerde kaydedilir ?

               Linux, sistem yöneticisinin sistemde neler döndüğünü bilmesini sağlayan kapsamlı alt sistemlere, programlara sahiptir. Aşağıda, dosyaları kaydeden ( log ) bazı araçların açıklaması mevcuttur. Bunların doğru kurulduğundan emin olun ve herhangi bir saldırıdan şüphelenirseniz bunları kontrol edin. Buradaki en onemli sorun: çok fazla kayıt bulunmasıdır. Bunun sonucu olarak filtreleme ve önemli bilgilerin kaydedilmesi önem kazanır.
> 3.2.1 JAIL ( Just Another IP Logger ) :
JAIL arka planda çalışan iki küçük progr*****tan oluşur ( icmplog ve tcplog ). Bu programlar /var/log/syslog içindeki bilmek istediğiniz bilgileri kaydederler. Geniş bilgi için man sayfalarına bakabilirsiniz.
ftpd , rlogind ve birçok etkileşimli programlar, kendilerine bağlanmak isteyen kullanıcıların kayıtlarını /var/log/syslog ve /var/log/messages dosyalarında tutarlar.

Diğer güvenlik önlemleri

         Bilgisayarlardaki firewall özel bir ağı uçsuz bucaksız olan Internet’ten korumayı sağlayan bir araçtır. Firewall’un en basit şekli ( modem yada ethernet kartı ile ) Internete ya da özel ağlara bağlı bir Linux makinasıdır. Firewall görevini üstlenen bilgisayar, Internet’e ve de ağa erişebilir.Bu korumalı ağ Internet’e çıkamaz ve de Internet’te bu ağa giremez. Internet’e veya Internet’ten akan bilgiler firewall tarafından fıltrelenir. Ağ içinde servisleri açma ya da kapatmada daha az özen gösterilir. Bu şekilde sadece bir makina üzerinde yoğunlaşılır. Firewall kurmak oldukça karmaşık bir iştir. İlk başta makinenize bağlı iki ethernet kartı gerekir. Sonra iki ethernet kartı arası bilgi köprülerinin filterelenmesini kurmak için ipchains isimli program kurulmalıdır

ALINTIDIR

KAYNAKLAR:1)www.chip.com.tr
                           2)www.bilgininadresi.net