home *** CD-ROM | disk | FTP | other *** search
/ TopWare Tools / TOOLS.iso / tools / top1573 / einf.txt < prev    next >
Encoding:
Text File  |  1992-07-02  |  34.1 KB  |  723 lines

  1. ══════ Software Laboratory ══════════════════════════════════════════════════════
  2. Jürgen Liskowskis               Brückleweg 19              7845 Buggingen / Baden
  3. Programmierung                  Tel. 07631 - 2413          Fax: 07631 - 2449
  4. ═════════════════════════════════════════════════════════════════════════════════
  5. BTX - Mitteilungsdienst : 07631 - 2455                     Fu.: 0161 - 15 21 61 0
  6.  
  7.  
  8.   Abdruck und/oder Kopie und / oder die Verwendung in elektronischen
  9.   Datenverarbeitungsanlagen nur mit unserer ausdrücklichen schriftlichen
  10.   Genehmigung. Beachten Sie bitte unsere Lizenzbestimmungen !
  11.  
  12.   ──────────────────────────────────────────────────────────────────────
  13.       Copyright (c) 1991,1992  Software Laboratory Jürgen Liskowskis
  14.   ──────────────────────────────────────────────────────────────────────
  15.  
  16.   ║ Einführung in die Problematik Computerviren
  17.   ╚════════════════════════════════════════════
  18.  
  19.   Aus unserer nunmehr vierjährigen Erfahrung in der Bekämpfung von Computer-
  20.   viren, lassen sich einige Rückschlüsse ziehen. Zum einen mahm die Zahl
  21.   der Vorfälle mit Computerviren stetig zu. Sowohl die Anzahl der Virus-
  22.   programme als auch die der betroffenen Systeme sind unproportional
  23.   gestiegen. Allein in unserem Hause werden pro Jahr etwa 500 Virusvorfälle
  24.   bearbeitet. Die Tendenz ist steigend. Im abgelaufenen Jahr 1991 leisteten
  25.   wir bei etwa 700 Virusvorfällen Hilfe. Dabei ist nicht nur der private
  26.   Computeranwender betroffen. Industrieunternehmen, Hochschulen, Institute
  27.   wie Krankenhäuser oder Ämter stellen einen weiteren großen Teil betroffener
  28.   Anwender dar.
  29.  
  30.   Dabei nehmen wir eine zusätzliche extrem hohe Dunkelziffer von Vorfällen
  31.   an. Viele Anwender denken immer noch an eine Schande, falls sie selbst
  32.   betroffen werden. Insbesondere ist dieses Denken bei Softwareunternehmen
  33.   anzutreffen. Der Gedankengang reicht vom Verlust des guten Rufes bis hin
  34.   zur Geschäftsschädigung.
  35.  
  36.   Zum anderen gehört die Anwendung von Anti-Virus-Programmen heute schon
  37.   zum guten Ton. Jeder Softwarehändler der etwas auf sich hält, wirbt in
  38.   seinen Anzeigen mit Aussagen wie : "Nur virengeprüfte Software" oder
  39.   "garantiert Virusfrei". Die Anwendung von guter und brauchbarer Soft-
  40.   ware zum Erkennen und Beseitigen von Computerviren halten wir für sehr
  41.   lobenswert. Nur, und an dieser Stelle sitzt der Hase im Pfeffer, es reicht
  42.   ausschließlich aus um das Gewissen des Händlers und des Kunden zu beruhigen.
  43.   An dieser Stelle sind weniger Programme gefragt sondern eine komplette
  44.   Konzeption für den jeweiligen Händler. Jeder der Programme erwirbt hat das
  45.   Recht ein Programm zu erhalten welches wirklich frei von Computerviren ist.
  46.   Später zu diesem Punkt mehr.
  47.  
  48.   Zeitschriften berichten fast in jeder Ausgabe von neu entdeckten Viren.
  49.   Der normale Anwender ist hoffnungslos in dieser Thematik überfordert.
  50.   Es wird Zeit, daß vernünftige, aussagefähige und vor allen Dingen sachliche
  51.   Informationen zur Verfügung gestellt werden. Das Angstdenken der Anwender
  52.   muß aufhören. Zeitschriften, die einen Aufruf oder einen Wettbewerb starten
  53.   um Ihre Leser zu animieren selbst Computerviren zu schreiben, sollten mit
  54.   einem Bannfluch belegt werden. Anstatt Ihre Leser über die Gefahren und
  55.   Gegenmaßnahmen zu informieren, tritt hier der exakt umgekehrte, negative
  56.   Effekt ein.
  57.  
  58.   Die Entwicklung von Computerviren läuft weltweit. Eine regionale Begrenzung
  59.   kann nicht mehr gezogen werden. Waren es vor einigen Jahren noch fast
  60.   ausnahmslos Virusprogramme, die in den Industrieländern entwickelt wurden
  61.   - soweit man diese Aussage überhaupt in Zeiten der Datenfernübertragung
  62.   richtig treffen kann - kommen heute viele der neueren Viren aus Staaten
  63.   die als Entwicklungsland der Computertechnik angesehen werden. Im letzten
  64.   Jahr kam eine Welle von Virusprogrammen aus den UdSSR, Bulgarien, Indien
  65.   und Afrika zu uns. Wir müssen einsehen, daß es in diesen Ländern trotz
  66.   unzureichenden Bruttosozialproduktes doch einige gewiefte Köpfe gibt.
  67.   In Zeiten weltumspannender Netzwerke ist es völlig egal, an welcher Stelle
  68.   der Erde jener Computer angeschlossen ist, von dem ein Virus verbreitet
  69.   werden soll.
  70.  
  71.   Im Laufe der Zeit wurden Virenprogramme immer besser programmiert. Routinen
  72.   die einem ahnungslosen Opfer falsche Werte vorgaukeln, wurden in
  73.   verschiedene Viren intregiert. Fast unsichtbare Virenprogramme sind das
  74.   Resultat. Für den Laien sind sie sehr sehr schwer zu erkennen; für den
  75.   Fachmann eine arbeitsintensive Herausforderung.
  76.  
  77.   Die Entdeckung und somit eine evtl. mögliche Vernichtung der Virenprogramme
  78.   wird immer aufwendiger, sei es nun in den Softwaremaßnahmen oder in den
  79.   benötigten Rechenzeiten für die Erkennungsprogramme. Es gibt nun einmal
  80.   keinen sicheren Computer, diese Einsicht trifft viele schwer, aber es
  81.   ist immer besser und vernünftiger, sich vor einem Virusangriff Gedanken
  82.   zu machen. Danach kann es zu spät sein.
  83.  
  84.   Jeder Anwender eines Computersystemes muß heute damit rechnen, daß auch
  85.   er betroffen sein wird. Alle, die diese Erfahrung schon gemacht haben,
  86.   können sicherlich ein Liedchen davon singen. Es muß wohl nicht betont
  87.   werden, was es heißt auf die Arbeit von Wochen oder Monaten verzichten zu
  88.   müssen.
  89.  
  90.   Leider verfallen immer noch Anwender in reges Staunen wenn das Wort
  91.   Computervirus fällt. Gehört haben die meisten schon davon, aber was
  92.   ist das denn, ein Computervirus ? Gibt es etwas wirklich ? JA !
  93.  
  94.  
  95.  
  96.   │ Allgemeine Eigenschaften von Computer-Viren
  97.   └────────────────────────────────────────────
  98.  
  99.   Computer-Viren sind unselbständige Programmstücke, die sich an
  100.   Programme oder an Teile des Betriebssystemes ankoppeln. Das war's.
  101.   Einfach nicht wahr ? Im großen und ganzen stimmt diese Aussage. Ab-
  102.   weichungen bestätigen - wie in jedem anderen Bereich auch - die Regel.
  103.   Schauen wir diesen Abweichlern mal genauer auf die Finger.
  104.  
  105.   Von oberflächlichen Vergleichen abgesehen, haben Computer-Viren keine
  106.   Ähnlichkeit mit biologischen Viren, zumal heutige Computersysteme kein
  107.   Immunsystem haben. Computer-Viren sind eine spezielle Form selbst-
  108.   reproduzierender Programme. Selbstreproduzierend heißt ein Programm,
  109.   wenn es die Aufgabe erfüllt:
  110.  
  111.  
  112.         Schreibe ein Programm, das sich selbst schreibt !
  113.         ─────────────────────────────────────────────────
  114.  
  115.  
  116.   Unlösbar ? Bei weitem nicht. Diese Art der Programmiertechnik wird in
  117.   einigen Bereichen der Softwareerstellung genutzt (Compilerbau).
  118.   Jeder etwas gute Programmierer wird diese Aufgabe erfüllen können.
  119.   Werden Programme gefertigt, die lauffähigen Code in Dateien schreiben,
  120.   müssen diese Dateien später nur noch aufgerufen werden. Dieses Spiel
  121.   kann man, wenn es gewünscht wird, auf die Spitze treiben. Sicher, der
  122.   Vergleich hinkt ein wenig, aber die Technik wird jedem einleuchten.
  123.  
  124.  
  125.       Pseudocode Virus (sehr einfach)
  126.  
  127.     öffne Datei;
  128.       stelle Dateilänge fest;
  129.       addiere länge Viruscode zur Dateilänge;
  130.       schreibe Sprungbefehl als ersten ausführbaren Befehl ins Programm
  131.            und springe ans Dateiende;
  132.       schreibe ab Originaldateiende Viruscode;
  133.       schreibe Sprungbefehl zur Rücksprungadresse;
  134.     schließe Datei;
  135.  
  136.  
  137.  
  138.       Pseudocode Virus (noch einfacher)
  139.  
  140.     öffne Datei;
  141.       schreibe ab Dateianfang Viruscode;
  142.     schließe Datei;
  143.  
  144.  
  145.  
  146.   │ Geschichtlicher Rückblick
  147.   └──────────────────────────
  148.  
  149.   Der Begriff Computer - Virus wurde (etwa 1981) von Prof. Len Adelmann
  150.   (Universität von Süd - Kalifornien) geschaffen, als dieser mit seinen
  151.   Doktoranden Fred Cohen über die Möglichkeit selbst-reproduzierender
  152.   Programme diskutierte. In verschiedenen Vorträgen und in seiner 1985
  153.   veröffentlichen Dissertation hat Fred Cohen vorgeführt, wie sich
  154.   einfache Computer-Viren in einem UNIX-System auf andere Programme
  155.   übertragen lassen. Doch schon zuvor, und zwar in den Jahren 1980 und 1981
  156.   hat an der Universität Dortmund J. Kraus seine Arbeiten zum Thema selbst-
  157.   reproduzierende Software vorgestellt. Leider sind in Deutschland diese
  158.   Arbeiten nicht sehr bekannt. Es muß aber gesagt werden, daß Kraus sich
  159.   deutlich früher wissenschaftlich mit diesem Thema befaßte. Diese Arbeiten
  160.   blieben fast ohne Beachtung. Erst als die Zeitschrift "Der Spiegel" im
  161.   Jahre 1984 Aktivitäten in dieser Hinsicht publik machte, wurde das Thema
  162.   der Öffentlichkeit vorgestellt.
  163.  
  164.   Die Programmierung von Computerviren wurde zu diesem Zeitpunkt inter-
  165.   essant. Einige Zeitschriften förderten dieses, indem sie detaillierte
  166.   Anweisungen zur Programmierung von Computerviren veröffentlichten. Lauf-
  167.   fähige Sourcen wurden abgedruckt und dem interessierten Hobby-Virusbauer
  168.   zur Verfügung gestellt. Bücher wurden geschrieben in denen ein lauffähiger
  169.   Viruscode in allen Einzelheiten gedruckt wurde. Die Buchautoren waren in
  170.   einigen Fällen sehr bekannte Virusspezialisten, die sich heute mit der
  171.   Virusbekämpfung beschäftigen. Einige der vor Jahren abgedruckten
  172.   Virusprogramme wurden im Laufe der Zeit so geändert, daß sie heute noch
  173.   Probleme bei verschiedenen Anwendern verursachen.
  174.  
  175.  
  176.   │ Vergleich von biologischen Viren und Computer-Viren
  177.   └────────────────────────────────────────────────────
  178.  
  179.   Auf den ersten Blick scheinen sich die Computerviren wie biologische
  180.   Viren zu verhalten. Außerhalb lebender Organismen sind biologische
  181.   Viren tot, sie können sich sogar zu Kristallen anordnen. Von den
  182.   Schlüsselprozessen des Lebens weisen Viren also nur Reproduktionen
  183.   und Mutation auf. Das auch nur dann, wenn fremde Stoffwechsel
  184.   Baustoffe und Energie zur Verfügung stellen. Diese Zusammenhänge sind
  185.   in ähnlicher Form auch bei selbstreproduzierenden Programmen festzustellen.
  186.  
  187.   Solange ein selbstreproduzierendes Programm sich nicht im Speicher einer
  188.   Rechenanlage befindet, kommt ihm bis auf seinen Informationsgehalt keine
  189.   Bedeutung zu. Erst im Rechner und auch dann erst wenn das Programm
  190.   wirklich läuft, ist ein selbstreproduzierendes Programm in der Lage sich
  191.   zu reproduzieren. Dem Programm steht dann Energie, die vom Rechner
  192.   geliefert wird, zur Verfügung. Fremde Stoffwechsel (Programme) stehen
  193.   der selbstreproduzierenden Software ebenfalls zur Verfügung.
  194.  
  195.   Es hat sich allgemein durchgesetzt als Begriffsbestimmung der beiden
  196.   Arten folgendes zu vereinbaren:
  197.  
  198.   - Das biologische Virus.
  199.  
  200.   - Der Computer - Virus.
  201.  
  202.  
  203.   │ Voraussetzungen für die Existenz von Computer-Viren
  204.   └────────────────────────────────────────────────────
  205.  
  206.   Generell Voraussetzung für Computerviren bildet die heute übliche,
  207.   logische Struktur unserer Rechner. Unsere modernen Rechnerarchitekturen
  208.   ("Von Neumann Rechner") erfüllen durch die Gleichbehandlung von Daten
  209.   und Programmen diese wichtigste Voraussetzung für die Existenz von
  210.   Computer - Viren.
  211.  
  212.   Bei den weit verbreiteten DOS-Rechnern besteht die einzige Mög-
  213.   lichkeit, für den Rechner zu unterscheiden ob es sich um Daten oder ein
  214.   aufrufbares Programm handelt, in den Unterschieden der Dateinamen. So
  215.   wird jeder Rechner eine Textdatei, die einfach in eine Command-Datei
  216.   umbenannt wird, aufrufen. Ausführen ist eine andere Sache. Es kommt mit
  217.   hoher Wahrscheinlichkeit zu einem Absturz oder zum Aufhängen des Rechner-
  218.   systemes.
  219.  
  220.   Bei früheren Rechnern, die über Lochkarten oder Lochstreifen gefüttert
  221.   wurden, ist ausgeschlossen daß ein Programm selbstständig in ein anderes
  222.   eingreift und dieses somit verändert. Aber seit der Einführung der
  223.   Speichermedien Diskette und Festplatte, sind diese Zeiten vorbei.
  224.  
  225.  
  226.  
  227.   │ Überblick über Computer - Viren
  228.   └────────────────────────────────
  229.  
  230.   Prinzipiell sind Virenprogramme eben Programme bzw. unselbständige Pro-
  231.   grammstücke. Sie sind Software wie jedes andere Programm auch. Viren-
  232.   programme verfolgen - bis auf einige bekannte Ausnahmen - eine Absicht. Die genannte
  233.   Ausnahme trifft auf Viren zu, die nichts anderes machen, als sich zu
  234.   reproduzieren. Aber auch die alleinige Reproduktion ist ein Schadens-
  235.   mechanismus.
  236.  
  237.   In diesem Punkt kann man sie durchaus mit anderen Programme wie eine
  238.   Textverarbeitung oder ein Kalkulationsprogramm vergleichen. Ihre Aufgabe
  239.   unterscheidet sie jedoch von anderen herkömmlichen Programmen. Da jemand,
  240.   der sich ein Computervirus einhandelt, die verfolgte Absicht dieses
  241.   Programmes im Normalfall nicht kennt, sind die Reaktionen auf Viren weit
  242.   gestreut. Sie reichen von "Das kümmert mich wenig" bis zur Panik. Die
  243.   sachliche Auseinandersetzung mit dem Virenprogramm fehlt völlig.
  244.  
  245.  
  246.  
  247.  
  248.   │ Aufbau eines Computer-Virus
  249.   └────────────────────────────
  250.  
  251.   Ein Virus besteht in fast allen Fällen aus quasi drei Programmteilen.
  252.   Ein Programmteil steuert die Fortpflanzung, ein Programmteil - ich nenne
  253.   dieses Programmteil Aktivator - übernimmt die Auslösung des dritten
  254.   Programmteiles, den Kern des Virus. Im Kern - lassen Sie es mich so
  255.   nennen - ist die auszuführende Arbeit des Virus programmiert. Soll das
  256.   Virusprogramm die Festplatte formatieren, so ist die Formatierroutine
  257.   im Viruskern programmiert. Beide andere Teile sind nur Zubringer um
  258.   diesen Zweck unter bestimmten Bedingungen zu erfüllen. Außerdem stellen
  259.   die Teile Fortpflanzung und Aktivator sicher, daß der Virus nicht
  260.   vorzeitigt entdeckt wird.
  261.  
  262.  
  263.   Eine klassische Aufgabenteilung.
  264.  
  265.   Computer - Viren besitzen:
  266.  
  267.    1.) Einen Ausbreitungs- oder "Infektions" - Teil,  ( = Fortpflanzung)
  268.  
  269.    2.) einen Wirkungsteil sowie                       ( = Kern)
  270.  
  271.    3.) einen Aufrufteil.                              ( = Aktivator)
  272.  
  273.  
  274.   Aus weiteren Quellen kann die Namensgebung dieser drei Programmteile
  275.   sicherlich differenzieren. Der Aktivator wird beispielsweise auch als
  276.   Trigger bezeichnet.
  277.  
  278.  
  279.  
  280.   │ Infektionsmechanismen
  281.   └──────────────────────
  282.  
  283.   Als klassische Infektionsmechanismen sind eigentlich zwei unterschiedliche
  284.   Verfahrensweisen zu nennen.
  285.  
  286.  
  287.   Betrachten wir zur Einführung einmal die Arbeitsweise eines "File - Virus".
  288.   (Diese Art Viren werden auch Link - Viren genannt.) Ohne auf Details
  289.   einzugehen, arbeitet diese Art von Viren nach etwa folgendem Schema:
  290.  
  291.  
  292.   │ Schematischer Ablauf einer Infektion
  293.   └─────────────────────────────────────
  294.  
  295.   Schritt 1.) Suche ein Opfer.
  296.  
  297.   Schritt 2.) Stelle fest, ob das Opfer bereits mit DIESEM Virus infiziert
  298.           ist. Liegt eine Infektion vor, so suche ein weiteres Opfer.
  299.           (Klappt in der Praxis in einigen Fällen nicht so wie es hier
  300.           theoretisch dargestellt ist.)
  301.  
  302.   Schritt 3.) Wenn die Infektionsbedingungen (soweit vorhanden) erfüllt sind,
  303.           bringe eine Kopie des Computer-Virus in das Opfer ein.
  304.  
  305.   Schritt 4.) Prüfe, ob noch weitere Opfer gesucht werden sollen, falls ja:
  306.           suche ein weiteres Opfer.
  307.  
  308.   Schritt 5.) Sofern die vorgegebenen Bedingungen erfüllt sind, führe
  309.           Aktion aus.
  310.  
  311.   Schritt 6.) Sorge dafür, daß das Wirtsprogramm seine normale Tätigkeit
  312.           aufnehmen kann, sofern die Aktion dies zuläßt.
  313.  
  314.  
  315.   Exkurs:     Dieser Punkt stimmt nicht immer. Bei überschreibenden Viren
  316.            kann das Wirtsprogramm seine Aufgabe nicht mehr erfüllen.
  317.           Da überschreibende Viren allerdings recht schnell entdeckt
  318.           werden, beobachten wir, daß neuere Generationen von Computer-
  319.           viren fast ausnahmslos keinen Überschreibungsmechanismus
  320.           verwenden.
  321.  
  322.  
  323.  
  324.   │ Konkreter Ablauf einer Infektion (Beispiel)
  325.   └────────────────────────────────────────────
  326.  
  327.   Um die konkrete Arbeitsweise zu verdeutlichen, betrachen wir nochmals
  328.   ein File- oder Link-Virus. Wichtig für unsere Betrachtung ist, daß
  329.   es völlig gleichgültig ist, aus welcher Quelle das Virus stammt. Nehmen
  330.   wir an, der Virus stammt aus einem Anwenderprogramm bzw. Trägerprogramm,
  331.   das Sie auf einer Diskette bekommen haben. Da Sie neugierig auf dieses
  332.   neue Programm sind, starten Sie es.
  333.  
  334.   Zuvor sehen wir uns Ihr Programm in einer vereinfachten grafischen
  335.   Darstellung an. So könnte Ihr vollständiges Programm aussehen:
  336.  
  337.   ┌───────────────────────────────────────────────┐   Der dargestellte
  338.   │ ┌───┬────┬─────────────────────┬────────┬───┐ │   äußere Rahmen
  339.   │ │ S │ Sp │ Trägerprogramm      │ Virus  │ R │ │   symbolisiert bei
  340.   │ └───┴────┴─────────────────────┴────────┴───┘ │   diesem Beispiel
  341.   └───────────────────────────────────────────────┘   Ihren Verzeichnis-
  342.                               eintrag.
  343.  
  344.       S  = Signatur (Kennbytes)
  345.  
  346.       Sp = Sprungbefehl
  347.  
  348.       R  = Rücksprunganweisung
  349.  
  350.  
  351.   Somit besteht Ihr Programm nicht nur aus dem erwarteten Programm, sondern
  352.   beinhaltet auch den kompletten Virus sowie alle nötigen Sprunganweisungen
  353.   um Ihr Programm weiterhin einwandfrei arbeiten zu lassen. Die Spaltengröße
  354.   wurde bei diesem Beispiel willkürlich gewählt und sollte Sie zu keinen
  355.   Rückschlüssen auf eine tatsächliche Virusgröße veranlassen. Die Kennbytes
  356.   des jeweiligen Virus können sich an jeder Stelle des infizierten Programmes
  357.   befinden.
  358.  
  359.   Der eigentliche Virus besteht (in fast allen Fällen) wie oben gesagt aus
  360.   drei Teilen.
  361.  
  362.         ┌──────┬───────────┬─────────────┐
  363.         │ Kern │ Aktivator │  Infektion  │
  364.         └──────┴───────────┴─────────────┘
  365.  
  366.   Dabei ist es unerheblich in welcher Reihenfolge die drei Teile programmiert
  367.   bzw. angeordnet wurden. Nun sehen wir uns einen der möglichen Infektions-
  368.   wege einmal genauer an.
  369.  
  370.   Sie starten Ihr Programm welches den Virus enthält. Um den Virus die größt-
  371.   mögliche Chance der Fortpflanzung zu geben, wird bei dem Programmstart als
  372.   erster Befehl das Trägerprogramm übersprungen, der Fortpflanzungsmechanismus
  373.   aktiviert und danach erst das Trägerprogramm ausgeführt. Auch diesen Programm-
  374.   ablauf schauen wir uns in einer Grafik an. Dazu wurden die einzelnen Pro-
  375.   grammteile getrennt.
  376.  
  377.   Start:
  378.         ┌────┐
  379.     1.  │ Sp │
  380.         └────┘
  381.           │          ┌────────────────┐
  382.           │  ┌──> 5. │ Trägerprogramm │
  383.           │  │       └────────────────┘
  384.           │  │
  385.           │  │           ┌───────────────────┐
  386.           │  └──────── 4.│ 2. Trägerprogramm │ <──┐
  387.           │              └───────────────────┘    │
  388.           │                                       │
  389.           │                                       │        ┌────┐
  390.           │                                       └───── 3.│ S  │ <───┐
  391.           │                                                └────┘     │
  392.           │                                                           │
  393.           │              V I R U S                                    │
  394.           │     ┌──────┬───────────┬─────────────┐                    │
  395.      2.   └──>  │ Kern │ Aktivator │  Infektion  │ ───────────────────┘
  396.             └──────┴───────────┴─────────────┘
  397.  
  398.  
  399.   1.) Sprungbefehl zum Virus.
  400.  
  401.   2.) Die Virusbefehle werden abgearbeitet.
  402.  
  403.   3.) Suche nach neuem Trägerprogramm.
  404.  
  405.   4.) Infizieren vom neuen Trägerprogramm.
  406.  
  407.   5.) Abarbeitung des ursprünglichen Trägerprogrammes.
  408.  
  409.  
  410.   Beim Start des infizierten Programmes wird durch den Sprungbefehl zuerst
  411.   auf den Virus gesprungen. Der Virus arbeitet seine vorprogrammierte
  412.   Fortpflanzung ab. [Suche ein Opfer.]  Nach der Prüfung der Kennbytes
  413.   wurde festgestellt, das sich DIESER Virus noch nicht im zweiten
  414.   Trägerprogramm befand. Dementsprechend wurden die Schritte drei und vier
  415.   ausgeführt und der Virus hat sich erfolgreich fortgepflanzt. Nach dem
  416.   Schreiben des virulenten Programmcodes in das zweite Trägerprogramm wird
  417.   die Abarbeitung des ursprünglichen Trägerprogrammes fortgesetzt. Die
  418.   genannten Schritte geschehen mit großer Geschwindigkeit. Ein unbedarfter
  419.   Anwender merkt bis zu diesem Zeitpunkt vielleicht nur ein kurzes Aufleuchten
  420.   der Festplattenleuchtdiode. Wenn die Fortpflanzung des Virus gesichert ist,
  421.   und die Bedingung für das aktiv werden wurde noch nicht erfüllt, wird die
  422.   Kontrolle durch die Rücksprunganweisung wieder an das Trägerprogramm zurück
  423.   gegeben.
  424.  
  425.   Bis auf den Programmcode, der die beiden Trägerprogramme von einander unter-
  426.   scheidet, hat der Virus eine Kopie von sich selbst erstellt. Das neu
  427.   infizierte Trägerprogramm hat wiederum folgenden Aufbau:
  428.  
  429.         ┌───────────────────────────────────────────────┐
  430.         │ ┌───┬────┬─────────────────────┬────────┬───┐ │
  431.         │ │ S │ Sp │ 2. Trägerprogramm   │ Virus  │ R │ │
  432.         │ └───┴────┴─────────────────────┴────────┴───┘ │
  433.         └───────────────────────────────────────────────┘
  434.  
  435.   Ein geschlossener Kreislauf, der nur durch die Befehle des Infektions-
  436.   teils gesteuert wird.
  437.  
  438.  
  439.  
  440.   │ Unterscheidungsmerkmale der Computer-Viren
  441.   └───────────────────────────────────────────
  442.  
  443.   Viren können, außer nach ihrer Bösartigkeit, nach der Art Ihrer Verbreitung
  444.   eingeteilt werden. Im besonderen unterscheidet man zwischen den sogenannten
  445.   System - Viren, die sich bestimmter Funktionen des Betriebssystemes bedienen,
  446.   und File- oder Link - Viren die sich in Anwenderprogramme einpflanzen. Des-
  447.   weiteren gibt es schon Mischformen beider Virenarten.
  448.  
  449.  
  450.  
  451.   │ Boot-Sektor-Viren
  452.   └──────────────────
  453.  
  454.   Diese Art Viren installiert sich in einem Gebiet auf der Diskette/Fest-
  455.   platte das während des PC-Startes eine Rolle spielt (Bootsektor). Die
  456.   Erstinfektion dieses Virentyps tritt mit dem Booten des PC (oder Reset
  457.   mit Crtl-Alt-Del) mit einer infizierten Diskette von dem Floppylaufwerk
  458.   A: auf. Eine einmal infizierte Festplatte kann fast jede Diskette die in
  459.   ein Laufwerk des Computers gesteckt wird infizieren. Diese Virusart kann
  460.   sich auch danach sehr schnell über verschiedene PC's verbreiten, wenn
  461.   Disketten ausgetauscht werden. Der bekannte PING-PONG Virus fällt in
  462.   diese Kategorie.
  463.  
  464.  
  465.   │ Com-File-Viren
  466.   └───────────────
  467.  
  468.   Diese Viren verbreiten sich durch infizieren von Programmen bei denen der
  469.   Filename auf COM endet. Das Virus wird in dem Moment aktiv sobald ein
  470.   infiziertes Programm gestartet wird. Da diese Virusart sich fast immer
  471.   speicherresident laden kann, bleiben sie im Speicher des Computers und
  472.   infizieren andere Programme (COM-Files) bei deren Programmstart. Nach dem
  473.   Einschalten des Rechners ist der Hauptspeicher zuerst frei von Viren.
  474.   Wird jedoch ein befallenes Programm gestartet, kann sich der Virus
  475.   sofort im Speicher installieren und infiziert virenfreie Programme bei
  476.   deren Aufruf.
  477.  
  478.  
  479.   │ Exe-File-Viren
  480.   └───────────────
  481.  
  482.   Diese Virenart ist mit den COM-FILE-VIREN vergleichbar, nur infizieren
  483.   sie ausschließlich Programme mit der Extention EXE.
  484.  
  485.  
  486.   │ Com- und Exe-File Viren
  487.   └────────────────────────
  488.  
  489.   Eine Mischform der beiden vorhergehenden Viren; sowohl COM- als auch EXE-
  490.   Files können von dieser Virenart infiziert werden. Ein Beispiel dieser
  491.   relativ schlimmen Sorte von Viren ist der gefürchtete DATACRIME II - Virus.
  492.  
  493.  
  494.  
  495.   │ Sonderformen
  496.   └─────────────
  497.  
  498.   Neben den genannten Typen von Viren gibt es noch einige andere, die ich
  499.   unter dem Begriff Sonderformen gesammelt habe. Zu diesen weiteren Viren-
  500.   formen gehören einmal die Viren, die in einer BATCH-Datei (Sie lesen
  501.   richtig !) enthalten sein können. Grundsätzlich ist es möglich, ein Virus
  502.   als BATCH zu erstellen, wenn der BATCH Zugriff auf den Kommandointerpreter
  503.   (COMMAND.COM bei MS-DOS - Systemen) sowie auf die beiden DOS-Programme
  504.   DEBUG und EDLIN hat. Bei einer normalen Rechnerkonfiguration ist dies
  505.   fast immer anzunehmen.
  506.  
  507.   Weiterhin hat es Viren gegeben, die sich nur eine bestimmte Zeit in der von
  508.   Ihnen befallenen Software aufhalten und sich danach selbsttätig wieder
  509.   entfernen. Die von dieser Virenart befallene Software kann danach durchaus
  510.   noch lauffähig sein.
  511.  
  512.   Die Sonderformen stellen jedoch nur einen kleinen Promilleanteil aller
  513.   Virenfälle dar.
  514.  
  515.  
  516.  
  517.   │ TROJANISCHE - PFERDE
  518.   └─────────────────────
  519.  
  520.   Als trojanische Pferde bezeichnet man Programme, die eigentlich keine
  521.   Virenprogramme sind. In Ihrer Gefährlichkeit stehen sie den Viren
  522.   in keiner Weise nach. Deshalb sind auch sie erwähnenswert. Ein trojanisches
  523.   Pferd, ist ein Computerprogramm, welches vom Anwender unbemerkt eine
  524.   zweite Aufgabe erledigt. Während der Anwender das Programm nutzt,
  525.   formatiert es beispielsweise unbemerkt und fröhlich die Festplatte.
  526.  
  527.   Im Winter 1989 / Frühjahr 1990 ist ein sehr gefährliches trojanisches Pferd
  528.   in der Computerszene aufgetaucht. Es handelte sich um ein Programm zum
  529.   Einschätzen des AIDS-Risikos, das in sehr großen Stückzahlen in Europa
  530.   verschickt wurde. Dieses trojanische Pferd verschlüsselt die Festplatte
  531.   und sperrt diese nach neunzig Bootvorgängen. Ein Gegenprogramm sollen die
  532.   betroffenen Nutzer nach einer Zahlung eines Betrages auf ein Konto in
  533.   Panama erhalten.
  534.  
  535.   Erstaunlicherweiese fand sich folgender Text in der Programmdokumentation:
  536.  
  537.   " In case of breach of license, PC Cyborg Corporation reserves the right
  538.     to use program mechanisms to ensure termination of the use of these
  539.     programs. These program mechanisms will adversely affect other program
  540.     applications on microcomputers. You are hereby advised of the most
  541.     serious consequences of your failure to abide by the terms of this
  542.     licence agreement. "
  543.  
  544.   Sinngemäß übersetzt bedeutet der Text, daß sich die Versandfirma PC Cyborg
  545.   Corporation das Recht herausnimmt, ihre Software mit einem Mechanismus
  546.   auszustatten, der es ermöglichen soll, die Rechte an der Software zu wahren.
  547.   Weiterhin wird darauf hingewiesen, daß dieser Softwaremechanismus in der
  548.   Lage ist, auch andere Applikationen auf dem Rechner anzugreifen.
  549.  
  550.   Weiter fand sich auch der folgende Text in der Programmdokumentation:
  551.  
  552.   " Warning: Do not use these programs unless you are prepared to pay
  553.          for them. "
  554.  
  555.   Übers.: "Warnung: Benutzen Sie dieses Programm nicht, wenn Sie nicht
  556.             darauf vorbereitet sind dafür zu bezahlen."
  557.  
  558.   Betrachtet man nun die Freudigkeit, mit der Dokumentationen gelesen werden,
  559.   so kommt man schnell zu dem Schluß wie viele Anwender auf so ein Programm
  560.   "reinfallen". In der Tat waren es bei dem AIDS-Trojaner nicht nur kleine
  561.   und mittlere Firmen sondern auch einige führende Industrieunternehmen und
  562.   Banken.
  563.  
  564.   Trojanische Pferde sind auch für Anwender, die Mailboxen oder Public-
  565.   Domain-Server nutzen eine besondere Gefahr. Durch vielversprechende
  566.   Namen und Beschreibungen wird der Mailboxnutzer dazu animiert, diese
  567.   Software auf den eigenen PC zu übertragen und dort auszuführen. Zur
  568.   Überraschung des Anwenders verbirgt sich jedoch darunter kein sinnvolles
  569.   Programm sondern ein zerstörerisches Machwerk.
  570.  
  571.   Programmierer solcher trojanischen Pferde verfallen dabei auf ganz üble
  572.   Tricks. Um Speicherplatz - und damit Übertragungszeit - zu sparen,
  573.   werden Daten auf einer Mailbox meist in einem gepackten Format abgelegt.
  574.   Mittels eines Dekomprimierungsprogrammes können die Daten wieder in
  575.   lesbare Form gebracht werden. Auf einigen Mailboxrechnern fand sich
  576.   plötzlich ein Programm namens ARC513.EXE, das nicht nur -wie erwartet-
  577.   Dateien komprimiert bzw. dekomprimiert sondern zusätzlich noch die Spur
  578.   0 der Festplatte überschreibt. So mancher Benutzer wurde nach dem Ein-
  579.   schalten seines Rechners plötzlich mit der Meldung "No System Disk"
  580.   empfangen.
  581.  
  582.   ╔═════════════════════════════════════════════════════════════════════╗
  583.   ║ UNGESCHÜTZTER BINÄRVERKEHR MIT UNBEKANNTEN ODER HÄUFIG WECHSELNDEN  ║
  584.   ║                  PARTNERN KANN VERHÄNGNISVOLL SEIN !                ║
  585.   ║                                                                     ║
  586.   ║  Übertragen Sie deshalb nur Daten, deren Quelle und deren Inhalt    ║
  587.   ║  Sie kennen. Kommunizieren Sie nur mit vertrauenswürdigen Partnern. ║
  588.   ╚═════════════════════════════════════════════════════════════════════╝
  589.  
  590.  
  591.   │ WÜRMER und anderes Getier
  592.   └──────────────────────────
  593.  
  594.   Unter Würmer versteht man Programme, die sich häufig selbst kopieren und
  595.   auf diese Weise die Plattenkapazitäten sprengen. Sie haben meist keine
  596.   zerstörerischen Auswirkungen, sondern verschicken sich selbst an
  597.   weitere Opfer, also eine Art automatischer Kettenbrief.
  598.  
  599.   Voraussetzung für diese Art der Programme sind Netzwerke, also Rechner
  600.   die miteinander durch Kommunikationseinrichtungen verbunden sind.
  601.  
  602.   Obwohl Würmer im PC-Bereich momentan nicht als akute Gefahr zu betrachten
  603.   sind, sollen zwei Fälle kurz erläutert werden.
  604.  
  605.   Der Weihnachtsbaum-Wurm, der allen VM-Benutzern (Großrechner) bekannt
  606.   sein dürfte, benötigte gleich zweimal das manuelle Eingreifen des
  607.   Benutzers. Das EXEC-Programm (Kommandosprache auf Betriebssystemebene)
  608.   mußte durch einen Recieve-Befehl aus dem elektronischen Briefkasten
  609.   (Readerlist) genommen werden und in einem zweiten Schritt explizit auf-
  610.   gerufen werden. Für den Benutzer wurde danach am Bildschirm eine aus
  611.   Buchstaben gebastelte Tanne angezeigt. Somit verstand jeder das Programm
  612.   als Weihnachtsgruß. Das unheilvolle Wirken jedoch begann im Hintergrund.
  613.   Das elektronische Adreßbuch und das elektronische Posteingangs-/ausgangs-
  614.   buch des Benutzers diente dem Programm als Verzeichnis von weiteren
  615.   Teilnehmern, an die es sich jeweils selbst weiter versandte. Dieser
  616.   deutsche Netzwerk-Wurm führte bis in die USA zu einer katastrophalen
  617.   Verstopfung im Bereich von EARN/BITNET, sogar bis in das firmeneigene
  618.   Netz von IBM, das seither total abgeschirmt wird.
  619.  
  620.   Der zweite Wurm wurde durch die Presse als Virus bezeichnet, was
  621.   abermals nicht zutraf. Dieses Programm hat die haarsträubende
  622.   Fähigkeit einiger UNIX-Mailer verwendet, um ohne Interaktion durch
  623.   einen Benutzer zur Ausführung zu gelangen. Diese Mailerfunktion wurde
  624.   daraufhin in einer Großaktion in den USA aus allen im APRA-NET befind-
  625.   lichen Rechnern entfernt. Das Programm bestand aus einer SHELL (Pendant
  626.   zu EXEC aus dem VM Bereich), mit der unglaublichen Fähigkeit, beim
  627.   Eintreffen sofort und ohne Benutzereingriff zur Ausführung zu gelangen.
  628.   Dieser Wurm hat dann ständig neue Shells eröffnet, die wertvolle
  629.   Rechnerkapazitäten belegten und somit zu einem Zusammenbruch des Rechners
  630.   aufgrund der Überlastung führten.
  631.  
  632.  
  633.   ╔═════════════════════════════════════════════════════════════════════╗
  634.   ║           EINMAL IST KEINMAL GILT IN DER EDV NICHT !                ║
  635.   ║                                                                     ║
  636.   ║ Es könnte das letzte Mal für Ihre Daten sein. Führen Sie deshalb    ║
  637.   ║       keine Programme aus, deren Resultate Sie nicht kennen.        ║
  638.   ╚═════════════════════════════════════════════════════════════════════╝
  639.  
  640.  
  641.  
  642.   │ Was können Computerviren anrichten ?
  643.   └─────────────────────────────────────
  644.  
  645.   Name, Handlung und Zeit der nachfolgenden Fiktion ist frei erfunden.
  646.   Jede Ähnlichkeit mit existierenden Unternehmen wäre rein zufällig.
  647.   (Mit freundlicher Genehmigung von C.Fischer, Micro-Bit-Virus-Team)
  648.  
  649.   5. November 1990: Ein Mitarbeiter der Firma Rainer Zufall GmbH
  650.   bringt eine Diskette mit seinem neuesten Computerspiel in sein
  651.   Büro und präsentiert es stolz auf seinem Arbeitsplatz Rechner.
  652.   Was dieser Mitarbeiter nicht weiß, ist die Tatsache, daß das
  653.   Programm mit einem Virus verseucht wurde und nun drauf und dran
  654.   ist, über das vorhandene lokale Netzwerk (LAN) alle weiteren
  655.   Firmenrechner zu befallen. Fünf Tage später geschieht das Ungeheuerliche:
  656.   Alle Festplatten löschen sich wie von selbst. Zunächst fallen alle
  657.   computergesteuerten Produktionsmaschinen aus, denen die nötigen
  658.   Steuerinformationen fehlen. Kurz darauf bricht die Buchhaltung zu-
  659.   sammen, da keine verwertbaren Daten mehr vorhanden sind. Ab diesem
  660.   Zeitpunkt ruht das Unternehmen. Ob der Konkurs verhindert werden
  661.   kann, hängt allein von den Rücklagen und dem Können der EDV-Spezialisten
  662.   ab.
  663.  
  664.   Sollte Ihnen dieser fiktive Alptraum etwas zu weit hergeholt sein,
  665.   so belegt eine Studie die "Überlebungszeit" für ein Unternehmen bei
  666.   Totalausfall aller DV-Anlagen. Diese Zeit beträgt für etwa 20 % aller
  667.   Unternehmen nur einige Tage, für immerhin 5 % der Unternehmen sogar
  668.   nur einige Stunden. Denken Sie z.B. an Großeinrichtungen der chemischen
  669.   Industrie, die ohne Rechnereinsatz nicht mehr gesteuert werden können
  670.   und dann unkontrollierte Prozesse erzeugen könnten. Aus diesen Gründen
  671.   ist es erforderlich, selbst das geringste Infektionsrisiko auszuschließen.
  672.  
  673.   Welch ein Schaden bei einem Virenbefall im einzelnen eintritt, hängt von
  674.   den jeweiligen Bedingungen ab. Sind virenfreie Sicherheitskopien vor-
  675.   handen, lassen sich befallene Dateien recht schnell wieder rekonstruieren.
  676.   Auf jeden Fall kostet ein Virenbefall Zeit, und damit Geld, sowie Nerven
  677.   der Leute die mit der Entseuchung des Systemes beauftragt wurden.
  678.  
  679.   Hinzu kommen Schäden, die von Datenverlust bis zu Hardwareschäden reichen
  680.   können.
  681.  
  682.  
  683.  
  684.   │ Was können Viren nicht ?
  685.   └─────────────────────────
  686.  
  687.   Grundsätzlich können Virenprogramme alle Möglichkeiten ausschöpfen die
  688.   eine denkbare Software beinhalten könnte. Dem Virus sind allerdings
  689.   Grenzen gesetzt. Ganz klar ist, daß ein Virusprogramm, sei es noch so
  690.   raffiniert geschrieben, niemals in der Lage wäre, einen Schlüsselschalter
  691.   an der Frontseite des Rechners zu betätigen.
  692.  
  693.   So ist das Abkleben der Schreibschutzkerbe bei Disketten ein sehr
  694.   brauchbarer Schutz. Floppylaufwerke prüfen im allgemeinen mittels eines
  695.   Tasters oder einer Lichtschranke ob der Schreibschutz auf der Diskette
  696.   vorhanden ist. Falls ja, wird die Stromversorgung zu den Schreibköpfen
  697.   unterbrochen. Diese physikalische Grenze kann kein bekannter Virus
  698.   überbrücken.
  699.  
  700.   Auch wenn des öfteren in Fachzeitschriften gegenteiliges zu lesen ist,
  701.   kann man sagen, daß Laufwerke die sich an die IBM-Spezifikationen
  702.   halten (und das tun alle IBM-kompatiblen Rechner) Disketten die mit
  703.   Schreibschutzaufkleber versehen sind, nicht beschreiben.
  704.  
  705.   Trotzdem kann bei einigen Floppylaufwerken der Controller direkt
  706.   programmiert werden. In diesem Falle nützt auch ein Schreibschutz recht
  707.   wenig. Wenn der hardwaremäßige Schutz durch softwaremäßige Verfahren zu
  708.   beseitigen ist, ist dieser Schutz einfach unbrauchbar.
  709.  
  710.   Sollte z.B. eine rote Diskette zum Einsatz kommen, kann es durch die
  711.   Prüfung mittels Lichtschranke Probleme geben. Die Lichtschranke geht
  712.   durch die rote Farbe der Diskette einfach durch.
  713.  
  714.   Abdruck und/oder Kopie und / oder die Verwendung in elektronischen
  715.   Datenverarbeitungsanlagen nur mit unserer ausdrücklichen schriftlichen
  716.   Genehmigung. Beachten Sie bitte unsere Lizenzbestimmungen !
  717.  
  718.   ──────────────────────────────────────────────────────────────────────
  719.       Copyright (c) 1991,1992  Software Laboratory Jürgen Liskowskis
  720.   ──────────────────────────────────────────────────────────────────────
  721.  
  722.  
  723.