Virüslere Karşı Güvenlik


Virüslere Karşı Güvenlik

Bilgisayar ağlarının giderek büyümesi ve birbirleriyle entegre çalışır duruma gelmesi ile birlikte ortaya pek çok güvenlik riski çıkmış durumda. Bu risklere karşı güvenlik politikalarının oluşturulması için yapılması gereken ilk şey risk analizi. Bilgisayar ağını tehdit etmesi muhtemel tüm riskler bu analiz sırasında belirlenir, gerçekleşme olasılığının yüksekliği baz alınarak sıralanır ve gerçekleşmesi muhtemel bu risklerin azaltılması için gerekli güvenlik politikaları uygulanır. Yapılacak bir risk analizi sırasında ortaya çıkacak risklerin içerisinde virüs tehlikesi hiç şüphesiz gerçekleşme olasılığı en yüksek olanı. Dünya üzerinde şu an 50 binin üzerinde virüs olduğu ve her ay 100 civarında yeni virüsün çıktığını düşünürsek bunun ne kadar önemli olduğu anlaşılır.

Virüs Nedir?
Peki, nedir virüsler? Tanımı için tıbbi bir terim olan virüsün kullanılmış olması ve görsel olarak ifade edilmeye çalışıldığında mikroskobik canlıları andıran şekillerle sembolize edilmiş olmaları nedeniyle ilk çıktıklarında bir çok bilgisayar kullanıcısı virüsleri kafalarında canlı mikro organizmalar olarak canlandırdılar. Ancak artık herkes biliyor ki virüsler aslında küçük program kodları. Bu kodlar genelde kötü niyet gözetilerek yazılmış olduğundan virüsler malicious software ya da malware olarak da adlandırılmakta.

Teknik tanımına bakıldığında virüs kendisini istem dışı olarak bir sisteme ekleyen, bağımsız olarak çalışamayan ve aktifleşmesi için bulaştığı program dosyalarının çalıştırılmasını bekleyen küçük bir program kodudur. Başlangıçta bir sistemden bir başka sisteme kendi başına bulaşması mümkün değildi yani bir sistemden diğerine bulaşabilmesi için virüsün kendini eklediği programın (*.exe, *.com ve boot sector) diğer sistemde de kullanıcı tarafından çalıştırılması gerekmekteydi.

Bilgisayar dünyasındaki gelişmelerden tabii ki virüs sektörü de nasibini aldı ve demin söylemiş olduğum virüs tanımındaki eksiklikler virüs yazan kişiler tarafından giderildi. Worm olarak adlandırılan bu yeni teknikte ise tanım şöyle değişiyor; Worm, bağımsız olarak çalışabilen ve çalışan bir kopyasını başka sistemlere otomatik olarak gönderen bir program kodu ya da programdır.

Anti-virüs yazılımcıları bu iki türü birbirinden şöyle ayırıyorlar. Worm bir sistemden diğerlerine bulaşan, virüs ise bulaştığı sistem dışına kendiliğinden çıkamayan bir koddur.

Bu iki türe ek olarak bir de Trojan Horse vardır. Trojan Horse adından anlaşıldığı üzere truva atı mantığıyla çalışır. Kullanıcının dosyayı çalıştırmasını sağlamak amacıyla dosyalara cazip isimler verilir (dans eden bebek.exe, pokemon.exe vb). Kullanıcı dosya adının cazibesine kapılıp dosyayı açtığında ön planda kullanıcının beklediği türden birşeyler çalışırken arka planda kodun sisteme zarar veren tarafı çalışır. Kullanıcı neye uğradığını bile anlamadan bilgisayarını bir süre sonra çalışamaz durumda bulur. Trojan Horse’a son örneklerden biri Pokemon.Exe’dir. Kullanıcı e-posta ile kendisine gelen bu dosyayı çalıştırdığında bir pokemon kahramanı olan Pikachu’yu kendisine selam verirken görür. Fakat aynı Pikachu arka planda kendisini kullanıcının adres listesindeki herkese göndermekte ve aynı zamanda PC’nin Windows dizinindeki tüm dosyaları silmektedir.

e-posta sistemlerinin yaygınlaşmasıyla ortaya çıkan bir diğer tür ise Hoax. Asılsız virüs tehlike anonsları, kanser hastası çocuğa yardım mesajları, çeşitli kuruluş ya da ürünleri protesto eden ve mesajın herkese iletilmesinin istendiği bu türden mesajlar Hoax olarak adlandırılıyor. Internet üzerinde trafik oluşturmaya yönelik olan bu mesajlar genellikle mesajın gönderildiği kişilerin adreslerini toplamak amacıyla kullanılıyor ve bu para karşılığında başkalarına satılıyor. Adını hiç duymadığınız bir firmadan size reklam mesajları geliyorsa Hoax sayesinde sizin de e-posta adresiniz keşfedildi ve satıldı demektir.

Virüs türevleri şimdilik bu şekilde sıralanabilir. Fakat bilgisayar sistemlerindeki gelişmelere bağlı olarak farklı türevlerin çıkmayacağını kimse iddia edemez.

Virüs Türleri
Türevlerin dışında virüslerin bir de türleri vardır. Ortaya çıkan ilk bilgisayar virüsleri Boot Sector virüsleridir. PC’lerin yaygınlaşmaya başladığı ilk yıllarda boot işlemi genellikle disket ile yapılıyordu. İlk boot sector virüsü olan Brain virüsünü geliştiren virüs yazılımcıları, disket üzerinde boot sector olarak adlandırılan alanda bulunan çalıştırılabilir dosyaları kendi dosyaları ile değiştirebileceklerinin farkına vardılar. Bu yöntem ile boot alanı değiştirilmiş disketler ile sistemlerini açan kullanıcılar her boot sırasında virüsü farkına bile varmadan belleğe yüklemiş oldular ve sisteme takılan her diskete virüs bulaştı. Virüsün yayılması sağlandı. Brain virüsü bulaştığı sistemlerde Pakistanlı bir bilgisayar danışmanlık firmasının reklamını yapıyordu. Brain virüs geliştiricilerin ufkunu geliştirmesi bakımından bir kilometre taşı olarak değerlendirilebilir. Virüs geliştiriciler virüs ile ilan verebilecekleri gibi sistemlere zarar da verebileceklerinin farkına vardılar. Bu öncü virüs sonrasında pek çok değişik boot sektör virüsü yazıldı. Bulaşması için disket ya da CD gibi bir medyadan boot edilmeyi gerektirdiğinden günümüzde çok yaygın olarak karşımıza çıkan bir virüs değildir.

Dosya virüsleri de boot sektör virüsleri ile aynı anda geliştirilmiştir. Virüs yazanların sistem içinde bulunan programları kendi kodlarını aktifleştirebilmek amacıyla kullanabileceklerini farketmeleri fazla uzun sürmedi. Geliştirilen ilk dosya virüsü COMMAND.COM dosyasına kendini ekliyor ve bu sayede belleğe bulaşarak çalıştırılan diğer dosyalara bulaşıyordu.

Yazılan virüs kodları kaçınılmaz olarak dosyalar üzerinde değişiklikler meydana getiriyordu. Anti-virüs yazılımcıları da bu değişiklikleri bularak virüs kodlarını dosyalardan kolayca temizliyebiliyorlardı. Virüs geliştiren kişiler ise bunu engellemek için işi biraz daha zorlaştırdılar. Boot sektöre gelen okuma talepleri virüs tarafından, boot sektörün orijinal dosyalarının taşınmış olduğu başka bir sektöre yönlendirilerek anti-virüs yazılımları atlatılmaya çalışılıyordu. Stealth olarak adlandırılan bu teknoloji ile pek çok virüs bir müddet için anti-virüs yazılımcılarını oyalamayı başardı.

İlk yazılan virüsler çalıştırılabilir dosyalara her seferinde kendilerini bir kere daha eklediklerinden dosyaların boyutunu şişirerek kolayca anlaşılıyordu. Virüs geliştiriciler bunu engellemek için virüslerinin, bulaştıkları dosyalara bir daha bulaşmamalarını sağlayan bir imza kodu atmalarını sağladılar. Böylece daha önce virüsün bulaşıp imzasını attığı dosyaya aynı virüs kendini bir kez daha ekleme durumundan kurtuldu. Bu yöntem virüslerin hemen bulunmasını bir süre engellemiş de olsa anti-virüs yazılımlar imza (signature) kodlarını kullanarak bu virüsleri temizlemeyi başardı.

Buna karşılık virüs yazarları imza kodlarını gizlemenin yollarını buldular. Bazı virüsler bulaştıkları her sistem ya da dosyada farklı imza kodları bırakmaya başladılar. Bunlar mutating virüsler olarak adlandırılırlar.

Bazı virüs geliştiriciler imza kodunu şifrelediler. Bunlar encrypted virüsler olarak adlandırılırlar.

Çok sofisitike virüsler ise mutating, encrypted ve stealth yöntemlerini bir arada kullandılar. Bunlar ise polymorphic virüsler olarak adlandırıldılar.

Görüldüğü gibi virüs yazanlar ile anti virüs yazanlar arasında yıllardır süren kıyasıya bir rekabet var. Virüs yazanlar herseferinde farklı yöntemler deneyerek daha etkili ve mücadelesi daha zor virüslerle bilgi işlem bölümlerinin karşılarına çıkıyorlar. Anti-virüs yazanlar da çok geçmeden tedavi yöntemini bulup koruyucu ve temizleyici bir yazılım hazırlıyorlar.

Bu savaş 1995 yılına kadar bu şekilde sürüp gitti. Bu tarihte ortaya çıkan Concept virüsü virüs savaşları tarihinde yeni bir sayfa açılmasına neden oldu.
Concept virüsünden önce antivirüs programlarını geliştirenler metin ve elektronik tablo dosyalarına virüs bulaşmayacağını düşünüyorlardı. Sonuçta virüsler de birer programdı ve aktifleştirilebilmeleri için, tetiklenmeleri gerekiyordu. Veri dosyaları ise bir program kullanılarak oluşturulan ve içinde ham veriden başka hiçbirşey bulunmayan dosyalardı. Bu görüş Microsoft’un Word ve Excel gibi amiral yazılımlarına macro fonksiyonlarını eklemesiyle çürüdü. Virüs geliştirenler bu uygulamaların içine yerleştirilen Visual Basic program bileşenleriyle neler yapabileceklerinin farkına çok çabuk vardılar. Internet kullanımının hızla artması ve kullanıcıların birbirlerine e-posta ile veri dosyaları gönderiyor olmaları macro virüslerinin dünya üzerinde hızla yayılmalarına neden oldu. Bir sene içinde macro virüsleri gelmiş geçmiş en tehlikeli virüs ilan edildi.

Virüslerin Yayılması
Peki, virüsler nasıl yayılıyor? Başlangıçta disket, cd, tape gibi taşınabilir medyalarla yapılan veri transferleri ile bulaşıyorlardı. Ancak günümüz koşullarında veri transferi genelde groupware uygulamaları ve Internet ile yapılıyor. Bilgisayar ortamında yapılan her türlü iletişim virüsler tarafından yayılma amaçlı olarak kullanılmakta: e-posta, chat, icq, web surfing, disket, cd, tape, vb…

Korunma
Kayba neden olan güvenlik problemlerine bakıldığında virüs riski en yukarıda yer almaktadır. Virüs riskini personel hataları, doğal afetler, diğer dış ataklar, hacker saldırıları ve endüstri casusluğu izliyor. Kayba neden olan en ciddi risk olarak virüslerin neden oldukları zararlar ise;
%70 oranında üretkenliğin azalması
%57 oranında dosya okuma problemi
%54 oranında sitem kilitlenmesi
%54 oranında dosya yazma problemi
%37 oranında veri kaybı
%23 oranında yazıcı çıktı problemi olarak sıralanıyor.

Sonuç olarak virüsler teknoloji ile birlikte gelişen ve verdikleri zararların boyutu giderek büyüyen tehlikeli yazılımlardır. Elektronik veri iletişiminin gelmiş olduğu seviye ile aynı anda pek çok ağ ve firmayı bir anda etkileyebilecek en büyük tehlike virüs tehlikesidir. Bu nedenle ağ güvenliği sağlanırken ilk olarak virüs riskine karşı önlem alınmalıdır.

Anti-virüs yazılımı seçerken geniş ağlarda kolay kurulum sağlayan, yeni virüslere karşı sık güncellenen, güncelleme kolaylığı ve otomasyonu olan yazılımlar tercih edilmelidir. e-posta, web program dosyaları ve veri dosyaları ile gelebilecek tehlikelere karşı çok katmalı bir güvenlik yapısı sağlayabilen yazılımlar seçilerek virüs riskine karşı komple bir önlem alınmalıdır.