DIESER SERVICE KANN ÜBERSETZUNGEN VON GOOGLE ENTHALTEN. GOOGLE ÜBERNIMMT KEINERLEI VERANTWORTUNG FÜR DIE ÜBERSETZUNGEN. DARUNTER FÄLLT JEGLICHE VERANTWORTUNG IN BEZUG AUF RICHTIGKEIT UND ZUVERLÄSSIGKEIT SOWIE JEGLICHE STILLSCHWEIGENDEN GEWÄHRLEISTUNGEN DER MARKTGÄNGIGKEIT, NICHT-VERLETZUNG VON RECHTEN DRITTER ODER DER EIGNUNG FÜR EINEN BESTIMMTEN ZWECK.

Die Website von Kaspersky Lab wurde für Ihre Bequemlichkeit mithilfe einer Übersetzungssoftware von Google Translate übersetzt. Es wurden angemessene Bemühungen für die Bereitstellung einer akkuraten Übersetzung unternommen. Bitte beachten Sie, dass automatisierte Übersetzungen nicht perfekt sind und menschliche Übersetzer in keinem Fall ersetzen sollen. Übersetzungen werden den Nutzern der Kaspersky-Lab-Website als Service und "wie sie sind" zur Verfügung gestellt. Die Richtigkeit, Zuverlässigkeit oder Korrektheit jeglicher Übersetzungen aus dem Englischen in eine andere Sprache wird weder ausdrücklich noch stillschweigend garantiert. Einige Inhalte (z. B. Bilder, Videos, Flash, usw.) können aufgrund der Einschränkungen der Übersetzungssoftware möglicherweise nicht inhaltsgetreu übersetzt werden.

Virus.Win9x.Sk

Erkennungsdatum 01/11/2002
Kategorie Virus
Plattform Win9x
Beschreibung

Technische Details

Dies ist ein parasitärer Windows-Virus. Es verbreitet sich unter Windows95 / 98, installiert seine Kopie im Windows-Speicher, greift auf Dateizugriffsfunktionen zu und infiziert PE-Dateien (Windows Portable Executable). Der Virus betrifft auch Windows-Hilfedateien (.HLP) – er modifiziert sie so, dass der Virencode bei Aktivierung auf den Datenträger abgelegt und ausgeführt wird. Der Virus fügt seine Dropper außerdem vier Arten von Archiven hinzu: RAR, ZIP, ARJ und HA. Die Virusdroppers in HLP-Dateien und -Archiven haben das DOS-COM-Dateiformat und werden in der DOS-Box ausgeführt. Sie können jedoch Viruscode sowohl im Windows-Speicher als auch in infizierten ausführbaren Windows-Dateien installieren (siehe unten).

Der Viruscode ist sowohl in DOS-Droppern als auch in Windows PE-Dateien mit polymorphen Routinen verschlüsselt. Im Falle von Windows-Dateien verwendet der Virus auch die "Entry Point Obscuring" -Technologie: Der Viruscode erhält nicht sofort die Kontrolle, wenn eine infizierte Datei ausgeführt wird. Die JMP_Virus-Anweisung befindet sich in den meisten Fällen irgendwo im infizierten Dateikörper, nicht im Dateiheader und nicht bei der Dateistartadresse, und wird nur ausgeführt, wenn der entsprechende Programmzweig die Kontrolle übernimmt.

Der Virus ist ein "langsamer Infektor": Er infiziert vor der Infektion viele Bedingungen und beeinflusst daher nur sehr wenige Dateien auf dem Computer – nur etwa zehn EXE-Dateien in der Standardinstallation von Windows95 / 98. Das gleiche gilt für HLP-Dateien und -Archive – sehr wenige von ihnen können infiziert sein. Der Virus verzögert außerdem seine Infektionsroutine für eine Minute vor der ersten Infektion und infiziert HLP-Dateien und -Archive nur dann, wenn zwei Minuten lang auf diese Dateien nicht zugegriffen werden konnte.

Das Virus ist sehr gefährlich. Wenn auf Disk-Dateien zugegriffen wird, überprüft es deren Namen und im Falle von mehreren Antiviren-Programmen (ADINF, AVPI, AVP, VBA, DRWEB) löscht der Virus alle Dateien in allen Verzeichnissen auf allen Disketten von C: bis Z: dass der Virus kann das System durch den Fatal_Error_Handler-VMM-Aufruf löschen und dann anhalten.

Es gibt eine weitere Opferdatei, die bei jeder Installation im System durch den Virus gelöscht wird. Es ist COMMAND.PIF-Datei im Windows-Verzeichnis.

Der Virus hat Fehler, die unter einigen Windows95 / 98-Konfigurationen tödlich sind – bei der Infektion des Virus verursacht "Blue Screen" mit der Standardmeldung "Allgemeine Schutzverletzung".

Bei der Installation in das System zeigt der Virus abhängig von seinem zufälligen Zähler (in einem Fall von 48) die folgende Meldung an:


1997 VBA Ltd. E-mail: support@vba.minsk.by

Speicher resident installieren

Die "residente" Kopie des Virus funktioniert auf der VxD-Ebene (Ring0 – Windows-Kernel). DOS-Programme und Windows-Anwendungen können nicht mit Standardmethoden auf diesen Bereich zugreifen, daher verwendet der Virus mehrere Tricks, um seinen Code dort zu installieren.

Wenn DOS-Dropper ausgeführt wird, ist die Virusprüfung Windows installiert und kehrt zu DOS zurück, wenn dies nicht der Fall ist. Andernfalls erhält der Virus durch Verwendung von DMPI-Aufrufen Zugriff auf lokale Beschreibungstabellen (Speicherzuteilungstabellen des Speichermodus des Prozessors), patcht sie und schaltet seinen 16-Bit-DOS-Code zum Schutzmodus 32-Bit um. Der Viruscode arbeitet dann als Teil des Windows-Kernels und kann auf alle notwendigen Windows-Funktionen zugreifen.

Wenn die infizierte PE-Datei ausgeführt wird, patcht der Virus auch Systemzuordnungstabellen und wechselt seinen Code von der Anwendungsebene (Ring3) zur Kernel-Ebene (Ring0). Der Virus übergibt dann die Kontrolle an die gleiche Installationsroutine wie infizierte DOS-Dropper.

Die Installationsroutine weist, wenn sie die Kontrolle übernimmt, einen Block Systemspeicher zu, kopiert den Virus dorthin, hakt Windows-Funktionen und gibt die Kontrolle frei. Die ursprüngliche Viruskopie kehrt dann entweder zu DOS (im Fall von DOS-Dropper) zurück oder stellt die Daten und den Code der Host-PE-Datei wieder her und gibt sie zurück.

Virus Hooker

Der Virus hakt drei Windows-Funktionen. Die erste ist eine Rückrufprozedur für das I / O-Port-Trapping. Der Virus hakt den Port 534Bh und benutzt ihn in seinem "Are you here?" Anrufe. Das Lesen von diesem Port unter infizierten Systembedingungen gibt 21h ("!" – Zeichen) im AL-Register zurück. Sowohl DOS- als auch Windows-Vireninstallationsroutinen versuchen es, bevor sie den residenten Speicher installieren. Die Nummer dieses Ports wurde verwendet, um den Virus zu benennen – 534Bh ist "SK" in ASCII.

Der zweite Hook ist "Standard" für residente Windows-Infizierer – es ist File System API Hook. Er fängt Dateiöffnen, Umbenennen und Dateiattribut-Get / Set-Funktionen ab. Bei diesen Anrufen führt der Virus seine Infektionsroutinen aus.

Der dritte Hook fängt die Funktion "Install FileSystemApiHook" selbst ab (diejenige, die zum Installieren des vorherigen Hooks verwendet wird). Dieser Aufruf wird vom Virus verwendet, um seinen Hooker zu verbergen: Wenn ein neuer Hook installiert wird, ruft Windows diese Funktion auf. In diesem Moment fängt der Virus ab, entfernt seinen eigenen IFS-API-Hook, installiert einen neuen (der angefordert wird) und installiert dann seinen Hook neu. Daher befindet sich der Virus-Hooker immer oben in der Liste der Hooks und er erhält als erster die Kontrolle, wenn auf die Dateien zugegriffen wird.

Es gibt einen weiteren Trick in der IFS-API-Nutte des Virus: Um auf Dateisystemtreiber (das Ziel von FileSystem-Aufrufen) zuzugreifen, verwendet der Virus die Adresse des systemeigenen System-Handlers. Der Virus erhält diese Adresse aus dem rein dokumentierten Feld im Stapel des Aufrufers und führt über diese Adresse direkte Aufrufe der notwendigen Dateifunktionen aus.

Infizierte Dateien

Wenn der IFS-API-Hooker die Kontrolle erhält und die Infektionsroutine zum ersten Mal aktiviert wird, infiziert er die Windows-Shell-Anwendung (normalerweise – EXPLORER.EXE). Um es zu finden, öffnet der Virus die Datei SYSTEM.INI im Windows-Verzeichnis, scannt sie nach der Anweisung "shell =" und infiziert sie.

Diese Datei wird immer ausgeführt, sodass der Virus sie nicht ändern kann. Um dieses Problem zu beheben, verwendet der Virus einen "Upgrade" -Trick. Der Virus kopiert diese Datei unter einem anderen Namen (fügt zum letzten Buchstaben im Dateinamen hinzu: EXPLORER.EXE -> EXPLORER.EXF), infiziert eine neue Datei und zwingt Windows, die ursprüngliche Datei mit der infizierten Datei zu "aktualisieren". Dazu verwendet der Virus Standard-Weg: Er erstellt die WININIT.INI-Datei im Windows-Verzeichnis und schreibt die notwendigen "Rename" -Instruktionen dorthin.

Wenn die Windows-Shell bereits infiziert ist, infiziert der Virus die Datei, auf die zugegriffen wird. Zuerst überprüft es die Dateinamenerweiterung. Im Fall von .EXE-, .SCR- und .DLL-Dateien springt das Virus zur PE-Datei-Infizierungsroutine; Im Falle einer .HLP-Datei wird der Virus durch den Virus-Code gelöscht. Im Fall von .RAR, .ZIP, .ARJ und .HA Archiven fügt der Virus in seinen Inhalt seinen eigenen ausführbaren Dropper ein.

Infizierung von Windows PE

Beim Infizieren von PE-Dateien verschlüsselt und schreibt der Virus seinen Code in den Abschnitt Relocation (Fixup) und überschreibt diese Daten. Aufgrund der Art und Weise, wie Windows Anwendungen in den Speicher lädt, werden in den meisten Fällen keine Umlagerungen vorgenommen – alle Anwendungen werden auf die gleichen Adressen geladen, und es werden keine Umlagerungen verwendet. In einigen Fällen, wenn eine Anwendung von einer anderen Hostanwendung in den Arbeitsspeicher des Hosts geladen wird, verarbeitet Windows Loader die Verschiebungstabelle und nimmt die erforderlichen Änderungen im Anwendungscode vor. Um dies zu beheben, modifiziert der Virus PE-Header-Felder: löscht Relocation-Flags im Feld "Merkmal" (das heißt, dass es keine Umlagerungen in der Datei gibt) und setzt die Reload-Adresse auf Null. Daher kann die betroffene Anwendung nicht unter einer anderen Adresse geladen werden (um den Adressbereich einer anderen Anwendung zu adressieren), sondern funktioniert als eigenständige Anwendung.

Der Virus macht dann notwendige Änderungen in Relocation section header: setzt seine Eigenschaften als Readable und Initialized, abhängig von seinem zufälligen Zähler (in 1 Fall von 8) ändert Abschnitt Name in einen zufälligen, verschlüsselt seinen Körper und schreibt nach dort. Der Virus überprüft auch die Größe des Umlagerungsbereichs – ist groß genug für Virencode und infiziert Dateien nur, wenn der Virencode den Abschnitt body füllt. Als Ergebnis erhöht der Virus die PE-Dateigröße nicht, während er sie infiziert.

Um die Kontrolle zu erhalten, wenn infizierte Programme ausgeführt werden, ändert der Virus die Eintragsadresse im PE-Header nicht. Es verwendet einen anderen, komplexeren Weg – es patcht zufällig ausgewählten Code im Körper des Opferprogramms und schreibt die Routine JMP_Virus dorthin. Daher wird der Viruscode nicht sofort ausgeführt, wenn das infizierte Programm aktiviert wird. Es wird nur ausgeführt, wenn der gepatchte Zweig die Kontrolle erhält. In einigen Fällen, wenn diese Verzweigung sehr selten ausgeführt wird (wenn es beispielsweise eine Fehlerbehandlungsroutine ist), kann der Virus lange im Programm "schlafen" und springt dann in einer zusätzlichen Situation heraus.

Um die Position im zu patchenden Programm zu lokalisieren, liest der Virus Blöcke der Opferdatei und scannt sie nach C / Pascal-Subroutinen. Diese Routinen haben standardmäßige Kopf- und Fußzeilen, und der Virus muss sie nur finden und sehen, dass zwischen dem Unterprogrammeintrag und den Exit-Anweisungen genügend Platz für seinen JMP_Virus-Code ist.

Die JMP_Virus-Routine, die die Kontrolle von den Patches-Unterroutinen an den Haupt-Viruscode übergibt, ist nicht nur eine einzige JMP-Anweisung. Es ist ausgefeilter: Es ist eine polymorphe Schleife, die den Haupt-Virus-Code entschlüsselt, bevor er die Kontrolle an ihn übergibt – er hat bis zu 168 Bytes Code.

Zusammenfassung, die infizierten Programme laufen wie folgt: Windows lädt und führt das Programm aus, und seine Routinen fangen an, etwas Arbeit zu machen. Der Virus "schläft" im Moment, da die gepatchte Subroutine noch nicht ausgeführt wurde. Wenn dieser Code die Kontrolle erhält, wird die Virus-JMP_Virus-Routine aktiviert. Es entschlüsselt den Hauptviruscode (der im Abschnitt "Relocation" platziert ist) und springt zu entschlüsseltem Code. Die Vireninstallationsroutine erhält die Kontrolle, kopiert den Virus in den Windows-Speicher, installiert die Virus-Hooks, stellt das Unterprogramm des gepatchten Hosts wieder her und gibt die Kontrolle zurück.

Es ist zu beachten, dass in einigen Fällen (wenn die Windows-Shell infiziert ist oder keine C / Pascal-Routine gefunden wurde) der Virus seinen JMP_Virus-Patch direkt in die Entry-Adresse des Programms schreibt. In diesem Fall erhält der Viruscode sofort die Kontrolle, wenn die infizierte Datei ausgeführt wird.

Infizierte Archive

Der Virus betrifft vier Arten von Archiven: RAR, ZIP, ARJ und HA. Während sie infiziert werden, analysiert der Virus die internen Archive der Archive, fügt DOS-Dropper am Ende des Archivs als letztes Element hinzu und modifiziert sorgfältig die Archivstruktur einschließlich der CRC-Felder. Die einzigen Archive sind infiziert: Sie haben nicht weniger als zehn Dateien und haben mindestens eine COM- oder EXE-Datei. Der Virus-Zusatz zu Archiven ist eine DOS-COM-Datei, die einen zufällig erzeugten Namen und eine COM- oder EXE-Erweiterung hat.

Im Falle von RAR-Archiven hat der Virus einen weiteren Zweig, der mit anderen Archivinfizierungsroutinen verglichen wird. Dieser Zweig sucht nach "gespeicherten" Dateien in den RAR-Archiven, und wenn eine Datei einen bestimmten Datums- und Zeitstempel hat, liest der Virus die zuletzt ausgeführten gespeicherten Daten. Dieser Trick erlaubt es dem Virus, andere Programme ohne Benutzeraktion auszuführen – es kann verwendet werden, um den Virus zu "upgraden", um einen Spion oder irgendeine andere Art von Programmen auszuführen. Diese Virus-Funktion sieht wie eine "Hintertür" aus, die von Virenautoren benutzt werden kann, um die Kontrolle über andere PCs zu erlangen.

Infizierte Hilfe

Die Möglichkeit, Windows-Hilfedateien zu infizieren, basiert auf der Tatsache, dass diese Dateien eigene Skript-Unterprogramme (Makros) haben. Diese Skripte werden automatisch ausgeführt, wenn WinHelp Hilfedateien aktiviert und die Skriptsprache mächtig genug ist, um auf die Dateien zuzugreifen, sie zu erstellen und auszuführen.

Der Virus verwendet diese Funktion, um Windows-Hilfedateien zu infizieren. Es schreibt seinen DOS-Dropper am Ende der HLP-Datei als "Overlay" (der Header der HLP-Datei hat das Feld "Dateilänge" in der Kopfzeile und der Virus-Tropfer ist außerhalb dieser Daten), modifiziert die interne HLP-Struktur und fügt ein eigenes Skript hinzu nach dort. Dieses Skript hat zehn Anweisungen, die in den Abschnitt [CONFIG] ("| SYSTEM" im Hinblick auf HLP-Interna) geschrieben werden, der automatisch verarbeitet wird, wenn die infizierte Hilfedatei aktiviert wird. Diese zehn Virusanweisungen extrahieren und führen einen kleinen (ungefähr 380 Bytes) Viruslader aus. Das Virenskript erstellt diesen Loader als DOS-Datei (mit zufälligem Namen) auf dem Laufwerk C: schreibt einen Code dorthin und führt ihn aus – und der Vir loader übernimmt die Kontrolle.

Der Code des Virenladers im HLP-Skript wird in die ASCII-7bit-Form konvertiert – jedes Byte wird in zwei alphabetische Buchstaben konvertiert. Wenn dieser Code die Kontrolle übernimmt, konvertiert er sich zurück in Binärcode, erhält dann den Namen der Host-HLP-Datei (die das Virenscripts als Argument übergeben), liest den Header der HLP-Datei, erhält den Offset des Viren- "Overlay" -Codes, liest ihn und überschreibt ihn eine eigene COM-Datei und führt sie erneut aus. Der Virus – DOS – Dropper bekommt die Kontrolle und der Virus installiert sich selbst in den Speicher usw

Es gibt eine Ausnahme in dieser Routine, die Probleme verursacht. Der Code des Virusloaders wird in ASCII 7bit konvertiert, aber die Schleife, die diesen Code wiederherstellt, hat Opcodes, die außerhalb der 80-Stunden-Grenze liegen. Wenn diese Zeichenfolgen aus einer Windows-HLP-Datei in eine DOS-Datei gespeichert werden, verarbeitet Windows sie als Textzeichenfolgen und konvertiert hohe ASCII-Zeichen entsprechend der installierten Codepage. Es ist unnötig zu sagen, dass unter verschiedenen Codepages das Ergebnis der Konvertierung unterschiedlich ist. Die einzige Codepage enthält korrekten Code – das ist russische Codepage (das bedeutet, dass der Virenautor die Unterstützung für russische Sprachen auf seinem Computer installiert hat). Wenn kein russischer Support im System installiert ist, ist der Code des Virusloaders beschädigt, kann nicht funktionieren und hält bei der Ausführung an.

Außerdem muss beachtet werden, dass das Virenskript beim Löschen der COM-Datei das Vorhandensein der NT-spezifischen Datei C: NTLDR überprüft und zurückgibt, wenn diese Datei gefunden wird.

Win95.SK.8699

Dies ist eine verbesserte Virusversion. Es ist sehr nah an der ursprünglichen, aber verwendet mehr Methoden in seiner Verschlüsselung und stärker polymorhpic Motor. Es verwendet auch einen Trick, um Anti-Virus-Monitore zu deaktivieren: Es findet die GK95.VXD Anti-Virus-Komponente (AVP und F-SECURE) in den Windows-Speicher geladen und deaktiviert sie durch ein Patch. Die Infektionsroutine der HLP-Dateien ist in dieser Virus-Version behoben – sie funktioniert mit jeder Codepage, nicht nur unter der russischen.


Link zum Original