BU SERVİS, GOOGLE TARAFINDAN SAĞLANAN ÇEVİRİLER İÇEREBİLİR. GOOGLE, HERHANGİ BİR GARANTİ, GÜVENİLİRLİK VE TİCARİ ELVERİŞLİLİK, BELİRLİ BİR AMACA UYGUNLUK VE İHLAL ETMEME GARANTİLERİ DAHİL OLMAK ÜZERE AÇIK VEYA ZIMNİ GARANTİLER DE DAHİL OLMAK ÜZERE, AÇIK VEYA ZIMNİ TÜM GARANTİLERİ REDDEDER.

Kaspersky Lab web sitesi, Google Çeviri tarafından desteklenen çeviri yazılımı kullanılarak size kolaylık sağlamak amacıyla tercüme edilmiştir. Doğru bir çeviri sağlamak için makul çabalar sarf edilmiştir, ancak otomatik çeviri mükemmel değildir ve insan çevirmenlerinin yerini alması amaçlanmamıştır. Çeviriler, Kaspersky Lab web sitesinin kullanıcılarına bir hizmet olarak sunulur ve "olduğu gibi" sağlanır. İngilizce'den başka bir dile çevrilmiş herhangi bir çevirinin doğruluğu, güvenilirliği veya doğruluğu konusunda açık ya da zımni hiçbir garanti verilmemektedir. Çeviri yazılımı sınırlamaları nedeniyle bazı içerikler (görüntüler, videolar, Flash vb. Gibi) doğru bir şekilde çevrilemeyebilir.

Virus.Win9x.CIH

Bulunma tarihi 11/20/2002
Sınıf Virus
Platform Win9x
Açıklama

Teknik detaylar

Bu, yaklaşık 1Kbyte uzunluğunda olan Windows PE dosyalarını (Taşınabilir Yürütülebilir) enfekte eden bir Windows95 / 98 spesifik parazit virüsüdür. Çernobil olarak da bilinir. Bu virüs, Haziran 1998'de Tayvan'da "vahşi-vahşi" bulundu ve o zamanlar yerel bir üniversitede okuyan virüs yazarı tarafından serbest bırakıldı. Virüs (yanlışlıkla?), Virüsü Tayvan'dan serbest bırakan yerel bir İnternet konferansında yayınlandı. Bir hafta içinde virüs, Avusturya, Avustralya, İsrail ve Birleşik Krallık'ta bulundu ve ayrıca bazı diğer ülkelerden (İsviçre, İsveç, ABD, Rusya, Şili, vb.) Rapor edildi.

Yaklaşık bir ay içinde, virüs bulaşan dosyalar, küresel virüs salgınına neden olan ABD'de (oyun yazılımı dağıtım siteleri) birkaç Web sitesine yerleştirildi. Virüsün 26 Mart 1999'daki görüntüsünden yaklaşık bir yıl sonra, virüs kodundaki "zaman-bomba", bir milyon bilgisayarın yarısının virüs enfeksiyonu nedeniyle zarar gördüğünde bir bilgisayar felaketine neden oldu: hepsi, sabit diskteki verileri kaybetti Ve bunların birçoğu anakart BIOS'u da yok etti (ayrıca sabit sürücü verileri hasar gördü). Bu olay, şu ana kadar bilinen küresel ve korkunç bir bilgisayar olayı olmadığı için önemliydi.

Virüs “bomba” günü, 26 Nisan 1986'da dünyayı sarsan Çernobil felaketinin gününe denk geldiği için, “CIH” olarak bilinen virüs, ikinci adını aldı – "Çernobil".

Buna rağmen, virüs yazarı Çernobil'le “bomba” bağlantısını yapmamıştı (belki de Çernobil'den haber bile duymamıştı). Başka bir nedenle "bomba" günü seçildi. İlk virüs versiyonu (şans eseri Tayvan'dan ayrılmadı) 26 Nisan 1998'de serbest bırakıldı, böylece virüs 26 Nisan 1999'da "doğum günü" kutladı.

Virüs nasıl çalışır?

Virüs kendisini Windows belleğine yükler, dosya erişim çağrılarını kancalar ve açılan EXE dosyalarını bozar. Sistem tarihine bağlı olarak (aşağıya bakınız), virüs tetikleme rutini çalıştırır. Virüsün hataları vardır ve bazı durumlarda, virüslü bir uygulama çalıştırıldığında bilgisayarı durdurur.

Virüs 'tetikleme yordamı, Flash BIOS bağlantı noktaları ile çalışır ve "çöp" ile Flash belleğinin üzerine yazmaya çalışır. Bu sadece anakart ve yonga seti yazının Flash belleğe yazılmasına izin veriyorsa mümkündür. Genellikle Flash belleğe yazmak DIP anahtarıyla devre dışı bırakılabilir, ancak bu anakart tasarımına bağlıdır. Ne yazık ki, bir DIP anahtarıyla korunamayan modern anakartlar da var – bazılarının anahtar pozisyonuna dikkat etmediği ve bu korumanın hiç bir etkisi olmadı. Diğer bazı anakart tasarımları, yazılım tarafından devre dışı bırakılabilen / devre dışı bırakılabilen yazılı koruma sağlar.

Tetik rutini daha sonra kurulu tüm sabit sürücülerdeki verilerin üzerine yazar. Virüs, bunu başarmak için doğrudan disk yazma çağrıları kullanır ve MBR ve önyükleme sektörlerinin üzerine yazarken standart BIOS virüs korumasını atlar.

Çok yakından ilişkili olan ve sadece kodlarının birkaç bölümünde farklı olan üç "orijinal" virüs sürümü vardır. Virüs kodunun içinde farklı uzunluklara, metinlere ve tetikleme tarihlerine sahipler:

Uzunluk Metin Tetikleme Tarihi-In-The-Wild

26 Nisan'da 1003 CIH 1.2 TTIT

26 Nisan'da 1010 CIH 1.3 TTIT YOK

Her ayın 26'sında 1019 CIH 1.4 TATUNG var – birçok rapor

Teknik detaylar

Bir dosyaya bulaşırken virüs, dosya gövdesinde "mağaralar" arar. Bu mağaralar, PE dosya yapısının bir sonucudur: tüm dosya bölümleri, PE dosya başlığında tanımlanan bir değere göre hizalanır ve bir önceki bölüm ile bir sonrakinin sonu arasında kullanılmayan dosya veri blokları vardır. Virüs bu mağaraları arar ve kodunu onlara yazar. Virüs daha sonra bölümlerin boyutunu gerekli değerlerle artırır. Sonuç olarak, dosya uzunluğu bulaşma sırasında artmaz.

Yeterince büyüklükte bir mağara varsa, virüs kodunu bir bölümden kaydeder. Aksi halde, kodunu birkaç parçaya ayırır ve bunları birkaç bölümün sonuna kaydeder. Sonuç olarak, virüs kodu, virüslü dosyalarda tek bir blok olarak değil, parça kümesi olarak bulunabilir.

Virüs ayrıca PE başlığında bir mağara arar. 184 bayttan daha az olmayan kullanılmayan bir blok varsa, virüs başlangıç ​​rutinini oraya yazar. Virüs, daha sonra PE başlığında giriş adresini, başlığa yerleştirilen başlangıç ​​rutini gösteren bir değerle yamalar. Bu, "Win95.Murkry" virüsünde kullanılan aynı numaradır: bazı dosya bölümlerine değil, dosya giriş noktalarına yönelik adres giriş dosyalarının adresi, yüklenebilir dosya verilerinin dışında. Buna rağmen, virüs bulaşmış programlar sorunsuz çalışır – Windows bu tür "garip" dosyalara herhangi bir dikkat göstermez, dosya başlığını belleğe yükler, sonra bölümler oluşturur ve sonra kontrolü PE başlığında virüs başlatma rutinine geçirir.

Virüs başlatma rutini kontrol altına alındığında, PageAllocate VMM çağrısını kullanarak bir bellek bloğu tahsis eder, kendisini oraya kopyalar, diğer virüs kodu bloklarını bulur ve bunları da tahsis edilen bellek bloğuna kopyalar. Virüs daha sonra sistem IFS API'sini kancalar ve ana programa kontrolü döndürür.

Virüs kodunun bu bölümündeki en ilginç şey, virüsün Ring3'ten Ring0'a atlamak için oldukça karmaşık hileler kullanmasıdır: virüs yeni tahsis edilen belleğe atlandığında, kodu daha sonra Ring0 rutini olarak yürütülür ve virüs dosya sistemi çağrılarını kancalayın (tüm kullanıcıların uygulamalarının yürütüldüğü Ring3'te mümkün değildir).

IFS API virüs işleyicisi sadece tek bir işlevi – dosya açmayı engeller. PE .EXE dosyaları açıldığında, yeterli boyutta mağaralar varsa, virüs onları enfekte eder. Enfeksiyondan sonra virüs dosya tarihini kontrol eder ve tetikleme rutini çağırır (yukarıya bakın).

Tetik rutinini çalıştırırken virüs, Flash BIOS bağlantı noktalarına ve VxD doğrudan disk erişim çağrılarına (IOS_SendCommand) doğrudan erişim kullanır.

Bilinen diğer virüs sürümleri

Orijinal virüs yazarı, etkilenen EXE dosyalarında yalnızca virüs kodlarını değil, aynı zamanda bir virüs kaynağı (assembler) kodunu da serbest bıraktı. Bu kaynak kodu yamalanmış, yeniden derlenmiş ve bunun sonucunda yeni virüs sürümleri bulundu. Bu sürümlerin çoğu buggy ve çoğaltamaz, ancak diğerleri yapabilir. Hepsi orijinal virüslere çok kapalı, ancak birkaç farklılık var. En önemli fark, "bomba" tarihinin değişmiş olmasıdır ve virüsün yeni türevleri, diğer günlerde verileri ve Flash BIOS'u siler veya bu rutin asla çağrılmaz.

Ayrıca virüsün "orijinal" sürümleri de vardır, böylece başka "bomba" günlerine sahip olurlar. Bunun nedeni aslında esprili: virüs, geçerli gün ve ay sayısını iki sabitle (iki bayt) karşılaştırarak tetik tarihini kontrol eder. Bu sabitleri yayarak, virüsün bilgisayarları yok edeceği herhangi bir günü seçmek mümkündür.


Orijinaline link