Computerviren - wie sie schaden was sie nutzen

Bomben mit Fernzündung (Teil 2)

03.04.1987

Programm-Viren, die ein Computersystem gründlich lahmlegen können, sind, wie die erste Folge dieser kleinen Serie gezelgt hat, eine durchaus reale und eher unter- als überschätzte Gefahr. Zumal man sie so aufbauen kann, daß sie ihr verhecrendes Werk oft erst mit Verspätung, also sozusagen mit Zeit- oder auch Fernzündung, beginnen können.

Für den bekannten "Computer-Virologen" Rüdiger Dierstein von der Deutschen Forschungs- und Versuchsanstalt für Luft- und Raumfahrt (DFVLR) in Oberpfaffenhofen nahe München ist "ein sogenannter Auslöser" die "wichtigste zusätzliche Eigenschaft", die einem gewöhnlichen Virus mit auf den Weg gegeben werden kann. Zumal jene dessen Gefährlichkeit "geradezu dramatisch erhöhen" könne.

Bei einem Virus mit Auslöser wird die "Funktion" des Virus während einer gewissen Zeit - in der das Virus sich aber im übrigen dennoch ausbreiten kann - nicht ausgeführt; der Krankheitserreger inmitten des Computers hält also gewissermaßen still. Die Ausführung der Funktion setzt vielmehr erst dann ein, wenn irgendeine, vom Konstrukteur des Virus nach Belieben festgelegte Bedingung erfüllt ist. Dabei verfügt das Virus-Programm, zur Abfrage eben dieser Bedingung, über ein besonderes Unterprogramm.

Das Hemmnis kann auch ein Datum sein

Es bleibt, hebt Dierstein hervor, völlig demjenigen, der das Virus in ein System einbringt, überlassen, worin die aktivitätshemmende Bedingung wohl bestehen wird. Sie kann innerhalb wie außerhalb des Systems zu suchen sein, sie kann beliebiger Art und mithin beispielsweise ein Datum sein, und sie kann in allen möglichen Formen daherkommen. Stets aber wird das mit so einem Auslöser-Mechanismus behaftete Virus bis zur Erfüllung der Bedingung inaktiv sein und sich "lediglich" vermehren und versuchen, immer neue Programme des Systems zu infizieren. Es sei denn - aber diese Möglichkeit ist wohl eher theoretischer Art -, man setzt, als Entwickler des Virus, auch noch eine Bedingung, von deren Erfüllung die Ausbreitung des Virus abhängig gemacht wird. Was natürlich ein besonders trickreicher Weg wäre, Kontrollen zum Aufspüren möglicher Viren zu unterlaufen.

Dierstein, der beim Thema Computerviren im Gespräch immer wieder Parallelen zu biologischen Viren und deren Infektionsmechanismen zieht, betont: Systeme, die zwar infiziert, deren Viren aber noch nicht ausgelöst worden sind, könnten "als uninfiziert und damit korrekt arbeitend angesehen werden, solange keine Anzeichen der Funktion" des Fremdlings erkennbar sind. Wobei natürlich besonders tückisch ist, daß der Einschleuser eines "bösartigen" Virus zwischen "Inkubation" und dem Beginn schadenstiftender Virus-Aktivitäten beliebig viel Zeit legen - und sich damit besonders leicht in Sicherheit und außer Verdacht - bringen kann. . .

Typische Beispiele für einfache Auslöser sind neben dem Tages-Datum die Uhrzeit, die Systemzeit und beliebige Flags innerhalb wie außerhalb des Rechners. Für sie ist kennzeichnend, daß es - hat das Virus nur erst mal seinen Weg in den Rechner gefunden - keinerlei weiterer Aktionen mehr bedarf, um das Zerstörungswerk irgendwann beginnen zu lassen. Denn diese "passiven Auslöser", wie Dierstein sie nennt, arbeiten ähnlich wie Zeitzünder; vor allem natürlich, wenn sie, ähnlich jenen, irgend einen internen Zähler bis auf einen kritischen Wert hoch- und herabzählen. . .

Mit dem Mechanismus der passiven Auslöser laßt sich sich ohne große Schwierigkeiten ein Virus erdenken, das zum Beispiel bis zum 1. 1. 1988 nach außen hin überhaupt nichts tut, wiewohl es sich intern nach Kräften ausbreitet und vermehrt. Es enthält in seinem Inneren aber eine simple Endlosschleife der Form "schleife: goto schleife"; und sobald nun auch nur eines der vielen, bis zum 1. 1. '88 infizierten Programme nach dem Neujahrs-Feuerwerk ausgeführt wird, "verweigert das System jede, aber auch jede Dienstleistung". Denn, so Dierstein, "es rotiert, sonst nichts". Und das sei doch wohl wenig erfreulich, handelt es sich beim befallenen System etwa um den Computer eines Finanzamtes, eines Chemiewerkes, einer Bank, einer Krankenhaus-Intensivstation oder auch eines Kernkraftwerkes. . .

Daß diese Gefahr für moderne Rechner und all jene Strukturen unserer Gesellschaft, die heute auf Gedeih und Verderb von Rechnern und deren perfektem Funktionieren ab hängt, eine durchaus reale ist, streicht Dierstein mit eindringlichen Worten heraus: "Die Viren dieses einfachen Beispiels verhalten sich genauso wie in der Medizin. Sie breiten sich aus. Wo immer Menschen mit Menschen, Menschen mit Tieren und Tiere mit Tieren zusammenkommen und kommunizieren (Sharing!), werden sie weitergetragen. Sie tun nichts; niemand bemerkt sie. Bis zu dem Augenblick, in dem sie virulent werden, die Seuche, "ausbricht" und niemanden und nichts übriglaßt. Bis auf vielleicht einige wenige Individuen, die von der Ausbreitung nicht erfaßt werden konnten, weil sie, 'isoliert', an abgelegenen Stellen des Globus (des DV-Systems) vor sich hinlebten - oder vegetierten."

Im Gegensatz zu den bisher behandelten, passiven Auslösern stehen "aktive Auslöser", bei denen jener Tatbestand, jene Markierung oder auch jenes Kennzeichen, das vom Virus vor eventuellen Aktionen abgefragt wird, irgendwann von außen her gesetzt wird.

Für diese zweite Untergruppe der mit Auslösern behafteten Viren ist besonders wichtig, daß "in der Regel" allein für das "Einpflanzen des Virus in das System" eine "Schreibberechtigung notwendig" ist; und zwar Weine Berechtigung mit hinreichender Autorisierung. Hingegen ist für das spätere Auslösen der vielleicht verheerenden Aktionen "keine besondere Autorisierung mehr notwendig". Denn die Abfragebedingung kann sich ja nun "auf irgendeine Stelle innerhalb des Systems oder auch außerhalb des Systems beziehen"; also insbesondere auch auf Stellen, die jedermann ohne besondere Berechtigung erreichen und damit "setzen" kann.

Um hier nicht nur immer schwarz in schwarz zu malen, sei, der Abwechslung halber, mal kein bösartiges Virus Gegenstand der weiteren Betrachtungen, sondern ein nützliches; und zwar jenes mit einem Kompressions-Algorithmus versehene Virus, von dem schon in der ersten Folge dieser Serie die Rede war.

Virus sucht gezielt nach Programmen

Es würde sich hier also um ein Virus handeln, das auf seinem Weg durch die Innereien eines Rechners gezielt nach Programmen sucht, die bisher noch nicht komprimiert worden sind, und das immer dann, wenn es so ein Programm gefunden hat, den Benutzer zunächst expressis verbis fragt: "Darf ich dieses Programm komprimieren? Und mich dann auch noch vor es setzen?"

Dierstein betont ausdrücklich den großen Nutzen, den solche Viren bringen können; denn mit Hilfe der erwähnten Kompressions-Algorithmen ließen sich "in einem DV-System bis zu 50 Prozent an Speicherplatz" sparen. Allerdings wachsen in solchen Fällen die Ausführungszeiten der Programme, denn sie müssen nun ja, ehe sie Nutzen bringen kömlen, erst stets noch dekomprimiert werden. Was wiederum bedeutet, man müsse stets im Einzelfall überlegen, ob die Kompression des Programms mehr Nutzen oder mehr Schaden bringt. Weshalb es wiederum gut ist, fragt das Virus erst noch schön brav, ob es im konkreten Fall komprimieren darf oder nicht. . .

Weiter oben war schon die Rede davon, daß es zwar nicht für das spätere Auslösen, wohl aber für das Einbringen eines Virus in ein System einer Schreibberechtigung mit hinreichend hoher Autorisierung bedarf. Denn beispielsweise in stark benutzten Timesharing-Systemen kann sich ein hinreichend "hoch" eingebrachtes Virus binnen weniger Minuten in praktisch allen Programmen und Systemteilen ausbreiten.

Anders sieht es aus, will irgendjemand von einem beliebigen Terminal eines beliebigen Teilnehmersystems aus versuchen, ein Virus einzubringen. Denn hier stehen, bei gut gebauten Systemen, doch noch genügend Barrieren zur Verfügung, die so eine Infektion abwehren helfen.

Dierstein legt diesen Sachverhalt am Exempel eines Buchungssystems für ein Reisebüro dar. Wobei so ein Buchungssystem ja bekanntlich ein Programmpaket sei, das sich in der Regel auf eine Datenverarbeitung oder eine Datenbank stützt, jene wiederum auf das Betriebssystem, jenes auf die Maschinensprache und jene letztlich irgendwann sich auf die konkrete Hardware des Rechners.

Erst bei der Berechnung beginnt die Infektion

Am Terminal des Reisebüros werden vom Kunden, im Zusammenwirken mit dem Angestellten des Reisevermittlers, nun zunächst nur Anfragen veranlaßt, die das Buchungssystem, soweit dies möglich ist, ganz allein beantwortet. Und damit ist wäht rend dieser Phase zunächst kein Schreiben und auch kein Einpflanzen eines Virus möglich.

Doch wie jeder Kenner der Riten unseres Reise-Gewerbes weiß, bleibt es nicht allein bei Abfragen. Denn irgendwann entscheidet der Kunde sich ja doch für zwei Wochen Ferien auf Ibiza - und prompt werden nun Zahlungen, Buchungen, sprich: "Schreibvorgänge", fällig. Und da könne man jetzt nur noch hoffen, meint der Skeptiker Dierstein, daß das ganze System "so gebaut ist, daß es von den Buchungs-Terminals nur ganz bestimmte Antworten in ganz bestimmten Formen annimmt". Und nicht irgendwelche Daten, "die irgendwo zu einem (Virus-)Programm zusammengesetzt werden können".

An dieser Stelle schiebt Dierstein eine ernste Mahnung an jeden Systemverantwortlichen ein. Denn dieser Personenkreis habe fraglos "die Aufgabe, sich zu vergewissern, daß das Buchungssystem seines Hauses" eine gefährliche Neben-Nutzung wie eben angedeutet nicht zuläßt. Und es gilt wohl nicht nur für die Betreiber von Reisebüro-Systemen, daß in diesen Dingen Vertrauen - auch auf die Versprechungen und Spezifikationen der Rechner-Hersteller - zwar gut, Kontrolle des realen Systemverhaltens aber gewiß besser ist.

Eine Ebene höher als die sonnenhungrigen Urlaüber und die ihnen beistehenden Reisevermittler fern in den einzelnen Büros stehen jene Menschen, denen das Unternehmen die Wartung und die Pflege des Buchungs- oder Banken- oder Wasauch-immer-Systems anvertraut hat. Denn die haben kraft Autorisierung ja nun wirklich das Recht, am System Änderungen vorzunehmen, neue Programmversionen einzuspielen und Teile der Programme zu korrigieren. Und damit kann es für sie ein leichtes sein, mit einem beliebigen neuen oder geänderten Programmteil diskret auch ein Virus miteinzubauen.

Dierstein streicht im Gespräch ausdrücklich heraus, was seit alters her bekannt ist, aber doch immer wieder vergessen - oder vielleicht eher verdrängt - wird: daß nämlich bei allen Datenverarbeitungs-Systemen "die größte Gefahr seit eh und je von den Insidern" herrührt, und daß dies auch in Zukunft so bleiben wird. Und, so Dierstein, daraus folge ganz klar dieses: "Einem Programm und damit letztlich dem ganzen DV-System kann man nur genausoviel und genausowenig Vertrauen schenken, wie dem, der es geschrieben hat."

Ernste Mahnung an die Systemverantwortlichen

Schlimm also, sollte einmal einer aus dem innersten Zirkel der EDV-Mannschaft eines Unternehmens böse Absichten hegen. Denn natürlich breitet ein Virus, das von einem dazu Autorisierten "gleich in der Datenbank abgesetzt wird", sich schneller aus als jenes, das im Buchungssystem abgesetzt wurde. Und eines, das man ins Betriebssystem gepflanzt hat, kommt - siehe auch die Versuche Cohens - rascher voran als eines, das im Datenbanksystem erzeugt wurde.

Da die eigentliche Ausbreitung eines Virus - denn es werden ja keinerlei weitere Funktionen ausgeführt - völlig neutral ist, hat der für ein Rechenzentrum Verantwortliche es schwer, Viren überhaupt aufzuspüren. Zusätzliche Kontrollen könnten eigentlich nur daran die Gegenwart von Viren erkennen, daß die Programme, infolge des zusätzlichen Codes, nun eine Spur langsamer laufen als sonst. Nur ist der Geschwindigkeitsunterschied leider so gering, daß er, in aller Regel, praktisch nicht bemerkt wird.

Bedingungen können mühelos gesetzt werden

Ist es, wie vorhin dargestellt, vielleicht noch möglich, unautorisierten Personen das Einpflanzen eines Virus zumindest stark zu erschweren, wenn man streng auf die Sicherheit des Computersystems achtet, so stellen die Dinge sich ganz anders dar, geht es bloß noch um die Frage des Auslösers. Denn wer ein Virus mit Auslöser eingepflanzt hat, kann dessen Wirksamwerden natürlich von praktisch jeder beliebigen Bedingung abhängig machen. Und damit auch von einer, die ganz mühelos gesetzt werden kann.

Dies wird klar, denkt man wieder an das Reisebüro mit seinem schönen Auskunfts- und Buchungs-Terminal. Denn hier kann der Saboteur, der das Virus eingeschleust hat, als Auslöser beispielsweise die folgende Abfrage vorgesehen haben: "Aktivitaten erst, wenn das Stichwort MIRACULA BELLA eingegeben wird".

Harmlose Anfrage nach schöner Insel

Der Einpflanzer des Virus kann nun geraume Zeit verstreichen lassen und so dem Virus zunächst Gelegenheit geben, sich im ganzen System auszubreiten. Und dann, wenn er praktisch sicher sein kann, daß jede Anfrage auf ein verseuchtes Stück Code stößt, kann er ganz harmlos nach Hotels auf der schönen Insel MIRACULA BELLA fragen. Die Folge: Kaum hat das nette Fräulein am Terminal die kritischen Zeichen eingetippt - schon verschwindet das gesamte, vielleicht landesweit aktive System diskret in seiner Endlosschleife. Oder tut irgendwas noch viel Schlimmeres. . .

Es könnte, nach allem bisher Gesagten, fast so aussehen, als wäre die Welt der EDV von jett an und für alle Zeiten schutzlos der - tödlichen - Gefahr viraler Infekte ausgeliefert. Doch ist dies wirklich so?

Leistung und Sicherheit sind gleichrangige Prinzipien

Dierstein, ein alter Hase auf dem Gebiet des Datenschutzes und der Datensicherung, ist da durchaus nicht ohne Zuversicht. Denn, so hebt er hervor, für EDV-Systeme gelte doch schon lange ein alter Grundsatz: Bei ihrer Konstruktion wie bei ihrem Einsatz hätten "Leistungsfähigkeit und Sicherheit" als "gleichrangige Grundprinzipien" behandelt zu werden. Nur so nämlich lasse sich die "Ordnungsmäßigkeit der Datenverarbeitung" sichern.

Und was nun speziell die Chancen betreffe, Viren rechtzeitig zu entdecken und sich selbst gar noch vor Infektionen zu schützen: Da gelte gleichfalls der bewährte Grundsatz, vorbeugen sei besser als heilen. Oder: Wer "die Sicherheit von vornherein, also schon bei der Entwicklung von DV-Systemen", miteinbeziehe, der habe gegen Viren sicherlich bessere Chancen als sein leichtsinnigerer Kollege.

Zwar, so betont jeder Kenner der Viren-Problematik, könne man die Frage nach der Entdeckbarkeit von Viren im allgemeinen nicht entscheiden; doch immerhin sei es möglich, iren, deren Aussehen man nun erst enmal kennt, durch Mechanismen afzuspüren, die exakt auf eben jenes Aussehen zugeschnitten sind. Und hat man sie erst mal entdeckt, so sei es dann "in aller Regel" auch möglich, sie zu zerstören oder doch weigstens unschädlich zu machen.

So kann man beispielsweise ein Programm schreiben, das die für unser Virus aus Folge I der Serie charakteristische Kennsequenz. "1234567" sucht und, im Falle eines "Treffers", eine Warnung ausdruckt und den Programmlauf abbricht; andernfalls hingegen wird das Programm einfach fortgesetzt.

Mit allein dieser Maßnahme, die natürlich die Kenntnis der erwähnten Folge "1234567" voraussett, läßt sich zunächst schon mal die Ausbreitung des Virus stoppen. Doch geht man einen Schritt weiter, so kann man leicht zu einem besseren Hilfsprogramm gelangen; und zwar zu einem, das nun auch noch aktiv versucht, aufgefundene infizierte Programme wieder vom Virus zu befreien.

Wer sich mit diesem Wechselspiel von Virus-Attacke und Gegenwehr nur erst mal intensiv auseinandersetzt, der fühlt sich rasch in einen Agentenkrimi mit Spionage, Gegenspionage und erneuter Gegen-Gegen-Spionage versetzt. Denn auch die eben beschriebenen, simplen Virus-Entdeckungs-Probleme können wieder, wie Dierstein warnt, "durch ein Virus umgangen werden". Es genüge nämlich, daß dieses zweite Virus - beziehungsweise dessen Entwickler. . .! - über den Mechanismus Bescheid weiß, nach dem das Entdeckungs-Programm arbeitet. Denn dann kann er ja, um im obigen Beispiel zu bleiben, die Kennung "1234567" durch die Kennung "asdfghj" ersetzen. . .

Wir müssen also fortan, meint Dierstein, mit dem "durchaus sinnvonen Gedanken" leben, daß in einem EDV-System "Viren und Abwehrmaßnahmen gleichzeitig nebeneinander existieren können"; wobei auch ohne weiteres denkbar sei, daß bestimmte Viren nur ganz bestimmte Teile des Systems infizieren können. Und faßt man diese Überlegungen noch ein wenig allgemeiner, so kommt man zu einem Konzept wonach sich "Abwehrmaßnahmen gegen ganze Klassen von Viren" sollten installieren lassen.

Nach Diersteins Ansicht liegt jetzt eine "sinnvolle und wichtige Forschungs- und Entwicklungsaufgabe" vor uns - und zwar die, nun endlich zu untersuchen, welchen Klassen von Viren man mit welchen Abwehrmaßnahmen wohl am besten zu Leibe rücken kann. Wobei dann, als nächster Schritt, natürlich versucht werden müsse, diese Maßnahme. "prophylaktisch in künftige, sichere Systeme" hineinzubringen.

Mit Aktionen wie diesen laßt sich so Dierstein, zwar vielleicht kein absoluter Schutz vor bösartigen Attacken erzielen, doch immerhin kann man eines erreichen: Das Risiko dem ein möglicher Eindringling sich gegenübersieht, wird größer. Und damit auch die Abschreckung. . .

Im übrigen aber folgt aus der Tatsache, daß Viren nicht exakt entdeckt werden können, eine weitere Aufgabe. Es gilt nun, meint Dierstein, den möglichen Mißbrauch von Systemen "so zu definieren, daß er entscheidbar und hinreichend leicht berechenbar ist".

Und er präzisiert, man könne dabei "durchaus in Kauf nehmen, daß man auf diese Weise eine ganze Reihe von Programmen ausfindig macht, die keine Viren sind". Und dabei, "andere, die Viren sind, sogar übersieht". Denn wichtig sei dabei nur, daß man sich sicher sei, "mit solchen Verfahren einen Großteil der Viren finden und ausschalten" zu können.

Weitere Maßnahmen zur wirksamen Heraufsetzung der Gefahrenschwelle nennt Dierstein summarisch "unpräzise" Aktionen.

Zu ihnen gehört beispielsweise, daß man Ereignisse, die üblicherweise nur selten auftreten, genau protokolliert; denn auf diese Art lasse sich so manche Auffälligkeit entdecken. Und guten Nutzen können auch Protokolle des Datenflusses bringen, überwacht man mit ihrer Hilfe "ganz bestimmte, als risikobehaftet bekannte Pfade" im System.

Denn natürlich seien "Benutzer die solche Pfade häufig benutzen", zwar nicht gleich verdächtig, aber doch "zumindest mit Sorgfalt zu beobachten". . .