# Parity Boot

Parity Boot bezeichnet eine Gruppe von Bootviren für x86-Rechner mit Betriebssystemem wie MS-DOS oder OS/2. Vor allem die A- und die B-Version waren von 1992 bis 1996 sehr verbreitet. In Deutschland war Parity Boot B in dieser Zeit vermutlich das häufigste Virus überhaupt.

## Aliasse

Für Computer-Viren gibt es keine festgelegte Nomenklatur. Daher haben die Hersteller von Virenschutz-Software unterschiedliche Bezeichnungen für das Schadprogramm. Neben Parity Boot A und B wird das Virus auch P-Check, Generic 1 oder Generic 2 genannt. Umgangssprachlich bezeichneten Betroffene ihn oft als Parity Check Virus.
Viren mit ähnlichen Namen Außerdem gibt es das Dateivirus Parity, das vermutlich aus Bulgarien stammt. Es infiziert COM-Dateien. Wie üblich ist auch dieses Virus unter weiteren Namen bekannt.
Es kann auch zu Verwechslungen mit dem Virus Quandary kommen, das auch unter dem Trivialnamen Parity-enc bekannt ist (und außerdem auch als Boot-c, NewBoot_1, WeRSilly oder IHC). Quandary infiziert ebenfalls Bootsektoren, hat aber einen völlig anderen Programmcode. Es kursiert diesbezüglich eine Fehlinformation im Internet: Die Firma IBM soll dem Parity-Boot-Virus 1996 in Deutschland unabsichtlich zu einer schlagartigen Verbreitung verholfen haben. Eine nicht näher bekannte Anzahl der Anwendung VoiceType Vokabular wurde in diesem Jahr auf infizierten Disketten verkauft. Dabei handelte es sich in Wahrheit aber um das Virus Quandary, und nicht um eine der Parity-Boot-Varianten.

## Versionen und Derivate

Parity Boot tritt in fünf Varianten auf, wobei die Varianten Parity Boot A und Parity Boot B im Verhalten nahezu identisch sind. Variante Parity Boot A kopiert den originalen Master Boot Sector beispielsweise in Sektor 14 der Disk, während Parity Boot B ihn nach Sektor 9 kopiert. Dieser minimale Unterschied war für damalige Antivirenprogramme relevant, um infizierte Datenträger möglichst gründlich zu bereinigen.
Die weiteren Derivate unterscheiden sich vor allem durch variierende Infektions- bzw. Auslösezeiten. Diese können bei einigen Parity-Boot-Varianten unregelmäßig sein, oder auch mit jeder Ausbreitung um eine Stunde länger werden, indem ein Counter im Schadprogramm die Infektionen mitzählt.
Bis 1999 erschienen immer wieder neue Varianten, wobei Parity Boot A vermutlich die Ur-Version ist. Version A wurde erstmals im April 1993 bekannt, Version B im Oktober desselben Jahres. Die B-Version erreichte mit Abstand die weiteste Verbreitung. Von praktischer Bedeutung war ansonsten quasi nur die A-Version. Die weiteren Varianten wurden nur in Einzelfällen gemeldet.
Aufgrund der Ähnlichkeit des Virencodes erkennen heutige Malware-Scanner die ganze Gruppe meist mit einer einzigen Prüfsumme, auch wenn die Viren keine praktische Bedeutung mehr haben.
Die geläufigsten Bezeichnungen für die Varianten des Schadprogramms sind:
* Parity Boot A (aka Generic 1)
* Parity Boot B (aka Generic 2)
* Parity Boot C (von Avira Antivirus Virus.Boot.Parity.a genannt)
* Parity Boot D
* Parity Boot E
* Parity Boot I
* Parity Boot K
* Parity Boot L

## Funktion

Parity Boot ist RAM-resident und belegt etwa ein Kilobyte konventionellen Speicher. Das fiel im Normalfall keinem MS-DOS-User auf, da der geläufige DOS-Befehl MEM zwar die Größe des freien und belegten RAM anzeigt, aber ohne entsprechende Parameter den Verbrauch nicht detailliert auflistet. Das Virus reserviert sich den benötigten Speicher schon vor dem Start von MS-DOS und läuft somit nicht als sichtbarer Hintergrunddienst.
Parity Boot übersteht auch einen Warmstart im Speicher, da das Kommando von ihm abgefangen wird.
Aufgrund seiner Programmierung ist der Parity-Boot-Virus betriebssystemunabhängig. Als Plattform benötigt er einen Computer mit BIOS, der x86-Maschinenbefehle verarbeiten kann. Das Basic Input/Output System stellt die Interrupts für das Schadprogramm bereit: 13h für Festplatten-Zugriffe, 1Ah für die Abfrage der Systemzeit, und Interrupt 09h für die Trigger-Routine des Payloads.
Auch die Tastenkombination Strg+Alt+Entf für einen Warmstart wird vom Virus abgefangen. Führt man einen Warmstart aus, bevor der Virus das System einfrieren lässt, bleibt das Schadprogramm im Speicher resident. Zusätzlich löst das Warmstart-Kommando einen weiteren Effekt aus. Der Virus versucht laut verschiedenen Quellen, bei dieser Gelegenheit eine Diskette oder Festplatte neu zu infizieren. Der Zugriff, bzw. der Zugriffsversuch auf Diskettenlaufwerke ist am Betriebsgeräusch deutlich erkennbar, das dürfte aber wohl kaum einen Anwender misstrauisch gemacht haben. Computer waren in den 1990er Jahren meist so eingerichtet, dass beim Bootvorgang ein Floppy-Test ausgeführt wurde, eventuell suchte das BIOS auch nach einer Bootdiskette. Hat das Virus das System bereits angehalten, kann natürlich gar kein Warmstart-Kommando mehr gesendet werden. Es bleibt nur, den Rechner mittels Netzschalter oder Reset-Taste neu zu starten.

### Infektions-Routine

Das Virus wird beim Start von einer Festplatte oder einer Boot-Diskette aktiv. Es befindet sich dann als TSR-Programm aktiv im RAM und versucht eine Stunde lang, auf jede eingelesene Diskette zuzugreifen, um deren Bootsektor zu infizieren. Die Standardwerte im Viruscode beziehen sich dabei zwar auf 5,25"-Disketten, das Infizieren der neueren 3,5"-Disketten ist aber ebenfalls problemlos möglich. Bei Festplatten wird nach gleichem Prinzip der Partitionssektor infiziert. Es sichert den originalen Bootsektor im hinteren Bereich des Hauptverzeichnisses, wobei dort befindliche Daten überschrieben werden. Eine schreibgeschützte Diskette kann nicht infiziert werden.
Wenn als Nächstes versucht wird, den MBR einer Festplatte oder den Bootsektor einer Diskette zu lesen, prüft das Virus, ob der Sektor bereits infiziert ist oder nicht. Ist dies nicht der Fall, beginnt der Infektionsprozess. Dieser Prozess dient dem Virus gleichzeitig als einfache, aber effektive Stealth-Routine.

### Payload

Das Schadprogramm startet nach seiner Aktivierung (d. h. direkt nach dem Systemstart) einen Timer und lässt eine Stunde ablaufen (Die Zeitspanne kann in späteren Versionen des Virus' variieren). Findet innerhalb dieser Zeitspanne keine Ausbreitung statt, wartet das Programm auf die nächste Tastatureingabe. Durch diese wird dann der eigentliche Schadcode ausgelöst. Der Rechner stoppt, und der Bildschirm wird schwarz. Links oben steht in weißer Farbe der Text:
Der PC hat sich aufgehängt und nimmt keine Eingaben mehr an. Das Virus verwendet dazu das Mnemonic HLT, einen Maschinenbefehl, der bei x86-Prozessoren sämtliche Programmabläufe stoppt. Da auch keine Möglichkeit mehr besteht, offene Programme oder Dateien abzuspeichern, kann Parity Boot auch ärgerliche Datenverluste verursachen. Die daraus resultierenden Folgen können je nach Einzelfall unterschiedliche Ausmaße haben. Solange das Virus nicht entfernt wird, ist der Besitzer des PC zu einem sehr lästigen, stündlichen Neustart gezwungen.
Die Meldung Parity Check soll den Computerbesitzer vermutlich auf eine falsche Fährte lenken. Der vermeintliche Zusammenhang mit einer Paritätsprüfung lässt einen Speicherfehler oder ähnliches vermuten. Der Computerbesitzer wird das Problem somit in diesem Bereich suchen, anstatt das Virus als solches zu erkennen. Dadurch dauert die Entdeckung der Infektion länger und er kann sich somit effektiver verbreiten.
Möglicherweise wurde der Virusautor von Ralf Burgers Publikation Das große Computer-Viren-Buch inspiriert. Der Autor beschreibt in seinem Werk genau diese Form eines Payload, und zwar bereits einige Jahre bevor Parity Boot entdeckt wurde.

### Stealth-Technik

Ist das Virus in den Speicher geladen und aktiv, versucht es, alle Aufrufe zum Lesen oder Beschreiben des Master-Boot-Sektor auf die Kopie des originalen Sektors umzuleiten. Diese Verschleierungstechnik schützt das Virus aber nicht effektiv davor, mit dem MS-DOS-Befehl fdisk /mbr überschrieben zu werden. Der Viruscode im Systemspeicher ist nicht speziell getarnt. Da er vor dem Betriebssystem geladen wird, ist er ohnehin schwer zu entdecken.

## Entfernung

Da Disketten als Datenträger mittlerweile an Bedeutung verloren haben, ist Parity Boot, wie auch alle anderen Bootsektor-Viren, für die meisten heutigen Anwender ohne Relevanz. Schreibgeschützte Disketten konnten nicht infiziert werden. Moderne Systeme können durch diesen Virus wegen verschiedenen, integrierten Maßnahmen ohnehin nicht mehr infiziert werden. Das Secure-Boot-Verfahren der UEFI-Spezifikation stellt beispielsweise einen effektiven Schutz dar.
Durch neues Beschreiben bzw. Überschreiben des Bootsektors konnte man den Virus auch ohne Anti-Virenprogramm vom Datenträger entfernen, nicht aber ohne weiteres aus dem RAM. Praktischen Nutzen hatte das aber nur, wenn man eine nicht-infizierte Boot-Diskette zum Starten verwendete. Wenn Parity Boot bereits ins RAM geladen war, erfolgte in kürzester Zeit eine Neuinfektion. Das ist typisch für fast jeden speicherresistenten Boot-Sektor-Virus. Für die einfachste und sicherste Bereinigung eines infizierten Rechners kann quasi fast jedes Anti-Virenprogramm ab dem Jahr 1993 verwendet werden. Parity Boot wird dann nicht nur aus dem Bootsektor, sondern auch aus dem Systemspeicher entfernt.
Ab MS-DOS 6.0 war das Antivirenprogramm Microsoft Anti-Virus im Lieferumfang enthalten (MSAV für DOS und MWAV für Windows 3.x). Der Scanner war aber ohne Updates, die damals nur umständlich zu bekommen waren, nicht dazu in der Lage, den Parity-Boot-Virus aufzuspüren.

## Verbreitung

Die ersten beiden Versionen wurden im Jahr 1993 in Deutschland entdeckt. Die Variante Parity Boot B wurde in den folgenden Jahren zu einem der häufigsten Boot-Sektor-Viren in Mitteleuropa. Die Zahl der gemeldeten Infektionen nahm erst ab, als Disketten mehr und mehr an Bedeutung verloren. Der Autor des Viruscodes ist unbekannt.
Betroffen waren vor allem Computer in Deutschland. 1996 war Parity Boot dort lange Zeit das am weitesten verbreitete Virus, obwohl es zu dieser Zeit schon seit Jahren von nahezu jedem Anti-Virenprogramm erkannt werden konnte. Zu den Hochzeiten seiner Verbreitung machte es bis zu 36 % aller Virenfunde in Deutschland aus.
Das britische Fachmagazin Virus Bulletin berichtete in der Ausgabe vom April 1996, dass die Variante Parity Boot B im Februar 37 mal gemeldet wurde, was 9,4 % aller Reports in diesem Monat ausmachte. Die Version Parity Boot A kam im selben Zeitraum nur auf fünf Meldungen, was aber immer noch 1,3 % entspricht.
Im April 1997 wurden dem Virus Bulletin immer noch 12 Infektionen gemeldet.

## Trivia

Die deutsche Metal-Band PARITY BOOT benannte sich 1995 nach dem Computervirus.