Bilgisayar Virüsleri
Pakistan) Basit ve Amjad Alvi, kendi yazılımlarının kopyalandığını farkettiler. Buna tepki olarak ilk bilgisayar virüsünü geliştirdiler. Bu virüs, müşterilerinin kopyaladığı her floppy disket üzerine hem kendi kopyasını hem de telif hakkı (Copyright) mesajını koyan bir programdı. Virüsler böylesine basit bir gelişmeyle başladı,fakat zamanla tam bir virüs kültürü gelişti. Günümüzün virüsleri tüm dünyayı birkaç saat içinde sarabiliyor, manşetlere konu olabiliyor.
Bir bilgisayar virüsü, belleğe yerleşen, çalıştırılabilen programlara kendini ekleyen, yerleştiği programların yapısını değiştiren ve kendi kendini çoğaltabilen kötü amaçlı programlardır.
Teknik olarak bir bilgisayar programının virüs sayılması için kendi benzerini yapıp bunu başka programlara bulaştırması lazımdır
Virüsler bulaştıkları bilgisayarda genelde hızlı bir şekilde yayılırlar.Tıpkı grip virüsünün insan vücuduna yerleşmesi gibi, bilgisayar virüsleri de kendilerini taşıyıcı bir programa yerleştirir.Böyle virüs bulaşmış bir program bilgisayara transfer edildiğinde,bilgisayardaki diğer programlara da virüs bulaşmaya başlayacaktır.
Bilgisayar virüslerinin popüler bulaşma yollarından birisi "virüs kapmış bilgisayar programları" dır. Bu durumda, virüs kodu bir bilgisayar programına (örneğin, sık kullanılan bir ekran koruyucusuna ya da bir oyun programına) virüsü yazan (ya da yayan) kişi tarafından eklenir. Böylece, virüslü bu programları çalıştıran kullanıcıların bilgisayarları, "potansiyel olarak" virüs kapabilirler. Özellikle internet üzerinde dosya alışverişlerinin ne kadar sık kullanıldığını düşünürsek tehlikenin boyutlarını daha da iyi anlayabiliriz.
Virüslenmiş program çalıştırıldığında virüs kodu da, genellikle, bilgisayarın hafızasına yerleşir ve potansiyel olarak zararlarına başlar. Bazı virüsler, sabit diskin ya da disketlerin "boot sector" denilen ve bilgisayar her açıldığında ilk bakılan yer olan kısmına yerleşir. Bu durumda, bilgisayar her açıldığında "virüslenmiş" olarak açılır. Benzer şekilde, kendini önemli sistem dosyalarının (MSDOS ve Windows için COMMAND.COM gibi) peşine kopyalayan virüsler de vardır.
Virüs bulaşması için önceleri tek yol, floppy disketler idi. Ancak daha sonraları, gelişen bilgisayar ağları ve özellikle internet aracılığıyla da bulaşmaları olanaklı hale geldi. E-posta kullanımının yaygınlaşması ile virüsler artık çok daha hızlı yayılabilmektedirler.
Virüslerin Genel Yapısı
Virüsler baslıca üç bölümden meydana gelmişlerdir.Bunlar sırası ile kopyalama bölümü, gizleyici ve etki bölümüdür.
Kopyalama bölümü ile kendisini çalıştırılabilir dosyalara ilave eder.
Gizleyici bölümü, kendini gizleme görevi yapar. Daha ziyade anti-virüs programlarının gözünden kaçmak ve anti-virüs programını yanıltmak için oluşturulmuştur.
Etki bölümü ile asıl işlem yerine getirilir.Asıl işlemin yaptığı zararlı etkilere; verileri karıştırmak, programın bir kısmını silmek, disk veya disketin çalışmasını engellemek örnek olarak verilebilir.
Virüsler kopyalama bölümü ile bulaşmalarına rağmen bulaştıkları dosyalar farklı olabilir.Virüsler genel olarak EXE, COM, OVL, OBJ, LIB uzantılı dosyalara kendilerini kopyalarlar. Virüs bulaştıktan sonra gizleyici bölümü, program her çalıştığında aktif duruma geçer ve virüs kendini gizlemeye çalışır.Normal çalışma süresince etki bölümü pasif durumdadır. Şartlar uygun olduğunda ortaya çıkar ve etkisini gösterir. Bu bölümün şartlarının uygunlaşması; bir tarih olabilir (Örneğin CIH virüsü) , ülke kodu olabilir, kopyalama işlemi olabilir, herhangi bir verinin girilmesi olabilir. Virüs yazan bir insan için mantık geliştirme bölümü bu bölümdür. Virüs yazmanın ayrıcalığı da bu bölümde gizlidir. Çünkü diğer bölümler hemen hemen aynıdır. Yukarıda uzantıları verilmiş olan dosyaların dışında ayrıca bir program için yazılmış özel virüsler de vardır.
Virüsler Neler Yapabilir?
Bilgisayar içi yapısı tamamen programlamaya dayılıdır. Hangi donananımın nasıl ve ne şekilde çalışacağını programlanma şekli belirler. Virüs de bir program türü olduğuna göre; bilgisayarda programlamaya dayalı her şeyi yapabilirler. Yapabileceklerini sıralayacak olursak;
• Bilginiz dışında bilgisayarınızın denetimini ele geçirir.
• Bilgisayarınızın garip davranmasına neden olur, örneğin, çeşitli sesler çıkarır veya can sıkıcı iletiler görüntüler.
• Word ve Excel belgelerine bulaşan ve zarar veren makrolara gizlenirler. (Bunlara makro virüsleri denir.)
• Dosyalarınızda ciddi zararlara neden olurlar. Virüsler, verileri bozabilir, dosyaları silebilir, hatta sabit diskinizi tamamıyla silebilir.
• Zarar vermek için önceden tanımlanan tetikleme tarihine kadar (örneğin, 13. Cuma) virüsler etkin olmazlar.
• Donanımlara zarar verebilir.
En iyi huylu virüsler (görünürde zarar vermeyen virüsler) bile önemli zararlar verirler : sabit disk ve/veya bellekte yer kaplarlar, CPU zamanını harcarlar; ortaya çıkarılmaları ve temizlenmeleri için önemli miktarda zaman ve para harcanır.
Değişik Türde Zararlı Programlar
Virüslerle ile zaman zaman karşılaştırılan fakat virüslerden farklı özellikler sahip başka zararlı programlar da vardır. Truva Atları (Trojan Horses) ve Solucanlar (Worms) örnek verilebilir.
Truva Atları(Trojan Horses)
Virüslerin bir alt sınıfları, Truva Atı olarak bilinen, virüslerdir. Esasında Truva Atı teknik olarak bir virüs değildir. Truva Atı, ki bu adı tarihte Truva Savaşları olarak bilinen ve Yunanların uyguladıkları ve kazandıkları bir taktikten alır (Truvalılar'ı yenemeyen Yunanlılar tahtadan dev bir at yaparak bunu savaş tazminatı olarak Truvalılar'a verirler ve kentin kuşatmasını kaldırırlar. Truva atı denilen atın içine gizlenmiş Yunanlı askerler gece olduğunda şehrin kapılarını açarlar ve eğlenceye dalmış olan Truvalılar’ı öldürürler. Günümüzde de aynı işi programcılar yapıyor. Tahta at yerine, bilgisayarlarımıza çeşitli programlar yolluyorlar. Bir tür programdır. Bu program aslında kullanışlı ve cazip gelen şeyler vaat eder yada yapıyor izlenimi verir (oyunlar veya kullanışlı kaçak dosyalar arkasında gelebilir). Fakat içinde kötü niyetli şeyler ihtiva eder ve sinsice bunları arka tarafta kullanıcının haberi olmadan uygular (Bilgisayardaki şifreleri çalmak gibi). Truva Atları asla başka programlara bulaşmazlar.
Çoğu Truva Atı, oturumu açma kimliği ve parolasını çalmak ve sonra da onları ödeme yaparken kullanılan hesabı kullanabilecek bir başkasına e-posta ile göndermek üzere tasarlanmıştır.Bazı Truva Atları da müstehcen iletiler görüntüler veya sabit sürücünün içeriğini siler. Örneğin güvenli görünen veya ücretsiz çevrimiçi bağlanma gibi öneriler sunan bir programı yüklerken Truva Atları alınabilir. Program bir kere yüklendiğinde ve çalıştırıldığında, kötü amaçlı kodlar çalışmaya başlar. Truva Atları ile virüsler arasındaki fark, Truva Atlarının kendiliklerinden bulaşmamaları veya yinelenmemeleridir. Yalnızca kasıtlı olarak; e-posta ile ,disket yolu ile veya bir bilgisayara doğrudan yüklenerek yayılabilirler. Bunun anlamı, virüsten farklı olarak, yalnızca bir kere belli Truva Atı tarafından etkilenilir.
Solucanlar(Worms)
Genellikle ağ bağlantılarını kullanarak yayılan, solucan olarak tanımlanan kodlar, yayılmak için her zaman taşıyıcı bir programa ihtiyaç duyarlar.Solucanlar dosyadan dosyaya yayılma yerine tüm sisteme zarar vererek bilgisayardan bilgisayara yayılırlar. Solucanlar, e-postayı kullanarak ağ üzerindeki bir bilgisayardan diğer bilgisayarlara kendilerini kopyalarlar. Solucanlar, çoğalmak için insan müdahalesine gereksinim duymadıklarından bilgisayar virüslerinden daha hızlı yayılabilirler.
Virüs Çeşitleri
• Yazılımlarına Göre Virüsler
Virusleri yazılım yöntemlerine göre iki grubu ayrılırlar. Buna göre yazılımlarına göre virüs çeşitleri :
o Resident Virüsler
Bu virüsler adından da anlaşılacağı gibi yerleşik (resident) olarak her an bellekte kalan ve her an aktif olan virüslerdir.Yazılımı biraz daha karışık ve detaylıdır.Gizleyici bölümü daha fazla emek isteyen virüslerdir.Örneğin virüs bulaşmış bir dosyanın uzunluğu değişmesine rağmen , gizleyici bölüm bu dosyanın orijinal uzunluğunu vererek kullanıcıyı yanıltır.Genellikle INT 20h,21h,41h gibi kesme sinyalleri sırasında dosyalara bulaşırlar.
Bellekte bulunup bulunmadıkları çok çeşitli yöntemlerle ve anti virüs programları ile anlaşılabilir.Tespit edilip edilememesi virüsün kalitesine bağlıdır.Kalitesi iyi olmayan bir virüs bellek hartalarını veren programlarla rahatlıkla tespit edilebilir.
o Nonresident Virüsler
Bu tip virüsler bellekte yerleşik kalmayan virüslerdir.Ancak bulaştıkları program çalıştığında aktif hale geçerler.Aktif hale geçer geçmez kendilerini bir veya daha fazla dosyaya kopyalarlar.dosya tipi virüs ise bulaştıktan sonra kontrolü asıl programa bırakır. Eğer boot virüs ise bulaştıktan sonra kontrolü işletim sistemine bırakır.Resident virüslere oranla daha iyi ve sinsi bir şekilde korunabilirler.Çünkü bulaştığı program çalıştığı esnada ve kısa bir sürede tahribatını yapıp geri çekilirler.Bellek haritaları ile tespit etmek oldukça zordur.
Nonresident olarak yazılmış boot sektör virüsü pek etkili değildir.Çünkü bir disketten diğerine bulaşabilmesi için bellekte sürekli aktif olması gerekir.Bu yüzden bu tip yazılan virüsler genellikle dosya virüsleridir.
• Etkilerine Göre Virüsler
Etkilerine göre virüsleri iki ana başlık altında toplamak mümkündür.Bunlar:
1-Boot Sektör Virüsleri :
A-Master Boot Record
B-Normal Boot Sektör Virüsleri
2-Program (Dosya) Virüsleri:
A-COM dosya Virüsleri
B-EXE dosya Virüsleri
C-Diğer Virüsler
o Boot Sektör Virüsleri
Master Boot Record (MBR/Partition Table) Virüsleri :
Boot sektör virüsleri hard diskin veya floppy disketin ilk sektörlerine bulaşır.Dosya viruslerinden farklılıkları dosya çalıştırılmadan aktif hale geçmeleridir. Bilindiği gibi bilgisayar açıldığı zaman ilk devreye giren ünitesi BIOS’ tur.BIOS harddisk'in boot sektöründen geçerli partition table(reverse Word format) imzasını arar.Eğer bu imzayı bulabilirse bu bloktaki bilgileri RAM belleğe okur.Virüs kendisini bu imza yerine veya okunacak bloğa yazdığı taktirde problem burada ortaya çıkar.BIOS'un okuması sırasında partition imzasını gizleyebilir.BIOS görevini tamamlayamayacağı için , bilgisayar açılmaz.Bloğun okunması sırasında virüs yazıcısının belirlediği bir kesme çağırılabilir.Bu durumda bilgisayarın açılması kesintiye uğrar.Blok okunup, Ram belleğe aktarıldıktan sonra ,virüsün etki kısmı çalışarak bilgisayarı reset edebilir veya bir jump komutu ile okunması gerekli olan bazı dosyaları okutturmadan sistemin yanlış yüklenmesini sağlayabilir.Yşte bu türlü işlemler virüs yazmanın mantığını oluşturur.
Normal Boot Sektör Virüsleri :
Floppy disketlerinde partition table bulunmaz.Aslında harddiskteki partition table'de boot sektördür.Fakat birden fazla işletim sistemi yükleyebilmek için bölümlendirilmişlerdir.Yukarıda hard disk için açıklanan imzalara benzer.Ymzalar disketin sıfırıncı sektöründe de vardır.Virüs bilgisayarın hard diskten açılması sırasında yaptığı işlemleri floppy disketten açılma yapıldığında da yapar.
Yster hard diskten , Yster floppy disketten boot yapılsın daha işletim sistemi yüklenmeden virüs yüklenmiş olur.Yşletim sisteminden önce yüklenmesinden dolayı işletim sistemini istediği gibi yönetebilir.Yani kaleyi içten kuşatmıştır ve savunmayı yenmiştir.
Virüs kendisini partition sektöre veya boot sektöre yazabileceği gibi FAT'a (dosya yerleşim tablosuna)veya partition bölümleri arasına da yazabilir.Buradaki yapacağı işlemlere dosya yerleşim tablosunu bozmak aranılan kütüğü gizlemek gibi örnekler verilebilir.
Her iki çeşit virüsünde çalışma algoritmasının aşağıdaki gibi olduğu söylenebilir.
1-Belirtilen yere bulaşmak için kendini gizle
2-Orijinal boot/MBR sektörünü kontrol altında tut
3-Kendi virüs imzanı ara ve daha önce bulaşıp bulaşmadığını denetle
4-Bulaşılmış ise hareketsiz kal ve boot sektörü terk et
5-Bulaşılmamış ise Kendi kodlarını belirtilen şartlarda boot sektöre yaz
6-Duruma göre hareket et.Gerekiyorsa Resident olarak yerini al
7-Birinci basamaktan itibaren görevine devam et
o Program (Dosya) Virüsleri
Program virüsleri çalıştırılabilir dosyalara bulaşabilen virüslerdir.Programların tanımlanan yerlerine kendilerini kaydederek onlarla beraber çalışırlar.Bu yüzden programın çalıştığı her bilgisayara kolayca bulaşırlar.
Program virüslerinin DOS'un kullanılma özelliklerine göre birkaç tipi vardır.Hangi tip olursa olsun çalışma algoritması hemen hemen aynıdır.Değişik olan kısımları ; gizleyici ve bomba bölümleridir.Kopyalama bölümleri genellikle aynı mantığa dayanır.
o COM Dosya Virüsleri :
Daha önceki bölümlerde açıklandığı gibi DOS ortamından uzantıları COM ,EXE ve BAT olan dosyalar doğrudan çalıştırılabilirler.Bu tur virüslerin yazılımında temel mantık budur. COM uzantılı dosyalar 64 KB 'lık bir segment üzerindedir.COM uzantılı bir program çalıştırıldığı zaman ,DOS tüm bellek alnını bu dosyanın kontrolüne birakır.COM dosya virüsü en kolay ve en hızla yayılan bir virüstür.Virüsün kopyalama kısmı , virüslü bir dosyadan diğerine kopyalama yapar.Kendisine zarar gelmemesi için ,com dosyanın başlangıcını saklar ve kendisinin bir kısmını buraya , bir kısmını da dosyanın sonuna yazar.Virüs yazarının tanımladığı işlemleri ise program çalıştığı sürece yerine getirir.
o EXE Dosya Virüsleri :
EXE dosya virüsleri COM dosya virüslerinden biraz daha farklıdır.EXE dosya virüsü COM dosya virüsü gibi kendisini dosyanın başlangıcına yazmaz.EXE programın başlığında ufak tefek değişiklikler yapmak onun için yeterlidir.Kendisini büyük oranla programın en sonuna yazar.EXE bir dosyaya virüsün kendisini yazması COM dosyaya oranla daha zordur.Genelde minimum bellek ihtiyacını yükselterek etkilerini gösterirler.
• Platformlara göre virüsler
o PC Virüsleri
PC virüsleri kişisel bilgisayarlar(PC’ler) ve DOS ortamı için yazılmış virüslerdir.Bu tür virüsler daha çok DOS ortamında çalışmaları için yapılmalarına rağmen Windows 95 Windows 98,Windows ME,Windows NT ve OS/2 işletim sistemlerinde de çalışabilmektedirler.
o Macintosh Virüsleri
Macintosh virüsleri PC virüsleri kadar problemler çıkarmazlar. Macintosh işletim sisteminde çalışabilecek virüs sayısı gerçekten çok azdır.Bu tür virüsler daha çok okullardan temin edilmektedir. Microsoft ürünü olan işletim sistemlerinin(DOS, Windows...) yaygınlığı göz önüne alındığında,Macintosh işletim sistemi için yazılmış virüslerin azlığı doğaldır.
• Diğer Platformlar
Virüsler hemen hemen her tür bilgisayarda bulunabilirler.Örneğin;gelişmiş hesap makinaları,eskiden var olan Commodore 64 ve Unix bilgisayarları gibi sistemler.
• Diğer Virüsler
Yukarıda bahsedilen virüslerin dışında bilinen BAT ve SYS dosya virüslerde vardır.Bunlara da kısaca değinelim.
o BAT Dosya Virüsleri
DOS ortamından çalıştırılan 3. dosya ,BAT uzantılı dosyalardır.Bu dosyalar binary komut düzeninde olmayıp ASCII komut düzenindedir.
Önceki konulardan hatırlanacağı gibi uzantısı BAT olan dosyalar toplu işlem dosyalarıdır ve kapsamlarında birçok toplu işlem komutlarını içerirler.BAT dosya virüsleri toplu işlem dosyası içerisinde kullanılan emirleri birer COM uzantılı dosyaya çevirirler.Bu durumda sanki bir COM uzantılı dosya çağrılmış gibi çalıştırılmak istenir.Örneğin “CALL” emri karşısında CPU ne yapacağına karar veremediği için sistem ya kilitlenir veya bir interrupt ile kesintiye uğrar.Kullanıcıyı hayret içinde bırakan ilginç virüs tipleridir.
Bazı BAT dosya virüsleri DIR komutunun işlevlerinden yararlanır.DIR komutu çalıştırıldığında , değişik isimli yeni bir dosya oluştururlar.Oluşturulan bu dosya ile debug programını çalıştırır.Kendisini çalıştırmakta olan BAT uzantılı dosyaya adapte edecek yeni program yazar.BAT uzantılı dosya çalıştırıldığında bu dosya içerisinde kendi dosyasını da çalıştırır.
o SYS Dosya Virüsleri
SYS virüsleri oldukça zor yazılan virüslerdendir. SYS dosyalarının başlığını değiştirerek kendilerini kopyalarlar. Resident olarak anti-virüslerden önce yüklenirler. Bu yüzden anti-virüs programı tarafından görülemezler.
Genellikle kurulabilir ünite sürücülerinin işlevlerini engelleyecek şekilde görev yaparlar. Bellek haritasını veren programlarla yakalanması oldukça zordur.
Virüslerin Adlandırılması
Bir virüs adı üç kısımdan oluşur : önek (prefix), ad ve sonek (suffix). Norton Anti-virüs yazılımı virüsleri bu şekilde adlandırmaktadır.
• Önek, virüsün çoğaldığı platformu veya virüs türünü belirtir. DOS virüsleri genelde önek içermezler.
• Ad, virüsün aile adıdır.
• Sonek her zaman olmayabilir. Sonekler aynı ailenin varyantlarını ayırdetmek için kullanılır. Genellikle virüsün boyutunu belirten bir numara ya da bir harftir.
Bu üçü şu biçimde yazılır : Önek.Ad.Sonek.
Örnek olarak WM.Cap.A Cap ailesinin A varyantıdır. WM ise bir Word Makro virüsü olduğunu belirtir. Şu önekler öngörülmüştür :
Önekler
WM Word6.0 and Word95 (Word7.0) altında çoğalan Word Makro virüsleri. Word97 (Word8.0) altında da çoğalabilirler ancak aslen Word97 virüsü değildirler
W97M Word97 Makro virüsleri. Bunlar Word97 için yazılmışlardır ve sadece Word97 altında çoğalırlar.
XM Excel5.0 ve Excel95 için yazılan Excel Makro virüsleri. Bu virüsler Excel97 içinde de çoğalabilirler.
X97M Excel97 için yazılan Excel Makro virüsleri. Bu virüsler Excel5.0 ve Excel95'de de yayılabilirler.
XF Excel Formula virüsleri. Daha yeni Excel belgeleri içine gömülü (embedded) eski Excel4.0 gömülü çalışma sayfalarını kullanırlar.
AM Access95 için yazılan Access Makro virüsleri. A97M: Access97 içinde çoğalabilen Access Makro virüsleri.
W95 Windows95 işletim sistemindeki dosyalara bulaşan Windows95 virüsleri. Windows95 virüsleri çoğunlukla Windows98'i de etkilerler.
Win Windows3.x işletim sistemi altındaki dosyalara bulaşan Windows3.x virüsleri.
W32 Tüm 32-bit Windows platformlarında etkili 32-bit Windows virüsleri.
WNT Windows NT işletim sistemlerinde etkili 32-bit Windows virüsleri
HLLC High Level Language Companion virus. Bunlar genellikle yayılmak için ek bir dosya yaratan DOS virüsleridir.
HLLP High Level Language Parisitic virus. Bunlar genellikle kendilerini bir başka dosyaya iliştiren DOS virüsleridir.
HLLO High Level Language Overwriting virus. Bunlar genellikle host (ev sahibi) dosyaların üzerine kendi bulaşıcı kodlarını yazan DOS virüsleridir.
Trojan/Troj Bunlara virüs değil, Trojan Horse (Truva Atı) denir. Kendilerini faydalı programlarmış gibi gösterirler ancak zarar verici programlardır. Çoğalmazlar.
VBS Visual Basic Script programlama diliyle yazılan virüslerdir.
AOL America Online (Amerika Birleşik Devletlerinde bir internet servis sağlayıcı şirket) ortamına özgü Trojanlardır ve genellikle AOL parola bilgilerini çalmak için yazılmışlardır.
PWSTEAL Parola çalan Trojan programlardır
Java JAVA programlama diliyle yazılan virüsler.
Bir bilgisayar virüsü, belleğe yerleşen, çalıştırılabilen programlara kendini ekleyen, yerleştiği programların yapısını değiştiren ve kendi kendini çoğaltabilen kötü amaçlı programlardır.
Teknik olarak bir bilgisayar programının virüs sayılması için kendi benzerini yapıp bunu başka programlara bulaştırması lazımdır
Virüsler bulaştıkları bilgisayarda genelde hızlı bir şekilde yayılırlar.Tıpkı grip virüsünün insan vücuduna yerleşmesi gibi, bilgisayar virüsleri de kendilerini taşıyıcı bir programa yerleştirir.Böyle virüs bulaşmış bir program bilgisayara transfer edildiğinde,bilgisayardaki diğer programlara da virüs bulaşmaya başlayacaktır.
Bilgisayar virüslerinin popüler bulaşma yollarından birisi "virüs kapmış bilgisayar programları" dır. Bu durumda, virüs kodu bir bilgisayar programına (örneğin, sık kullanılan bir ekran koruyucusuna ya da bir oyun programına) virüsü yazan (ya da yayan) kişi tarafından eklenir. Böylece, virüslü bu programları çalıştıran kullanıcıların bilgisayarları, "potansiyel olarak" virüs kapabilirler. Özellikle internet üzerinde dosya alışverişlerinin ne kadar sık kullanıldığını düşünürsek tehlikenin boyutlarını daha da iyi anlayabiliriz.
Virüslenmiş program çalıştırıldığında virüs kodu da, genellikle, bilgisayarın hafızasına yerleşir ve potansiyel olarak zararlarına başlar. Bazı virüsler, sabit diskin ya da disketlerin "boot sector" denilen ve bilgisayar her açıldığında ilk bakılan yer olan kısmına yerleşir. Bu durumda, bilgisayar her açıldığında "virüslenmiş" olarak açılır. Benzer şekilde, kendini önemli sistem dosyalarının (MSDOS ve Windows için COMMAND.COM gibi) peşine kopyalayan virüsler de vardır.
Virüs bulaşması için önceleri tek yol, floppy disketler idi. Ancak daha sonraları, gelişen bilgisayar ağları ve özellikle internet aracılığıyla da bulaşmaları olanaklı hale geldi. E-posta kullanımının yaygınlaşması ile virüsler artık çok daha hızlı yayılabilmektedirler.
Virüslerin Genel Yapısı
Virüsler baslıca üç bölümden meydana gelmişlerdir.Bunlar sırası ile kopyalama bölümü, gizleyici ve etki bölümüdür.
Kopyalama bölümü ile kendisini çalıştırılabilir dosyalara ilave eder.
Gizleyici bölümü, kendini gizleme görevi yapar. Daha ziyade anti-virüs programlarının gözünden kaçmak ve anti-virüs programını yanıltmak için oluşturulmuştur.
Etki bölümü ile asıl işlem yerine getirilir.Asıl işlemin yaptığı zararlı etkilere; verileri karıştırmak, programın bir kısmını silmek, disk veya disketin çalışmasını engellemek örnek olarak verilebilir.
Virüsler kopyalama bölümü ile bulaşmalarına rağmen bulaştıkları dosyalar farklı olabilir.Virüsler genel olarak EXE, COM, OVL, OBJ, LIB uzantılı dosyalara kendilerini kopyalarlar. Virüs bulaştıktan sonra gizleyici bölümü, program her çalıştığında aktif duruma geçer ve virüs kendini gizlemeye çalışır.Normal çalışma süresince etki bölümü pasif durumdadır. Şartlar uygun olduğunda ortaya çıkar ve etkisini gösterir. Bu bölümün şartlarının uygunlaşması; bir tarih olabilir (Örneğin CIH virüsü) , ülke kodu olabilir, kopyalama işlemi olabilir, herhangi bir verinin girilmesi olabilir. Virüs yazan bir insan için mantık geliştirme bölümü bu bölümdür. Virüs yazmanın ayrıcalığı da bu bölümde gizlidir. Çünkü diğer bölümler hemen hemen aynıdır. Yukarıda uzantıları verilmiş olan dosyaların dışında ayrıca bir program için yazılmış özel virüsler de vardır.
Virüsler Neler Yapabilir?
Bilgisayar içi yapısı tamamen programlamaya dayılıdır. Hangi donananımın nasıl ve ne şekilde çalışacağını programlanma şekli belirler. Virüs de bir program türü olduğuna göre; bilgisayarda programlamaya dayalı her şeyi yapabilirler. Yapabileceklerini sıralayacak olursak;
• Bilginiz dışında bilgisayarınızın denetimini ele geçirir.
• Bilgisayarınızın garip davranmasına neden olur, örneğin, çeşitli sesler çıkarır veya can sıkıcı iletiler görüntüler.
• Word ve Excel belgelerine bulaşan ve zarar veren makrolara gizlenirler. (Bunlara makro virüsleri denir.)
• Dosyalarınızda ciddi zararlara neden olurlar. Virüsler, verileri bozabilir, dosyaları silebilir, hatta sabit diskinizi tamamıyla silebilir.
• Zarar vermek için önceden tanımlanan tetikleme tarihine kadar (örneğin, 13. Cuma) virüsler etkin olmazlar.
• Donanımlara zarar verebilir.
En iyi huylu virüsler (görünürde zarar vermeyen virüsler) bile önemli zararlar verirler : sabit disk ve/veya bellekte yer kaplarlar, CPU zamanını harcarlar; ortaya çıkarılmaları ve temizlenmeleri için önemli miktarda zaman ve para harcanır.
Değişik Türde Zararlı Programlar
Virüslerle ile zaman zaman karşılaştırılan fakat virüslerden farklı özellikler sahip başka zararlı programlar da vardır. Truva Atları (Trojan Horses) ve Solucanlar (Worms) örnek verilebilir.
Truva Atları(Trojan Horses)
Virüslerin bir alt sınıfları, Truva Atı olarak bilinen, virüslerdir. Esasında Truva Atı teknik olarak bir virüs değildir. Truva Atı, ki bu adı tarihte Truva Savaşları olarak bilinen ve Yunanların uyguladıkları ve kazandıkları bir taktikten alır (Truvalılar'ı yenemeyen Yunanlılar tahtadan dev bir at yaparak bunu savaş tazminatı olarak Truvalılar'a verirler ve kentin kuşatmasını kaldırırlar. Truva atı denilen atın içine gizlenmiş Yunanlı askerler gece olduğunda şehrin kapılarını açarlar ve eğlenceye dalmış olan Truvalılar’ı öldürürler. Günümüzde de aynı işi programcılar yapıyor. Tahta at yerine, bilgisayarlarımıza çeşitli programlar yolluyorlar. Bir tür programdır. Bu program aslında kullanışlı ve cazip gelen şeyler vaat eder yada yapıyor izlenimi verir (oyunlar veya kullanışlı kaçak dosyalar arkasında gelebilir). Fakat içinde kötü niyetli şeyler ihtiva eder ve sinsice bunları arka tarafta kullanıcının haberi olmadan uygular (Bilgisayardaki şifreleri çalmak gibi). Truva Atları asla başka programlara bulaşmazlar.
Çoğu Truva Atı, oturumu açma kimliği ve parolasını çalmak ve sonra da onları ödeme yaparken kullanılan hesabı kullanabilecek bir başkasına e-posta ile göndermek üzere tasarlanmıştır.Bazı Truva Atları da müstehcen iletiler görüntüler veya sabit sürücünün içeriğini siler. Örneğin güvenli görünen veya ücretsiz çevrimiçi bağlanma gibi öneriler sunan bir programı yüklerken Truva Atları alınabilir. Program bir kere yüklendiğinde ve çalıştırıldığında, kötü amaçlı kodlar çalışmaya başlar. Truva Atları ile virüsler arasındaki fark, Truva Atlarının kendiliklerinden bulaşmamaları veya yinelenmemeleridir. Yalnızca kasıtlı olarak; e-posta ile ,disket yolu ile veya bir bilgisayara doğrudan yüklenerek yayılabilirler. Bunun anlamı, virüsten farklı olarak, yalnızca bir kere belli Truva Atı tarafından etkilenilir.
Solucanlar(Worms)
Genellikle ağ bağlantılarını kullanarak yayılan, solucan olarak tanımlanan kodlar, yayılmak için her zaman taşıyıcı bir programa ihtiyaç duyarlar.Solucanlar dosyadan dosyaya yayılma yerine tüm sisteme zarar vererek bilgisayardan bilgisayara yayılırlar. Solucanlar, e-postayı kullanarak ağ üzerindeki bir bilgisayardan diğer bilgisayarlara kendilerini kopyalarlar. Solucanlar, çoğalmak için insan müdahalesine gereksinim duymadıklarından bilgisayar virüslerinden daha hızlı yayılabilirler.
Virüs Çeşitleri
• Yazılımlarına Göre Virüsler
Virusleri yazılım yöntemlerine göre iki grubu ayrılırlar. Buna göre yazılımlarına göre virüs çeşitleri :
o Resident Virüsler
Bu virüsler adından da anlaşılacağı gibi yerleşik (resident) olarak her an bellekte kalan ve her an aktif olan virüslerdir.Yazılımı biraz daha karışık ve detaylıdır.Gizleyici bölümü daha fazla emek isteyen virüslerdir.Örneğin virüs bulaşmış bir dosyanın uzunluğu değişmesine rağmen , gizleyici bölüm bu dosyanın orijinal uzunluğunu vererek kullanıcıyı yanıltır.Genellikle INT 20h,21h,41h gibi kesme sinyalleri sırasında dosyalara bulaşırlar.
Bellekte bulunup bulunmadıkları çok çeşitli yöntemlerle ve anti virüs programları ile anlaşılabilir.Tespit edilip edilememesi virüsün kalitesine bağlıdır.Kalitesi iyi olmayan bir virüs bellek hartalarını veren programlarla rahatlıkla tespit edilebilir.
o Nonresident Virüsler
Bu tip virüsler bellekte yerleşik kalmayan virüslerdir.Ancak bulaştıkları program çalıştığında aktif hale geçerler.Aktif hale geçer geçmez kendilerini bir veya daha fazla dosyaya kopyalarlar.dosya tipi virüs ise bulaştıktan sonra kontrolü asıl programa bırakır. Eğer boot virüs ise bulaştıktan sonra kontrolü işletim sistemine bırakır.Resident virüslere oranla daha iyi ve sinsi bir şekilde korunabilirler.Çünkü bulaştığı program çalıştığı esnada ve kısa bir sürede tahribatını yapıp geri çekilirler.Bellek haritaları ile tespit etmek oldukça zordur.
Nonresident olarak yazılmış boot sektör virüsü pek etkili değildir.Çünkü bir disketten diğerine bulaşabilmesi için bellekte sürekli aktif olması gerekir.Bu yüzden bu tip yazılan virüsler genellikle dosya virüsleridir.
• Etkilerine Göre Virüsler
Etkilerine göre virüsleri iki ana başlık altında toplamak mümkündür.Bunlar:
1-Boot Sektör Virüsleri :
A-Master Boot Record
B-Normal Boot Sektör Virüsleri
2-Program (Dosya) Virüsleri:
A-COM dosya Virüsleri
B-EXE dosya Virüsleri
C-Diğer Virüsler
o Boot Sektör Virüsleri
Master Boot Record (MBR/Partition Table) Virüsleri :
Boot sektör virüsleri hard diskin veya floppy disketin ilk sektörlerine bulaşır.Dosya viruslerinden farklılıkları dosya çalıştırılmadan aktif hale geçmeleridir. Bilindiği gibi bilgisayar açıldığı zaman ilk devreye giren ünitesi BIOS’ tur.BIOS harddisk'in boot sektöründen geçerli partition table(reverse Word format) imzasını arar.Eğer bu imzayı bulabilirse bu bloktaki bilgileri RAM belleğe okur.Virüs kendisini bu imza yerine veya okunacak bloğa yazdığı taktirde problem burada ortaya çıkar.BIOS'un okuması sırasında partition imzasını gizleyebilir.BIOS görevini tamamlayamayacağı için , bilgisayar açılmaz.Bloğun okunması sırasında virüs yazıcısının belirlediği bir kesme çağırılabilir.Bu durumda bilgisayarın açılması kesintiye uğrar.Blok okunup, Ram belleğe aktarıldıktan sonra ,virüsün etki kısmı çalışarak bilgisayarı reset edebilir veya bir jump komutu ile okunması gerekli olan bazı dosyaları okutturmadan sistemin yanlış yüklenmesini sağlayabilir.Yşte bu türlü işlemler virüs yazmanın mantığını oluşturur.
Normal Boot Sektör Virüsleri :
Floppy disketlerinde partition table bulunmaz.Aslında harddiskteki partition table'de boot sektördür.Fakat birden fazla işletim sistemi yükleyebilmek için bölümlendirilmişlerdir.Yukarıda hard disk için açıklanan imzalara benzer.Ymzalar disketin sıfırıncı sektöründe de vardır.Virüs bilgisayarın hard diskten açılması sırasında yaptığı işlemleri floppy disketten açılma yapıldığında da yapar.
Yster hard diskten , Yster floppy disketten boot yapılsın daha işletim sistemi yüklenmeden virüs yüklenmiş olur.Yşletim sisteminden önce yüklenmesinden dolayı işletim sistemini istediği gibi yönetebilir.Yani kaleyi içten kuşatmıştır ve savunmayı yenmiştir.
Virüs kendisini partition sektöre veya boot sektöre yazabileceği gibi FAT'a (dosya yerleşim tablosuna)veya partition bölümleri arasına da yazabilir.Buradaki yapacağı işlemlere dosya yerleşim tablosunu bozmak aranılan kütüğü gizlemek gibi örnekler verilebilir.
Her iki çeşit virüsünde çalışma algoritmasının aşağıdaki gibi olduğu söylenebilir.
1-Belirtilen yere bulaşmak için kendini gizle
2-Orijinal boot/MBR sektörünü kontrol altında tut
3-Kendi virüs imzanı ara ve daha önce bulaşıp bulaşmadığını denetle
4-Bulaşılmış ise hareketsiz kal ve boot sektörü terk et
5-Bulaşılmamış ise Kendi kodlarını belirtilen şartlarda boot sektöre yaz
6-Duruma göre hareket et.Gerekiyorsa Resident olarak yerini al
7-Birinci basamaktan itibaren görevine devam et
o Program (Dosya) Virüsleri
Program virüsleri çalıştırılabilir dosyalara bulaşabilen virüslerdir.Programların tanımlanan yerlerine kendilerini kaydederek onlarla beraber çalışırlar.Bu yüzden programın çalıştığı her bilgisayara kolayca bulaşırlar.
Program virüslerinin DOS'un kullanılma özelliklerine göre birkaç tipi vardır.Hangi tip olursa olsun çalışma algoritması hemen hemen aynıdır.Değişik olan kısımları ; gizleyici ve bomba bölümleridir.Kopyalama bölümleri genellikle aynı mantığa dayanır.
o COM Dosya Virüsleri :
Daha önceki bölümlerde açıklandığı gibi DOS ortamından uzantıları COM ,EXE ve BAT olan dosyalar doğrudan çalıştırılabilirler.Bu tur virüslerin yazılımında temel mantık budur. COM uzantılı dosyalar 64 KB 'lık bir segment üzerindedir.COM uzantılı bir program çalıştırıldığı zaman ,DOS tüm bellek alnını bu dosyanın kontrolüne birakır.COM dosya virüsü en kolay ve en hızla yayılan bir virüstür.Virüsün kopyalama kısmı , virüslü bir dosyadan diğerine kopyalama yapar.Kendisine zarar gelmemesi için ,com dosyanın başlangıcını saklar ve kendisinin bir kısmını buraya , bir kısmını da dosyanın sonuna yazar.Virüs yazarının tanımladığı işlemleri ise program çalıştığı sürece yerine getirir.
o EXE Dosya Virüsleri :
EXE dosya virüsleri COM dosya virüslerinden biraz daha farklıdır.EXE dosya virüsü COM dosya virüsü gibi kendisini dosyanın başlangıcına yazmaz.EXE programın başlığında ufak tefek değişiklikler yapmak onun için yeterlidir.Kendisini büyük oranla programın en sonuna yazar.EXE bir dosyaya virüsün kendisini yazması COM dosyaya oranla daha zordur.Genelde minimum bellek ihtiyacını yükselterek etkilerini gösterirler.
• Platformlara göre virüsler
o PC Virüsleri
PC virüsleri kişisel bilgisayarlar(PC’ler) ve DOS ortamı için yazılmış virüslerdir.Bu tür virüsler daha çok DOS ortamında çalışmaları için yapılmalarına rağmen Windows 95 Windows 98,Windows ME,Windows NT ve OS/2 işletim sistemlerinde de çalışabilmektedirler.
o Macintosh Virüsleri
Macintosh virüsleri PC virüsleri kadar problemler çıkarmazlar. Macintosh işletim sisteminde çalışabilecek virüs sayısı gerçekten çok azdır.Bu tür virüsler daha çok okullardan temin edilmektedir. Microsoft ürünü olan işletim sistemlerinin(DOS, Windows...) yaygınlığı göz önüne alındığında,Macintosh işletim sistemi için yazılmış virüslerin azlığı doğaldır.
• Diğer Platformlar
Virüsler hemen hemen her tür bilgisayarda bulunabilirler.Örneğin;gelişmiş hesap makinaları,eskiden var olan Commodore 64 ve Unix bilgisayarları gibi sistemler.
• Diğer Virüsler
Yukarıda bahsedilen virüslerin dışında bilinen BAT ve SYS dosya virüslerde vardır.Bunlara da kısaca değinelim.
o BAT Dosya Virüsleri
DOS ortamından çalıştırılan 3. dosya ,BAT uzantılı dosyalardır.Bu dosyalar binary komut düzeninde olmayıp ASCII komut düzenindedir.
Önceki konulardan hatırlanacağı gibi uzantısı BAT olan dosyalar toplu işlem dosyalarıdır ve kapsamlarında birçok toplu işlem komutlarını içerirler.BAT dosya virüsleri toplu işlem dosyası içerisinde kullanılan emirleri birer COM uzantılı dosyaya çevirirler.Bu durumda sanki bir COM uzantılı dosya çağrılmış gibi çalıştırılmak istenir.Örneğin “CALL” emri karşısında CPU ne yapacağına karar veremediği için sistem ya kilitlenir veya bir interrupt ile kesintiye uğrar.Kullanıcıyı hayret içinde bırakan ilginç virüs tipleridir.
Bazı BAT dosya virüsleri DIR komutunun işlevlerinden yararlanır.DIR komutu çalıştırıldığında , değişik isimli yeni bir dosya oluştururlar.Oluşturulan bu dosya ile debug programını çalıştırır.Kendisini çalıştırmakta olan BAT uzantılı dosyaya adapte edecek yeni program yazar.BAT uzantılı dosya çalıştırıldığında bu dosya içerisinde kendi dosyasını da çalıştırır.
o SYS Dosya Virüsleri
SYS virüsleri oldukça zor yazılan virüslerdendir. SYS dosyalarının başlığını değiştirerek kendilerini kopyalarlar. Resident olarak anti-virüslerden önce yüklenirler. Bu yüzden anti-virüs programı tarafından görülemezler.
Genellikle kurulabilir ünite sürücülerinin işlevlerini engelleyecek şekilde görev yaparlar. Bellek haritasını veren programlarla yakalanması oldukça zordur.
Virüslerin Adlandırılması
Bir virüs adı üç kısımdan oluşur : önek (prefix), ad ve sonek (suffix). Norton Anti-virüs yazılımı virüsleri bu şekilde adlandırmaktadır.
• Önek, virüsün çoğaldığı platformu veya virüs türünü belirtir. DOS virüsleri genelde önek içermezler.
• Ad, virüsün aile adıdır.
• Sonek her zaman olmayabilir. Sonekler aynı ailenin varyantlarını ayırdetmek için kullanılır. Genellikle virüsün boyutunu belirten bir numara ya da bir harftir.
Bu üçü şu biçimde yazılır : Önek.Ad.Sonek.
Örnek olarak WM.Cap.A Cap ailesinin A varyantıdır. WM ise bir Word Makro virüsü olduğunu belirtir. Şu önekler öngörülmüştür :
Önekler
WM Word6.0 and Word95 (Word7.0) altında çoğalan Word Makro virüsleri. Word97 (Word8.0) altında da çoğalabilirler ancak aslen Word97 virüsü değildirler
W97M Word97 Makro virüsleri. Bunlar Word97 için yazılmışlardır ve sadece Word97 altında çoğalırlar.
XM Excel5.0 ve Excel95 için yazılan Excel Makro virüsleri. Bu virüsler Excel97 içinde de çoğalabilirler.
X97M Excel97 için yazılan Excel Makro virüsleri. Bu virüsler Excel5.0 ve Excel95'de de yayılabilirler.
XF Excel Formula virüsleri. Daha yeni Excel belgeleri içine gömülü (embedded) eski Excel4.0 gömülü çalışma sayfalarını kullanırlar.
AM Access95 için yazılan Access Makro virüsleri. A97M: Access97 içinde çoğalabilen Access Makro virüsleri.
W95 Windows95 işletim sistemindeki dosyalara bulaşan Windows95 virüsleri. Windows95 virüsleri çoğunlukla Windows98'i de etkilerler.
Win Windows3.x işletim sistemi altındaki dosyalara bulaşan Windows3.x virüsleri.
W32 Tüm 32-bit Windows platformlarında etkili 32-bit Windows virüsleri.
WNT Windows NT işletim sistemlerinde etkili 32-bit Windows virüsleri
HLLC High Level Language Companion virus. Bunlar genellikle yayılmak için ek bir dosya yaratan DOS virüsleridir.
HLLP High Level Language Parisitic virus. Bunlar genellikle kendilerini bir başka dosyaya iliştiren DOS virüsleridir.
HLLO High Level Language Overwriting virus. Bunlar genellikle host (ev sahibi) dosyaların üzerine kendi bulaşıcı kodlarını yazan DOS virüsleridir.
Trojan/Troj Bunlara virüs değil, Trojan Horse (Truva Atı) denir. Kendilerini faydalı programlarmış gibi gösterirler ancak zarar verici programlardır. Çoğalmazlar.
VBS Visual Basic Script programlama diliyle yazılan virüslerdir.
AOL America Online (Amerika Birleşik Devletlerinde bir internet servis sağlayıcı şirket) ortamına özgü Trojanlardır ve genellikle AOL parola bilgilerini çalmak için yazılmışlardır.
PWSTEAL Parola çalan Trojan programlardır
Java JAVA programlama diliyle yazılan virüsler.