Root > Documents > Web Güvenlik Açıkları > RootKit | Merkezleme
Cyber-Warrior.Org \ Doküman \ Web Güvenlik Açıkları > RootKit | Merkezleme
Madde
  Yazar : enigm@
  Date : 06.05.2009 18:47:51
 
# RootKit | Merkezleme
 

S.A. Arkadaslar,

RootKit  | Merkezleme

RootKit olarak bilinen yazilimlar ilk olarak UNIX isletim sistemlerinde ortaya çikmistir ve orijinal UNIX isletim sistemi dosyalari ile yer degistirip normal bir kullaniciya Root erisim hakki vermeyi hedeflemislerdir. Zamanla bu yazilimlar Windows ortamina çalisabilir olmustur. Windows NT tabanli isletim sistemlerinde çalisabilen ilk Rootkit ise 1999 yilinda gözlenmistir. Yine de bu dönemde normal bilgisayar kullanicisinin güvenlik konusunda dikkatini çekememis, sadece güvenlik uzmanlarinin uzaktan izledigi bir yazilim türü olarak kalmistir. 2005 yilinda ise Sony Digital Rights Management (DRM) Rootkit’inin tespit edilmesi Rootkit konusunun önemini gözler önüne sermistir. Iste bu noktadan sonra Rootkit’ler tüm güvenlik çevrelerince önemli ve tehlikeli bir tehtid olarak tanimlanmistir. Çünkü Sony DRM Rootkit zararsiz bir Rootkit olsa da tüm Rootkit yazilimlari kötü niyetli kullanicilar tarafindan zararli hale getirilebilmektedir yani zararsiz Rootkitler de potansiyel bir tehlike olusturmaktadir.
Adindan da anlasilabilecegi gibi RootKit iki parçadan olusmaktadir; Root= Unix sistemlerinde herseyi yapma yetkisine sahip olan kullanici ya da kullanici yetkisi, Kit = Bu yetki sahibi olabilmek için kullanilan gerekli araç kutusu seklinde ifade edilebilir.
Bunu yaparken sistem araçlari ile yer degistirmis olmalari, taninmalarini engellemekte ve arkaplanda hiçbir kullanicinin ya da tarayicinin fark edemeyecegi biçimde çalismalarini saglamaktadir. Bu özellikleri zararli yazilimlari yazan programcilar (Hacker) tarafindan çok cazip bulunmakta ve ilk baslarda kötü amaçlarla kullanilmayan bu yazilimlardan yanlis kimselerin elinde çok tehlikeli olabilecekleri için günümüzde kötü niyetli yazilimlar olarak bahsedilmektedir.
Rootkit’lerin fark ettirmeden islemler yapabildiginden bahsetmistim. Bunu biraz açmak gerekirse; Rootkit yazilimlarin bu derece tehlikeli olmalarinin en önemli nedeni sadece kendilerini gizleyebilmeleri degil ayni zamanda ne yapmak için programlandilarsa yapacaklari islemlerde kullandiklari araçlari, dosyalari, kayit defteri anahtarlari, portlari ve hatta sistem dosyalarini da gizleyebilmeleridir.
Rootkit’ler bu kötü özelliklerine ragmen daha önce UNIX örneginde verdigim gibi tamamen kötü niyetli yazilimlar olmayabilirler ancak sistemde bir Rootkit olmasi bile bu yazilimlarin kötü niyetli olarak yeniden düzenlenebilmesinden sagladigi için potansiyel bir tehlike olusturmaktadir.
Rootkit’lerin kullanilis amaçlari aslinda diger kötü niyetli yazilimlardan çok farkli degildir, sisteminize aldiginiz bir Rootkit baska birininin (hacker) bilgisayariniza girmesini ve kendi yasal olmayan amaçlari için bilgisayarinizi kullanmasini saglayabilir. Mesela bir Rootkit yazilimi bilgisayariniza baska bir kötü niyetli yazilimi (virüs, spyware, keylogger vs…) daha öncede bahsettigim gibi gizleyebilmektedir.

Rootkitler Nasil Gizlenir  Buraya Dikkat Önemli

Rootkit yazilimlarinin asil etkili olmasinin nedeni isletim sisteminin zayifliklarindan yararlanmalaridir. Bu zayifliklari kullanarak isletim sistemine sizarlar ve bu sayede kendilerini isletim sistemi dosyalari ile degistirebilirler.
Önceden de belirttigim gibi Rootkit yazilimlari çogu zararli program tarayicisindan kendisini saklayabilir ve tarama sonuçlarinda görünmezler. Tarama yapilirken isletim sisteminin kendileri için, tarama yapan güvenlik yazilimina yanlis bilgiler vermesini saglarlar ve böylece isletim sistemi herhangi bir Rootkit bulundurmadigini tarama yazilimina belirtir. Her ne zaman bir tarayici ya da kullanici, isletim sisteminden dogrudan bilgi isterse, isletim sisteminden gelen bilginin dogru oldugu kabul edilir. Bu bir kural gibidir. Tarama yapan bir araç isletim sistemine zararli bir yazilim olup olmadigini sordugunda ya da tarama yaptiginda isletim sisteminde eger Rootkit varsa Rootkit geri dönecek olan bu bilgiyi kendi çikari için düzenler ve hem kendisini hem de iliski kurdugu diger zararli yazilimlari gizleyen, yeniden düzenlenmis bilgileri tarayiciya gönderir. Bunu yapabilmesini saglayan temel güç ise Rootkit yaziliminin Root yani yönetici haklarina sahip olmus olmasidir.
Rootkitler sistemden istenen bilgileri degerlendirmek için bir süre bu bilgilerin geri dönüsünü geciktirir bu isleme hooking denmektedir. Bu hooking süresi boyunca Rootkit tarayici ya da kullanici tarafindan sistemden istenen bilgileri, kendisini ve ona eslik eden zararli yazilimlari gizleyecek sekilde degistirir.
Rootkit ile birlikte islem gören ya da Rootkit sayesinde sistemde gizlenmis olan yazilimlarin tespit edilip kaldirilmasi da çok önemlidir. Çünkü bu yazilimlar sürekli Rootkitler ile bir veri alis verisi içindedir. Rootkitden temizlenmis bir sistemde eger zararli bir yazilim kendisini gizleyecek bir Rootkit olmadigini fark ederse bu sistemi öncelikle Rootkit ile tekrar enfekte etmek için çalisacaktir bunu açtigi backdoorlar ile yapabilecegi gibi degisik biçimlerde de yapabilmektedir.
Peki bu gizlenme size nasil yansir, örnegin görev yöneticisini açtiginizda arkada çalisan bu Rootkit ve iliskili dosyalar çalissalar da göremezsiniz. Eger windows ile bu Rootkit dosyasinin bulundugu dizine giderseniz ortada bir Rootkit olmadigini görürsünüz, kayit defterinde bir degisiklik var mi diye kontrol ettiginizde degisiklik bulunsa da göremezsiniz ve eger Rootkit bir port kullaniyorsa, portlari kontrol etseniz bile açik degil, kapali olarak görürsünüz.

Kaç Tür Rootkit Vardir ?


Temelde iki tür Rootkit bulunmaktadir. Bunlar sistemdeki etkilerine, sistemde kalici olup olmadiklarina göre iki ana gruba ayrilabilirler.
 
 1-) Kullanici Aracili Rootkitler

a-) Kalici Olanlar (Sistem yeniden baslatilsa bile kendisi ve etkisi ortadan kalkmayan)
b-) Kalici Olmayanlar (Sistem yeniden baslatildiginda kendisi ve etkisi ortadan kalkan)

2-) Çekirdek (Kernel) Aracili Rootkitler

a-) Kalici Olanlar
b-) Kalici Olmayanlar
Bunlardan Kullanici Rootkileri, Kernel Rootkitlerinden daha az zararlidir ve etkileri sadece bulastiklari kullanici hesabi ile sinirlidir.

Kullanici Aracili Rootkitler

Bunlar zararli islemleri yapmak ve isletim sisteminden istekte bulunmak için API (application programming interface) kullanmak durumundadirlar. Bu API istekleri Kernel’e dogrudan ulasmaz ve DLL (Dynamic Link Libraries) olarak bilinen dosyalara ugramak durumundadir. Bu DLL dosyalari API isteklerini kernel’in anlayabilecegi
sekilde düzenler ve istek gerçeklestirilir. Gördügünüz gibi bu seviyede dogrudan kernele erisim bulunmamakta ve araci kullanilmaktadir.

Kernel Aracili Rootkitler

Kernel, isletim sisteminin beyni ve en temel parçasi olarak degerlendirilebilir. Tüm yazilimlar bir sekilde kernel ile iletisim halinde olmalidir ve bu kadar öneme sahip olan bir bölüme Rootkit yazilimilarinin dogrudan erisimi çok tehlikelidir. Bu alanda bulunan bir Rootkit sistemin tüm kontrolünü elinde tutabilir. Ancak Kernel Aracili Rootkitler kendilerini daha çok sistem hatasi vermeleri ile belli edebilirler. Yani sistem kararsiz duruma gelir ve çogu zaman hata vermeye baslar.

Kalici Olanlar


Bir Rootikin isletim sistemini yeniden baslatmadan kurtulmasinin ve bu sayede kalici olmasinin nedeni su seklide açiklanabilir; Rootkit sistemde yani sabit diskte bir yerde bulunmakta ve kayit defterinde otomatik baslatma girisi eklemektedir. Bu sayede kendisini hafizaya atabilmekte ve sistem her yeniden baslatildiginda kontrolü eline alabilmektedir.

Kalici Olmayanlar


Bu tür Rootkiler sadece hafizada çalisir durumda bulunurlar ve sistemin yeniden baslatilmasi ile tekrar hafizaya yerlesmez ya da kayit defteri girisi eklemezler. Bu durum ev bilgisayarlarinda bir sorun yaratmaz gibi görünsede birbirine bagli ve sürekli çalismak durumunda olan bir bilgisayar aginda can sikici olabilmektedir.

Rootkit’lere Karsi Kullanilabilecek Yazilimlar

Rootkitler konusunda herhangi bir yazilim kullanmaya geçmeden önce güvenlik açisindan atmaniz gereken iki adim bulunmaktadir.

1-) Rootkitlerin bilgisayari enfekte etmek için yönetici haklarina sahip olmalari gerektiginden sisteminize yönetici olarak girmeyin, yetkileri sinirlandirilmis bir kullanici hesabi ile girmeniz bu konuda atabileceginiz en büyük adimdir.

2-) Rootkitler yönetici hesabi dahil sisteme bir defa girdiklerinde diger kullanici hesaplarinida etkileyebileceklerinden, özellikle yönetici kullanicisi basta olmak üzere sistemdeki kullanicilarin çok güçlü sifreler kullanmasi gerekir. Güçlü sifre nasil olmalidir diye bir örnek verecegim (içerisinde özel semboller, büyük harf, küçük harf, sayi bulundurmali, bunlar mümkün oldugunca birbirinden farkli olmali ve en az 6-8 haneli olmalidir) ancak ayrintili bilgilere sitemizden ya da arama motorlarini kullanarak ulasabilirsiniz.
Belki de neden Rootkitler için ayri bir yazilim kullanmaniz gerektigini sorabilirsiniz. Bunun en büyük nedeni Rootkit yazilimlarinin su an bilinen antivirüs ya da antispyware vb.. yazilimlar ile tespit edilememesinden kaynaklanmaktadir. Neden tespit edilemedikleri ise söyle açiklanabilir; sisteme giren Rootkit sizin sistem dosyalarinizla kendini yer degistirir, bu yer degisikligi sonucu sisteminizde herseyi yapabilir, olagan güvenlik yazilimlari tarafindan sistem dosyasi olarak algilanir, isterse zararli bir yazilimi tarama yapan güvenlik yazilimlariniza zararsiz gibi gösterebilir. Bunun yaninda bu zararli yazilimlarin kullandigi portlari, dosyalari ve kayit defteri anahtarlarini bile gizleyebilir. Aslinda iste bu zararli yazilimlari, güvenlik yazilimlarindan saklayabilme özellikleri Rootkit yazilimlarini bu kadar tehlikeli yapmaktadir. Aslinda bu yazilimlarin tüm varolma nedenide budur, baska zararli yazilimlar için isleri çok kolaylastirmis olurlar. Tüm bu anlattiklarima ragmen Rootkitler asla tespit edilemez degildir ve asagidaki yazilimlar kullanilarak tespit edilip, sisteminizden kaldirilabilirler.
Rootkit’lerin aslinda UNIX kökenli oldugunu söylemis olsak bile bugün en büyük tehtid altinda olan kullanicilar windows kullanicilaridir (bunun en büyük nedeni bu yazilimlari hazirlayan kötü niyetli programcilarin en popüler olan isletim sistemini seçmeleri ile dogrudan ilgisi vardir.) ve windows bu konuda çok ciddi çalismalar yapmakta hatta ayri bir Rootkit tespit etme ve kaldirma yazilimi üzerinde çalismaktadir. Tabi o süreye kadar diger güvenlik firmalari da bu konuda bos durmamakta ve çesitli Rootkit yazilimlari gelistirmektedirler. Asagidaki listede Rootkit tespit etme ve kaldirma islemlerinde kullanabileceginiz bazi yazilimlarin listesine ulasabilirsiniz.
 
Buradan Inidirebilirsiniz (Sophos Anti-Rootkit 12)

color=#0000cc http://www.sophos.com/support/cleaners/sarsfx.exe

 

Ali Gökhan Demir~ Enigm@
 

   
   
Cyber-Warrior TIM All Legal and illegal Rights Reserved.\CWDoktoray 2001©