/i/Yazılım

Umuyoruz ki geleceğin yazılımcıları bu altinciden çıkacak!
    başlık yok! burası bom boş!
  1. 1.
    +3 -1
    Yeni nesil virüsler bunlar herhal. Ben olayın biraz daha donanım yazılım karışık kısmını anlatıyorum.

    Windows 95 zamanlarını hatırlayanlar bilirler, sanırım 26 Nisan'da bize bilgisayarları kapatın derlerdi. Ama sebebi neydi?

    CIH. Çernobil virüsü basitçe sistemdeki BIOS'u silerek bilgisayarı açılmaz hale (düğmeye basınca tepki almıyorsunuz o derece) getiriyordu.

    Nasıl çalıştığına gelirsek, Windows 95'teki çok küçük bir açıktan faydalandı.

    (bkz: http://www.incisozluk.com.tr/w/i%C5%9Fletim-sistemi-yazmak-5/) Burada IDT'den bahsetmiştim.

    Windows 95'te sidt ve lidt bloke olmadığı için, dahası paging ile o tablolar güvenceye alınmadığı için kesme tablosuyla rahatlıkla oynayabiliyordunuz. Virüs "sidt %eax" komutu ile eax yazmacına kesme tablosunun adresini koyuyordu. Aldığı kesme tablosuna kendi kodlarını çağıracak bir kesme ekliyor ve "lidt %eax" ile bu tabloyu geri yüklüyordu.

    Sistem kesmeleri normal programların aksine Ring 0'da (Çekirdek modu, tam bilgisayar yetkisi) çalışır ve IOPL, CPL ve DPL = 0 olduğu için bilgisayar üzerinde tam kontrole (işletim sistemi ile eş değer düzeyde) sahiptir.

    Yani virüs bu aşamadan sonra sisteminize ne isterse yapabilir. Sonra iki aşamada sistemi yıkmaya başlıyor. Sabit diskin ilk birkaç sektörünü sıfırlarla dolduruyor (int 13h BIOS kesmesi) ve BIOS flash'ı da rastgele verilerle dolduruyor.

    Sonuç olarak BIOS'un üzerine yazılıyor, bu da sistemin çalışmaz hale gelmesi demek. BIOS, bilgisayarın açılması için en önemli temel yazılımdır. BIOS olmadan bilgisayar açılmaz.

    Tabii Windows NT ile virüs çalışmaz hale geldi, Windows 2000'den itibaren yani. Fakat bahsettiğim yeni BIOS virüsleri biraz daha farklı. Amacı bilgisayarı yok etmek değil, bilgisayarın derinlerine kalıcı bir şekilde sızmak.

    Nasıl yapıyor? Birkaç açıktan faydalanarak kendisine BIOS'a yazma yetkisi sağlıyor. Buraya kadar olan kısım aynı CIH virüsü gibi. Fakat, BIOS'u rastgele sıfırlarla doldurmuyor. Onun yerine açılışta anında kendi kodlarını belleğe yükleyecek şekilde BIOS'u programlıyor.

    Bununla da kalmıyor, kendi kopyalarını MBR'a yazıyor. Bu sayede sistemin her yerine girmiş oluyor. Anlamak ise çok zor, sonuçta hiçbir antivirüs BIOS'ta tarama yapmıyor.

    MBR'a yazıyor demiştim. Yani siz format atsanız bile geri geliyor. Sabit diskin yenisini alsanız bile kurtulamazsınız, çünkü kendini BIOS'a yazdı. Siz daha güç düğmesine dokunur dokunmaz o virüs işlemci tarafından çalıştırılıyor zaten. BIOS çipini düzgünce orijinal BIOS ile sıfırladıktan ya da anakartı değiştirdikten sonra sabit diskleri de yenisiyle değiştirmekten başka şansınız yok.



    Bahsettiğim Ringler



    Ring0 çekirdek, Ring3 ise normal kullandığınız programlar olarak düşünün


    ···
   tümünü göster