Melden Sie sich hier an, um auf Kommentare und die Whitepaper-Datenbank zugreifen zu können.

Kein Log-In? Dann jetzt kostenlos registrieren.

Falls Sie Ihr Passwort vergessen haben, können Sie es hier per E-Mail anfordern.

Der Zugang zur Reseller Only!-Community ist registrierten Fachhändlern, Systemhäusern und Dienstleistern vorbehalten.

Registrieren Sie sich hier, um Zugang zu diesem Bereich zu beantragen. Die Freigabe Ihres Zugangs erfolgt nach Prüfung Ihrer Anmeldung durch die Redaktion.

10.04.1987 - 

Computerviren wie sie schaden was sie nutzen

Hygiene - das Gebot der Stunde (Teil 3)

Von CW-Mitarbeiter Egon Schmidt

So sehr die breitere Öffentlichkeit sich heute über das neue Konzept der "Computerviren" auch erregen mag und so real die Bedrohung, die von diesen infektiösen Eindringlingen ausgeht, auch wirklich sein mag - für Fachleute stellen selbst die raffiniertesten, bösartigsten und optimal getarnten Viren nichts grundlegend Neues dar. Denn das Problem der unerlaubten Verbreitung von Information innerhalb eines EDV-Systems ist in der Fachwelt schon seit Urzeiten bekannt.

Seit langem bekannt sind daher auch schon Systeme, die, von ihrer grundlegenden Ausgestaltung her, geeignet sind, keine illegale Informations-Ausbreitung zu gestatten. Und Experten wissen auch schon seit langem alle denkbaren Pfade, auf denen Informationen in einem System weitergeleitet werden, sorgsam zu klassifizieren. Wobei dann zwischen ordnungsgemäßen und rechtmäßig begehbaren Wegen einerseits und den restlichen andererseits unterschieden werden kann.

Für diese letzteren, also für die sogenannten "verdeckten Kanäle", gilt der alte Lehrsatz, daß man in ihnen grundsätzlich Schwachstellen der jeweils eingesetzten Betriebssysteme zu sehen habe. Und im Zusammenhang mit unserem Thema der Viren gilt weiterhin die - eigentlich doch überraschende - Feststellung, daß es dieser verdeckten Kanäle gar nicht bedarf, will man ein Virus flugs in alle Winkel eines Systems schicken. Wie ja auch Cohens Versuche gezeigt haben, der - siehe Folge I dieser Serie - bewußt vermieden hat, seine Experimente auf solche Schwachstellen zu gründen.

Sitzen Computerviren erst mal in einem System drin, so können sie vielerlei Aktivitäten entfalten. Wobei hier zunächst speziell jene Fälle von Wichtigkeit sind, in denen das Virus einfach den Zweck hat, bestimmte Funktionen des Systems zu blockieren; denn sich gegen solche Viren schützen zu wollen, sagt Rüdiger Dierstein von der Deutschen Forschungs- und Versuchs-Anstalt für Luft- und Raumfahrt in Oberpfaffenhofen bei München (DFVLR), bedeute, man müsse "in einem Rechner Stop-Programme entdecken". Diese Frage aber sei schlicht und einfach "unentscheidbar " .

Ein manchmal vorgeschlagener Weg zur Bekämpfung der Viren besteht darin, die "Informationsflüsse in einem System zu kennzeichnen und damit die Ausbreitung von Informationen in einem System zu überwachen" . Doch leider: auch hier haben Untersuchungen der letzten Jahre ergeben, daß "auch diese Aufgabe im allgemeinen nicht in endlicher Zeit lösbar ist" .

Nachdem es also schlecht um unsere Chance zu stehen scheint, Viren und die von ihnen auslösbaren Seuchen zu bekämpfen, scheint der beste Ansatzpunkt zur Abwehr dieser Gefahren woanders zu liegen. Und zwar da, wo es noch möglich ist, die Ausbreitung der Viren wenn schon nicht zu verhindern, so doch wenigstens nach Kräften zu erschweren und zu verlangsamen.

Befaßt man sich mit diesem Ansatzpunkt näher, so muß man laut Dierstein, der dabei übrigens ein beeindruckendes Fachwissen auszuspielen weiß, vor allem zwei grundlegende Fragen untersuchen. Und zwar einmal die nach der allgemeinen Art und Weise sowie nach dem Maß der Allgemeinheit, mit der in einem System Informationen interpretiert werden. Und zum zweiten die nach der Art und nach den Wegen, in der und auf denen ein System Informationen und Daten mehrfach zu benutzen gestattet. Wobei hier dann außerdem noch interessiert, "ob und wieweit diese Nutzung transitiv ist" .

Es geht also im ersten Fall um die Frage nach der sogenannten "turing capability" eines Systems. Und im zweiten um das Thema "information sharing".

Geht man in diesen beiden Teilkomplexen weiter ins computertechnische Detail, so ist zunächst daran zu erinnern, daß ein Virus ja überhaupt nur dann in ein EDV-System eingepflanzt werden kann, wenn der betreffende Mensch eine Schreibberechtigung vorweisen kann. Und diese Schreibberechtigung ist für die weitere Ausbreitung des Virus außerdem auch eine notwendige Voraussetzung; denn ohne sie ist "eine Reproduktion von Programmen generell nicht möglich", wie Dierstein präzisiert.

Nur wenige Programme sind wirklich sicher

Hat man die Absicht, ein sich selber reproduzierendes Programm - also ein Virus - auf den Marsch zu schicken, so ist überdies nötig, daß dieses Programm die Fähigkeit besitzt, seinen eigenen Programmcode als Ein- und Ausgabedaten zu benutzen. Dies aber ist wieder nur dann möglich, erläutert Dierstein seine Überlegungen, wenn das Programm "Befehle als Daten interpretieren" kann. Und mithin sei auch die "turing capability", also die "generelle Interpretierbarkeit von Daten", eine notwendige Voraussetzung für die Ausbreitung von Viren; ohne sie läuft nichts.

Das nun bedeutet im Gegenzug, daß Systeme, in denen kein Programm geändert werden kann und in denen keine Information benutzt wird, um Entscheidungen zu fällen, gegen Virus-Attacken praktisch "immun" sind; man nennt sie übrigens auch "Systeme mit einer Funktionalität erster Ordnung". Doch leider können solche Systeme höchstens für eng begrenzte und von vornherein fest definierte Aufgaben sinnvoll benutzt werden, nicht aber für das große und weite Feld der wissenschaftlichen Datenverarbeitung.

Unklar ist, ob diese Art der "sicheren" Systeme mit ihrer Funktionalität erster Ordnung nicht zumindest in Teilbereichen der Wirtschaft und der Verwaltung benutzt werden könnte. Denn

zumindest in einigen besonders sensiblen Bereichen könnte es doch sinnvoll sein, zugunsten eines Gewinns an Sicherheit ein Stück an Flexibilität zu opfern . . .

Wie weiter oben schon kurz bemerkt, können Viren sich außerdem nur dann in einem Rechnersystem ausbreiten und wirksam werden, wenn Daten gemeinsam genutzt werden; denn nur dann können Viren von einem Subjekt oder Objekt im System zu einem anderen gelangen. Dabei darf man unter Subjekt beziehungsweise Objekt beispielsweise einen Menschen oder auch ein Programm verstehen, das eine bestimmte Leistung des Systems aufruft. Man kann aber auch allgemein von einem "Benutzer" A oder B sprechen.

Infizierte SW-Bausteine kurbeln Vermehrung an

Gibt es also zwischen den Benutzern A und B keinen Kanal und damit auch keinen Datenfluß, so können auch keine Viren von A nach B geraten; "denn", so Dierstein, "Viren sind Programme, also Daten". Doch gibt es andererseits diese Art von Kanälen, so muß man beachten, daß dann "die Eigenschaft der gemeinsamen Daten-Nutzung transitiv ist". Es ist dann nämlich so, daß Daten oder eben Viren von A nach B und von B nach C gelangen können; also letztlich auch von A nach C und weiter. Was sich in Diersteins Unterlagen streng wissenschaftlich so liest: "Der Bereich, in dem sich ein Virus ausbreiten kann, ist deshalb im allgemeinen die transitive Hülle desjenigen Bereichs gemeinsam genutzter Daten, die vom Punkt der ersten Einpflanzung des Virus aus erreichbar sind."

Die transitiven Eigenschaften des "data sharing" sowie natürlich auch die "turing capability" eines Systems wirken in einer Weise zusammen, die den Viren in besonderem Maße Heimtücke verleiht. Denn nun können diese Fremdlinge, hat man sie nur erst mal ins System eingeschleust, auf "völlig legalen Pfaden" voranschreiten, wobei sie die Autorisierungen der schon infizierten Programme nutzen, um sich weiter fortzupflanzen. Das wiederum bedeutet ein in die Dienstprogramme oder gar in den Systemkern eines Rechners eingebrachtes Virus kann letztlich sämtliche Programme infizieren, die sich überhaupt im System finden lassen. Und Dierstein mahnt aus alter Erfahrung: "Das Einschleusen in den Kern wiederum ist oft einfacher, als es von außen den Anschein haben mag." Und insbesondere habe es wenig mit dem "üblichen, unerlaubten Zugriff auf Systemroutinen in Hacker-Manier" zu tun.

Time-sharing-Systeme haben keine Schutzbarriere

Läßt man sich das bisher Gesagte nüchtern durch den Kopf gehen, so erkennt man rasch, daß offene Time-sharing-Systeme der Ausbreitung eines Virus praktisch völlig offenstehen und daß nur Anlagen mit eingeschränkter Übertragbarkeit der Informationen ein gewisses Maß an Sicherheit zu bieten scheinen. Dierstein: "Das sind keine sonderlich rosigen Aussichten im Zeitalter des Time-sharing, des Rechnerverbunds, der Arbeitsplatzsysteme und der offenen Netze".

Sieht man also mal von Systemen mit eingeschränkter Transitivität, mit nur begrenzter Mehrfachnutzung, mit Beschränkung auf nur ganz wenige Aufgaben und mit blockierter "turing capability" ab, so sieht es einigermaßen düster aus. Zumal, wie Dierstein zu berichten weiß, selbst in gefährdeten Bereichen ad-hoc-Lösungen immer noch weiter verbreitet seien als "theoretisch fundierte, in allen Teilen überschaubare und kontrollierbare Maßnahmen" Und er bemerkt weiter, selbst im Bereich des Militärs sei immer noch die "Abschottung" das "am weitesten verbreitete Sicherungsprinzip"; und dies, obwohl es sich gerade hier und vor dem Hintergrund der auch in diesem Bereich immer weiter um sich greifenden Mehrfach-Nutzung von Netzen oder Systemen um ein "nicht sonderlich überzeugendes Prinzip" handle. . .

Wer sich um Maßnahmen zur Abwehr gefährlicher Viren bemüht, der erkennt rasch, wie löchrig heute meist noch die Vorhänge sind, die dem Schutze von DV-Anlagen dienen. So fehlten bislang bei noch jedem System, das auf seine Abschirmung gegen Viren getestet wurde, simple Mechanismen wie etwa ein Tracing zur Überprüfung, ob das Programm eines "Besitzers" A von irgendwelchen anderen Benutzern B aufgerufen worden ist. Doch solche Veränderungen sind unabdingbar, will man auch bloß die simpelsten Viren erfolgreich abschmettern.

Reinigungsprogramm soll Hilfe bringen

Haben sich aber Viren - vielleicht gerade wegen der unzureichenden Abschirmung - erst mal in einem System breitgemacht, so stellt sich, sofern man sie überhaupt entdeckt, prompt das Problem: Wie wird man die Biester wieder los? - Eine Aufgabe, die um so schwerer zu lösen ist, je weiter die Viren bereits in alle Winkel eines Systems vorgedrungen sind.

Nach Diersteins Erfahrungen dürfte es in den meisten Fällen nötig werden, ein spezielles "Reinigungsprogramm" zu entwickeln und dieses dann in einer Zeit einzusetzen, in der normale Betrieb der Anlage unterbrochen ist. Denn, so die Warnung des Fachmanns, sonst könnte "die Infektion sich rascher ausbreiten, als die Gegenmaßnahme der Ausbreitung folgen kann".

Beim "Desinfizieren" befallener Systeme seien im übrigen jene Gattungen Rechner im Vorteil, meint Dierstein, die abgeschlossene Untermengen aufwiesen. Denn bei ihnen könne man Teilsysteme im Normalbetrieb weiterlaufen lassen und gleichzeitig, in anderen Partien, dem Virus zu Leibe zu rücken versuchen.

Wichtig ist bei allen Überlegungen zum Thema Viren und deren Abwehr beziehungsweise Beseitigung, daß es anscheinend keine vollständige Lösung der Problematik geben kann. Denn sollte ein System gegen Virus-Attacken wirklich Sicherheit bieten, so müßte es "gegen den Datenfluß bei der Eingabe abgesichert werden". Und soll auch noch verhindert werden, daß aus einem System Informationen unzulässigerweise nach außen gelangen, so "ist (auch) der Datenfluß bei der Ausgabe zu sichern".

Und genau hier liegt eben das Problem: denn wie soll man dann noch Systeme betreiben, die eine gemeinsame Nutzung von Ressourcen oder von Daten erlauben? - Datenfluß in irgendeiner Form muß es in solchen Systemen ganz einfach geben.

Für den Praktiker, der sich nun natürlich vor ganz konkrete Entscheidungen gestellt sieht, hält Dierstein nach intensiver Diskussion aller Möglichkeiten den Rat bereit, für jeden einzelnen Anwendungsfall den optimalen, zwischen den jeweiligen Extremen der völligen Abschottung und der völligen Freizügigkeit liegenden Mittelweg zu suchen. Was übrigens nicht ausschließt, daß in manchen Fällen eben doch nicht ein exakt mittlerer Weg der richtige ist, sondern daß man dann besser daran tut, für "vollständige Isolierung und vollständige Einschränkung der Interpretation" (von Befehlen als Daten und umgekehrt) zu sorgen. Denn manche Aufgaben sind eben mit so hohen Risiken behaftet, daß einem verantwortungsbewußten DV-Manager keine andere Wahl bleibe. . .

Transaktionen gelten als Risikoträger

Und schließlich mahnt Dierstein noch eindringlich: Computer-Viren werden nicht von Ratten und Flöhen übertragen, sondern von Transaktionen, von Systemen und von System-Teilen. Und denen merkt man - ähnlich wie bei der Pest den Ratten und Flöhen - überhaupt nicht an, daß sie Viren tragen; denn, und gerade dies ist ja eines der Kennzeichen raffiniert im Verdeckten sich ausbreitender Viren, die Anwender- und Betriebssysteme funktionieren weiter, selbst wenn sie von Viren infiziert sind. Zumindest eine Zeit lang.

Sollte man da die Parallelen zwischen biologischen Viren und ihren modernen EDV-Abbildern nicht gleich noch ein wenig weiterführen? Und zwar mit Hinweis darauf, daß zum Beispiel die Pest sich erst seit jenen Tagen nicht mehr ausbreiten kann, seit man die Überträger, also die Flöhe und Ratten, unter Kontrolle hat? Und seit man allgemein für mehr Hygiene und Sauberkeit sorgt?

Für Dierstein ist eben dies ein ganz wichtiger Aspekt. Denn er sagt: "Wenn Betriebssysteme schon bei ihrer Konzeption ,hygienisch' aufgebaut werden, also ohne Tricks und Winkelzüge": dann wird es "schwerer, Viren in finsteren Programmwinkeln zu verstecken".

Softwarehygiene sollte zur Regel werden

Und so gesehen, können die neuen Gefahren der Viren letztlich sogar etwas Gutes haben. Denn vielleicht so hofft der Mann aus Oberpfaffenhofen, "bringt uns die Virusgefahr endlich dahin; diese längst fällige Hygiene als selbstverständliche Regel einzuführen . . ." Zeit wär's.