Bilgisayar virüsü, bilgisayara giren ve sabit sürücüde depolanan bilgi kaybına neden olabilecek genel olarak yıkıcı bir bilgisayar programıdır.
Bilgisayarda Virüs Nedir, Çeşitleri Nelerdir ve Nasıl Analiz Edilirler?
Bilgisayar virüsü, kendini yeniden üreten ve bilgisayarın donanımına veya işletim sistemine müdahale eden bir bilgisayar programıdır.
Onları tanıyan ve virüsü bilgisayardan bağışıklayabilen veya kaldırabilen antivirüs programları vardır.
Virüsler, çoğalmak ve tespit edilmekten kaçınmak için tasarlanmıştır. Diğer bilgisayar programları gibi, çalışabilmesi için de bir virüs çalıştırılmalıdır. Yani, bilgisayarın virüsü bilgisayarın belleğinden yüklemesi ve talimatlarını izlemesi gerekir.
Bu talimatlar aktif virüs yüklemesi olarak bilinir. Etkin yükleme, veri dosyalarını bozabilir veya değiştirebilir, belirli bir mesaj verebilir veya işletim sisteminde arızalara neden olabilir.
Virüslere benzer başka zararlı bilgisayar programları (kötü amaçlı yazılımlar) vardır, ancak bunlar çoğaltma ve algılamadan kaçınma gereksinimlerini karşılamaz.
Bu programlar üç kategoriye ayrılır:
- Trojan Horses/Truva Atları
- Logic Bombs/Mantık Bombaları
- Worms/Solucanlar
Bir Truva atı, örneğin bir oyun gibi ilginç ve zararsız bir şey gibi görünür, ancak çalıştırıldığında zararlı etkileri olabilir.
Bir mantık pompası, belirli bir tarih veya saate ulaşıldığında veya bir harf birleşimi girildiğinde olduğu gibi belirli bir koşul gerçekleştiğinde etkin yükünü serbest bırakır.
Bir solucan çoğalır, ancak bilgisayar belleğini meşgul eder ve işlemlerini yavaşlatabilir.
Virüs Tarihi
1949’da Macar doğumlu Amerikalı matematikçi John von Neumann, Princeton, New Jersey’deki İleri Araştırmalar Enstitüsü’nde, bir bilgisayar programının çoğaltılmasının teorik olasılığını artırdı.
Bu teori 1950’lerde Bell Laboratories’de deneysel olarak test edildi, burada Core Wars/Çekirdek Savaşları adlı bir oyun geliştirildi, burada oyuncular rakibin sistemine saldıran ve silen ve bu sisteme yayılmaya çalışan küçük bilgisayar programları oluşturdu.
1983 yılında, daha sonra bir üniversite öğrencisi olan Amerikalı elektrik mühendisi Fred Cohen, kendini üreten bir bilgisayar programını tanımlamak için virüs terimini icat etti.
İlk Truva Atları, EGABTR adlı bir grafik geliştirme programı ve NUKE-LA adlı bir oyun olarak gizlenmiş 1985’te ortaya çıktı. Kısa süre sonra, giderek daha karmaşık hale gelen sayısız virüs oluşturuldu.
Brain adlı virüs 1986’da ortaya çıktı ve 1987’de dünyaya yayıldı.
1988’de ilk önyükleme sektörü virüsü olan Stone ve ABD’nin bilgisayar ağlarında bir gecede çoğalabilen bir İnternet solucanı gibi iki yeni virüs ortaya çıktı.
İlk hızlı bulaşıcı olan Dark Avenger virüsü, 1989’da ortaya çıktı ve bunu 1990’da ilk polimorfik virüs izledi. 1995 yılında ilk Makro Dili virüsü WinWord Concept oluşturuldu.
Virüsler Nasıl Çoğalır veya Yayılır?
Bilgisayar virüsleri, programları çalıştıran talimatlar veya yürütülebilir kod bir bilgisayardan diğerine geçtiğinde yayılır.
Bir virüs etkinleştirildikten sonra, kendisini disketlere, sabit sürücüye, yasal bilgisayar programlarına veya bilgisayar ağlarına kopyalayarak çoğaltabilir.
Bu enfeksiyonlar PC’lerde büyük bilgisayarların profesyonel sistemlerinden çok daha sık görülür, çünkü bilgisayarların programları esas olarak disketler veya düzensiz bilgisayar ağları ile değiştirilir.
Virüsler aktif yüklerini sadece çalıştırıldıklarında çalışır, çoğaltır ve serbest bırakırlar.
Dolayısıyla, bir bilgisayar yalnızca virüslü bir bilgisayar ağına bağlıysa veya virüslü bir programı yüklerse, mutlaka virüs bulaşmaz.
Tipik olarak, bir kullanıcı bilerek potansiyel olarak zararlı bilgisayar kodu çalıştırmaz; ancak virüsler sık sık bilgisayarın işletim sistemini veya bilgisayar kullanıcısını viral programı çalıştırmak için kandırır.
Bazı virüsler yasal programlara uyma özelliğine sahiptir. Bu üyelik, meşru program oluşturulduğunda, açıldığında veya değiştirildiğinde gerçekleşebilir.
Böyle bir program çalıştırıldığında, virüs için de aynı şey geçerlidir. Virüsler, bilgisayar başlatıldığında işletim sistemini yükleyen ve çalıştıran sabit veya esnek diskin bölümlerinde de bulunabilir, bu nedenle bu virüsler otomatik olarak çalışır.
Bilgisayar ağlarında, yazılımın içinde kullanıcının sisteme bağlanmasına izin veren bazı virüsler gizlenir.
Virüsler Nasıl Bulaşır?
Virüsler, programlandıklarında bir çok çeşitli yerlere kolayca yerleştirilebilirler. Örneğin, ana bellek, makrolu belge, önyükleme alanı, dosyalar, websiteleri.
Ana Bellek
Bu durumda, tehdit otomatik olarak ana belleğe (RAM) kalıcı olarak yerleştirilir, bu da EXE veya COM uzantılı bir programın bulaşmasını bekler.
Makrolu Belge
Makro, Word, Excel, PowerPoint ofis araçları gibi başka bir programın gerçekleştirebileceği küçük bir program veya altyordam olarak kabul edilebilir.
Bu alt rutinlerde, bir çeşit ofis belgesinde makro yürütüldüğünde program olarak konfigüre edilen bir virüsün rutinleri yerleştirilebilir.
Önyükleme
Sabit diskler ve disketler kendi disklerinde önyükleme adı verilen ve diskin özellikleri ve içeriği hakkında bilgi bulabileceğiniz bir sektöre sahiptir. Bu sektörde, bilgisayarı açmaya çalışırken virüsün programı kirleten aynı sektörde çalışan bir tehdit barındırılabilir.
Dosya
E-posta ekleri virüsleri yaymanın etkili yollarından biridir ve kod şüphelenilmeyen herhangi bir ad ve uzantıya sahip bir ekli dosya olarak gönderilebilir.
Web Siteleri
Belki de duyarlı ölçekte, hipermetin dosyaları oldukları için son yerleri işgal eder, sorun, bu ve sayfaların diğer bölümleri Java Uygulamaları ve ActiveX denetimleri olarak adlandırılan programlar içerdiğinden, formlar içerenler gibi etkileşimli nitelikteki sayfalarda olabilir.
Bununla birlikte, sınıflandırılması gereken farklı ve çok sayıda zararlı tehdit vardır.
Aşağıda en genel sınıflandırmalardan biri, bu da daha karmaşık olan başkalarının olduğu anlamına gelir.
Türleri Nelerdir?
Bilgisayar virüsleri, parasites, initial boot sector, multi-party, companion, link ve datafile olarak altı farklı kategoriye ayrılabilir.
Parasites/Parazitler
Paraziter virüsler yürütülebilir dosyalara veya bilgisayar programlarına bulaşır.
Ana bilgisayar programının içeriğini değiştirmezler, ancak ana bilgisayara önce kodu yürütülecek şekilde yapışırlar.
Bu virüsler doğrudan etkili veya yerleşik olabilir. Doğrudan etkili bir tehdit, her çalıştığında enfekte etmek için bir veya daha fazla program seçer.
Yerleşik bir tehdit bilgisayarın belleğinde gizlenir ve bu program çalıştırıldığında belirli bir programa bulaşır.
Initial Boot Sector/İlk Önyükleme Sektörü
İlk önyükleme sektöründeki virüsler, ilk önyükleme sektörü olarak bilinen sabit veya esnek diskin ilk bölümünde bulunur ve diskin içeriği hakkında bilgi depolayan programların veya bilgisayarı başlatan programların yerini alır. Bunlar genellikle disketlerin fiziksel değişimi ile yayılır.
Multi-Party/Çok Partili
Çok partili virüsler parazitik ve ilk önyükleme sektörü virüslerinin yeteneklerini birleştirir ve hem dosyalara hem de ilk önyükleme kesimlerine bulaşabilir.
Companion/Eş
Eşlik eden virüsler dosyaları değiştirmez, ancak meşru bir programla aynı ada sahip yeni bir program oluşturur ve işletim sistemini çalıştırmaya kandırır.
Link/Bağlantı
Bağlantı virüsleri, işletim sisteminin programları bulma biçimini değiştirerek, önce virüsü ve ardından istediğiniz programı çalıştırmanızı sağlar.
Bir bağlantı tehdidi, bir bilgisayardaki tüm bir dizine bulaşabilir ve bu dizinde erişilen tüm yürütülebilir programlar zararlı yazılımı tetikler.
Diğer tehditler, veri dosyalarını açabilen, işleyen ve kapatabilen güçlü makro dilleri içeren programlara bulaşır.
Datafile/Veri Dosyası
Veri dosyası virüsü adı verilen bu tehditler, makro dillerde yazılır ve yasal program açıldığında otomatik olarak çalışır. Makineden ve işletim sisteminden bağımsızdırlar.
Temizleme Analiz Algoritmaları
Sezgisel tarama, bir koruma çözümünün, örneği belirli bir imza girmeden kötü amaçlı olarak sınıflandırma yeteneği olarak genellikle sihir olarak görülür.
Yazılımı, potansiyel olarak kötü niyetli davranışlardan şüpheli olarak işaretlemenize olanak tanıyan bir “sihirli” tekniktir.
Virüsten koruma motorumuz çalışıyorsa ve şüpheli davranış tespit ederse, bir uyarı durumuna geçecek ve örneğin potansiyel olarak tehlikeli olduğunu bize bildirecektir.
Antivirüs, kötü niyetli doğadan tamamen emin olmayacaktır, çünkü davranışsal endikasyonlara dayanarak şüpheli olarak işaretlenmiştir ve %100 tesadüf olduğu bilinen bir durumu temel almamıştır.
Sistem, gerçek zamanlı olarak veya en azından hemen amacı için olumlu yenilikler yapar. Davranış analizi, tam bir bilim dalını doğurur.
Sezgisel matematik karmaşıktır, çünkü nihayetinde net ve gerçekleri değil davranışları modellemeye çalışırlar.
Zamanın büyük çoğunluğu, bu tür bir yaklaşımın sonuçları açıklanamaz. Bu akıllı tanıma teknikleri, matematiksel olarak çok değişkenli keşif algoritmaları olarak bilinen tekniklerdir. Algoritma, bir davranışın matematiksel modellenmesi, yani bir başlangıcı ve bir sonu vardır. Keşif, daha sonra karar vermeyi sağlayan gözlem ve analiz yöntemidir ve çok değişkenli analiz ise belirli bir olayın birden çok eşzamanlı faktöre bağımlılığını oluşturan matematiksel karaktertir.
Özetle, sezgisel algılama farklı algoritmalarla modellenmesi gereken çok değişkenli keşfin matematiksel bir problemidir.
Virüslerin İmza Algoritması
Birçok kötü amaçlı kod yeni sürümler oluşturmak için yazarları tarafından sürekli olarak değiştirilir. Genellikle, bu varyantlar bir tehdit ailesi olarak adlandırılan orijinallerle benzerlikler içerir.
Antivirüs, zararlı dosyanın kodundaki benzerlikler sayesinde, aynı ailenin tüm üyelerini tek bir imza veya genel aşı yoluyla tanıyabilir.
Bu, zaten bilinen bir zararlı yazılımın yeni bir sürümü göründüğünde, bu tekniği uygulayan antivirüs programlarının güncelleme gerektirmeden onu algılayabilmesini sağlar.
Kod Tanıma Algoritması
Bir program yürütülebilir bir dosyaya dönüştürmek için derlendiğinde, sonuçta ortaya çıkan kodlama, belirli eylemleri gerçekleştirmek için sisteme verilecek talimatları temsil eder.
Bazı antivirüslerin sezgisel uygulamaları, yürütülebilir bir dosyanın kötü amaçlı kod haline gelip gelemeyeceğini belirlemek için kötü amaçlı kod tarafından yaygın olarak uygulanan talimatları tanımak için teknikler kullanır.
Montaj Dili Algoritması
Montaj dili programının kaynak kodunu elde etmek için tüm yürütülebilir dosyalar incelenebilir.
Bazı virüsten koruma ürünlerinin buluşsal yöntemleri, normalde programcılar tarafından kullanılan geliştirme tekniklerini tanımak ve böylece güncellemeye gerek kalmadan yeni kötü amaçlı kodu tanımak için şüpheli programların kaynak kodunu analiz edebilir.
Dosya Gizleme Algoritması
Kötü amaçlı yazılım kodu geliştiricileri, koruma taramasının gözünde virüsün görünümünü değiştirmek için genellikle dosya sarmalayıcıları kullanır. Bunun için UPX gibi paketler yaygın olarak kullanılmaktadır.
Antivirüs programları eski, yeniden paketlenmiş kötü amaçlı kod tarafından aldanmaktan kaçınmak için, sezgisel tekniklerine paketleme yöntemlerini dahil eder, böylece paketin değil programın gerçek kodunu analiz edebilirler.
Değerlendirme Algoritması
Sezgisel tarama, geçmişe dönük değerlendirmeler yapılması gerektiği için antivirüs ürünlerini test etmek için çok zor bir özelliktir.
Bir antivirüsün sezgisel veya proaktif özelliklerinin işleyişini doğru bir şekilde analiz etmek için, ürün imzalarını bir süre güncellemeyi durdurmaktır.
Bu süre zarfında, yeni kötü amaçlı kod örnekleri toplanır, böylece yeterli kez toplandığında, virüsten koruma ürünlerinin bunları tanıtıp tanımadığı analiz edilir.
Bu örnekleri algılayacak şekilde güncellenmediklerinden, antivirüs ancak virüslü olup olmadıklarını sezgisel yetenekleriyle tanıyabilir.
Bu değerlendirmeler sayesinde virüsten koruma ürünlerinin yeni veya bilinmeyen virüslere karşı performansını ayrıntılı olarak bilmek mümkündür.
En İyi ve En Uygun Sezgisel Algoritma
Tanımı gereği sezgisel algoritma, bir olayın kesinliğini elde edemeden gerçekliği olabildiğince yakınlaştırmayı amaçlayan algoritmadır.
Bu nedenle, en iyi sezgisel algoritmanın belirli bir etkinlik için incelenen olayların gerçek davranışına en yakın algoritma olacağı sonucuna varmak uygun görünmektedir.
Temel optimizasyon iyileştirme faktörleri, hesaplamalı kaynaklara minimum yatırım, yanlış pozitiflerin ve gerçek başarısızlıkların en aza indirilmesi ve modelin yüksek değişkenlik senaryolarına genişletilebilirliğidir.
Sezgisel bir antivirüs çözümünü vasattan iyiye dönüştüren budur. Gerçekliğe yaklaşma yeteneği ve tehdit faktörlerinin çok değişkenli olmasıdır.
Tüm örnekleri şüpheli olarak sınıflandıran bir sezgisel antivirüs motoru sezgisel bir motordur, ancak bu optimum değildir.
Virüslerin Bulaşma Olasığının Minimuma İndirilmesi
Kullanıcılar, gerekirse bilgisayar sistemini kurtarmak için düzenli olarak orijinal meşru yazılım ve veri dosyalarının yedek kopyalarını oluşturarak viral enfeksiyona hazırlanabilirler.
İşletim sistemi yazılımı diskete kopyalanıp yazmaya karşı korumalı olabilir, böylece hiçbir zararlı dosya diskin üzerine yazılamaz.
Viral enfeksiyonlar, programları meşru kaynaklardan elde ederek, yeni programları test etmek için karantinaya alınmış bir bilgisayar kullanarak ve mümkün olduğunca yazarak disketleri koruyarak önlenebilir.
Tehdit Tespiti
Bir virüsün varlığını tespit etmek için çeşitli antivirüs programları kullanılabilir.
Antivirüs programları, bir virüsün bilgisayar kodunun özelliklerini tanıyabilir ve bilgisayarın dosyalarında bu özellikleri arayabilir.
Yeni virüsler ortaya çıktıklarında taranmaları gerektiğinden, tarama programlarının etkili olması için düzenli olarak güncellenmesi gerekir.
Bazı antivirüs programları viral programların daha az güvenilir olma eğiliminin tipik özelliklerini arar.
Tüm virüsleri algılayan tek program, çalıştırılabilir programların çalıştırılmadan önceki ve sonraki durumlarını karşılaştırmak için matematiksel hesaplamaları kullanan sağlama toplamı kontrolleridir.
Sağlama toplamı değişmezse, sistem bulaşmaz. Ancak, sağlama toplamı programları, bulaşmayı ancak gerçekleştikten sonra algılayabilir.
Bütünlük programları, bilgisayar dosyalarının üzerine yazma veya bilgisayarın sabit sürücüsünü biçimlendirme gibi potansiyel olarak zararlı etkinlikleri algılar.
Dürüstlük kabukları programları, program yürütme sırasının geçmesi gereken katmanlar oluşturur. Bütünlük kabuğu içinde otomatik olarak bir sağlama toplamı gerçekleştirilir ve zararlı programlar algılanırsa, çalıştırılmasına izin verilmez.
Kurtarma Aşamaları
Viral bir enfeksiyon tespit edildiğinde, ağdaki bilgisayarları hemen izole ederek, dosya paylaşımını durdurarak ve yalnızca yazmaya karşı korumalı diskler kullanarak bulunabilir.
Bir bilgisayar sisteminin viral bir enfeksiyondan kurtulması için önce virüsün çıkarılması gerekir. Bazı virüsten koruma programları algılanan tehditleri kaldırmaya çalışır, ancak bazen sonuçlar tatmin edici değildir.
Etkilenen bilgisayarın bağlantısını keserek, yeniden yazmaya karşı korumalı bir disketten önyükleme yaparak, etkilenen dosyaları silerek ve meşru dosyaların yedek kopyalarıyla değiştirerek ve ilk önyükleme sektöründe olabilecek tehditleri silerek daha güvenilir sonuçlar elde edilir.
Yayma Stratejileri
Yazarların, antivirüs programlarından kaçmak ve yaratımlarını daha etkili bir şekilde yaymak için çeşitli stratejileri vardır.
Polimorfik virüsler, izleme programları ile tespit edilmekten kaçınmak için kopyalarında değişiklik yaparlar.
Gizli virüsler, bulunduğu yeri kontrol ettiğinde, bir sistemin sağlayacağı sonuçları simüle ederek işletim sisteminden gizlenir.
Hızlı bulaşıcı olarak adlandırılan virüsler sadece çalışan programları değil, sadece açılan programları da enfekte eder.
Bu, bu tür virüslerden etkilenen bir bilgisayarda antiviral tarama programlarının yürütülmesinin, bilgisayardaki tüm programların bulaşmasına neden olabileceği anlamına gelir.
Yavaş olarak adlandırılan virüsler dosyaları yalnızca değiştirildiklerinde bulaştırırlar, böylece sağlama toplamı programları toplamdaki değişiklikleri meşru olarak yorumlar.
Çalışan on programda bir programa bulaşabilen bulaştırma stratejisi ise virüsü tespit etmeyi zorlaştırır ve bu da onu en taktiksel adımlardan biri yapar.
Yetkisiz Erişim
Bilgisayar güvenliği tekniklerinin çözmesi gereken en büyük sorun, verilere yetkisiz erişimdir.
- Güvenli bir sistemde, kullanıcı herhangi bir işlem yapmadan önce kendini bir şifre ile tanımlamalıdır.
- Erişim kodları, yetkili kullanıcıların bir bilgisayara erişmesine izin veren gizli karakter dizileridir.
- Erişim kodlarının etkili olduğunu tahmin etmek zor olmalıdır.
- Etkili tuşlar genellikle gerçek bir kelimeye karşılık gelmeyen karakter ve sembollerin bir karışımını içerir.
- Sahtekarlar için zorlaştırmak amacıyla, bilgisayar sistemleri genellikle anahtarı girme girişimi sayısını sınırlar.
İlgili Yazılar
♦ Microsoft Antivirüs
♦ İşletim Sistemi Tanımı
♦ Kişisel ve İş Bilgisayarları
♦ Internet Explorer Tarayıcı
♦ HTML Yapısı