| Virüsler , Virüsler? |
|
|
Konak tipleri Virüsler çeşitli tipte konakları hedef alırlar. Bu kapsamlı olmayan bir listedir; Binary yürütülebilir dosyalar (COM dosyaları ve MSDOS'ta EXE dosyları, Microsoft Windowstaki taşınabilir yürütülebilir dosyalar ve Linux'taki ELF dosyaları.) Tespitten korunma yöntemleri Kullanıcılar tarafından tespit edilmeyi güçleştirmek adına virüsler bazı aldatmacalar kullanmaktadır. Özellikle MS-DOS platformundaki bazı eski virüsler, konak dosyaya bulaşıp içeriği değiştirmelerine rağmen, son değiştirme tarihinin özellikle değişmeden kalmasını sağlarlar. Ancak bu yaklaşım ile antivirüs yazılımlarını aldatamazlar. Bazı virüsler, ulaştıkları dosyaların büyüklüklerini değiştirmeden ve dosyaya zarar vermeden bulaşırlar. Bunu yürütülebilir dosyadaki kullanılmayan alanların üzerine yazarak gerçekleştirirler. Bu türden virüsler boşluk virüsleri olarak adlandırılırlar . Örneğin bir zamanlar büyük tahribata neden olmuş Chernobyl virüsü taşınabilir yürütülebilir dosyaları etkiler çünkü bu tür dosyalarda çok sayıda boşluk bulunmaktadır. 1 KB boyutundaki virüs dosyalara bulaştığında dosya büyüklükleri değişmeyecektir. Bir kısım virüsler antivirüs programları kendilerini tespit etmeden evvel bazı antivirüs program görevlerini sonlandırarak tespiti engellemeye çalışırlar. Bilgisayarlar ve işletim sistemleri gelişip karmaşıklaştıkca eski tip saklanma yöntemlerinin güncellenmeleri yada yenileriyle değiştirilmeleri gerektiği açıktır.
]Bir virüs yayılıma devam edebilmek için mutlaka bir konağa tutunmalıdır. Bazı durumlarda konak programına bulaşmak iyi bir fikir değildir. Örneğin bazı antivirüs programları bütünlük kontrolu yaparak kendi kodlarını incelerler. Dolayısıyla bu türden programlara tutunmak virüsün açığa çıkmasına neden olacaktır. Bundan ötürü bazı virüsler, antivirüs programlarının parçaları oldukları bilinen bir kısım programlara tutunmayacak şekilde tasarlanırlar . Virüslerin sakındıkları bir başka konak türü ise olta (bait) dosyalarıdır. Olta dosyaları, antivirüs programaları yada antivirüs uzmanları tarafından virüsün bulaşmasına yönelik özel olarak hazırlanan dosyalardır. Bu dosyaların hepsi de virüsleri tespit etmeye yönelik olup çeşitli amaçlar için üretilmektedirler; Antivirüs uzmanları olta dosyalarını virüs numunesi elde etmek için kullanırlar . Bir virüsü küçük olta dosyalarında saklamak ve incelemek, sistemdeki büyük programların dosyalarına bulaşmış virüsü incelemeye göre daha pratik olduğundan uzmanlar olta dosyalarını kullanırlar. Virüsler için oltalanmadan sakınmanın bir diğer yolu da seyrek bulaşmadır. Bazen seyrek bulaştırıcılar , diğer şartlar altında tutunmaya uygun bir aday olabilecek konak dosyasına tutunmazlar. Örneğin bir virüs herhangi bir konak dosyasına bulaşıp bulaşmamaya rastgele bir şekilde karar verebilir yada konak dosyalarına haftanın belirli günlerinde bulaşmayı tercih edebilir.
]Bazı virüsler , antivirüslerin işletim sistemine aktardığı bazı istekleri durdurarak antivirüs yazılımını kandırmaya çalışırlar. Bir virüs, antivirüs yazılımının işletim sistemine ilettiği dosyayı okuma isteğinin doğru hedefe ulaşmasını engelleyebilir ve hatta isteği kendine yönlendirmek suretiyle antivirüsten saklanmayı başarabilir. Virüs, daha sonra aynı dosyanın temiz bir versiyonunu antivirüse sunarak dosyanın temiz gibiymiş görünmesini sağlar. Modern antivirüs yazılımları virüslerin bu türden gizlenme tekniklerine karşı koymaya çalışmaktadır. Kaçaklığı engellemenin tek yolu sistemi temiz olduğu bilinen bir ortamdan önyüklemektir.
Birçok antivirüs yazılımı, sıradan programların dosyalarını virüs imzalarını kontrol ederek taramakta ve muhtemel virüsleri bulmaya çalışmaktadır. Bir virüs imzası belirli tip virüsü yada virüs ailesini belirten özel byte numunesidir. Eğer virüs tarayıcısı incelenen dosyalar içinde böyle bir numune ile karşılaşır ise kulanıcıyı virüs hakkında bilgilendirir. Kullanıcı bu durumda dosyayı silebilir yada virüsten arındırabilir. Bazı virüsler, virüs imzaları ile tespit edilmeyi güçleştirecek yada imkansız hale getirecek teknikler kullanır. Bu türden virüsler her bulaşım esnasında kodlarını değiştirmektedir.Dolayısıyla her konak virüsün farklı bir versiyonunu bünyesinde bulundurmaktadır.
Geçmişte virüsler kendilerini basit şekillerde değiştirebiliyorlardı. Örneğin virüsler, kaynak kodlarında yer alan ve görevleri benzer altprogram ünitelerini değiş tokuş etmekteydi. 2+2 yapısındaki bir virüs takas sonunda 1+3 forumuna dönerken işlevinde herhangi bir değişiklik olmuyordu. Günümüzde bu durum gelişkin virüs tarayıcılar için bir problem oluşturmuyor.
Genel olarak virüslerin uyguladıkları çözücü teknikleri basitti ve büyük çoğunlukla her byte'ı ana virüs dosyasında saklanan rastgele hale getirilmiş anahtar ve Xor takısı ile birleştirmek suretiyle elde ediliyordu. Şifreleme ve çözme düzenlerinin aynı olmasından ötürü Xor uygulmalarının kullanılması virüse ek avantaj sağlıyordu. (a XOR b = c, c XOR b = a.)
Çokşekilli kodlar, virüs tarayıcılara yönelik ciddi tehdit arz eden ilk teknikti. Şifrelenmiş virüslere benzer şekilde çokşekilli virüsler de dosyalara şifrelenmiş kopyaları ile bulaşmakta idi. Bununla birlikte şifre çözücü modül de her dosya bulaşmasında değişmekteydi. Dolayısıyla iyi yazılmış çokşekilli bir virüs her bulaşmada sabit kalacak hiçbir parçaya sahip değildi ve bu da virüs imzalarını kullanarak virüsü tespit etmeyi imkansız hale getiriyordu. Antivirüs yazılımları virüsü , öykünücü (emulator) vasıtasıyla çözerek yada şifrelenmiş virüs gövdesinin istatistiki model analizini yaparak tespit edebiliyorlardı. Çokşekilli koda sahip olabilmek için virüs, şifrelenmiş gövdesi içerisinde çokşekilli motora (değiştirme motoru yada değişim motoru) sahip olmalıdır. Bazı virüsler çokşekilli kodları virüsün değişim hızını arttırmakta kullanmaktalar. Örneğin bir virüs zaman içinde yavaş biçimde değişim gösterecek şekilde programlanabilir yada başka virüs kopyaları bulaşmış dosyalara tutunmaktan kendini alıkoyabilir. Bu türden yavaş çokşekilli viruslerin üstünlüğü, antivirüs uzmanlarının bu türden virüslere ait temsil numulerini elde etmekte zorlanmalarıdır. Çünkü belirli bir zaman sürecinde olta dosyalarına sadece benzer yada aynı tip virüs versiyonları bulaşacaktır. Bu durum açıkça gösteriyor ki bu türden viruslerin virüs tarayıcıları ile tespiti güvenilir değildir ve sonuç olarak virüsün bazı örneklerinin tespit edilmekten kaçabildiği açıkça belli olmaktadır.
Öykünücüler (emulatorler) vasıtasıyla tespit edilmekten kurtulabilmek için her yeni yürütülebilir dosyaya bulaşmadan önce kendilerini tamamiyle yeniden yazan virüslerdir. Başkalaşım geçirebilmeleri için bu viruslerin başkalaşım motoru kullanmaları gerekir. Bir başkalaşım motoru genelde çok büyüktür ve karmaşıktır . Örneğin W32/Simile 14000 satır çevirici dili içerir ve %90'ı başkalaşım motoruna aittir.
|
| Anasayfa | Hakkımızda | Hizmetlerimiz | Portfolyo | SSS | Haberler | İletişim |