Computervirus
Ein Computervirus ist eine nicht selbständige Programmroutine, die sich selbst reproduziert, indem sie sich an andere Computerprogramme oder Bereiche des Betriebssystems anhängt. Einmal gestartet, nimmt sie vom Anwender nicht kontrollierbare Veränderungen an selbigen vor. Computerviren beeinträchtigen die Computersicherheit und zählen zur Malware.
Umgangssprachlich wird der Begriff Computervirus auch für Computerwürmer und Trojanische Pferde benutzt.
Arbeitsweise
Die Idee zu Computerviren leitete sich von dem biologischen Vorbild der Viren ab und gab ihnen ihren Namen. Wie sein biologisches Vorbild benutzt ein Computervirus die Ressourcen seines Wirtes und nimmt dabei keine allzugroße Rücksicht auf dessen Wohlergehen. Auch er vermehrt sich unkontrolliert und exponentiell. Dadurch, und durch explizit vom Virenautor eingebaute Schadfunktionen, kommt es bei Infektion eines Computers häufig zur Veränderung oder Verlust von Daten und Programmen und zu Störungen des regulären Betriebs.
Ein Computervirus benötigt zur Infektion eines Rechners eine Netzverbindung um Dateien im Netz infizieren zu können oder ein Speichermedium, durch das er weitere Computer infizieren kann. In der Umgangssprache werden auch Computerwürmer wie I Love You zu Viren gezählt. Der große Unterschied besteht jedoch darin, dass ein Wurm eine selbstständige Datei und ein Virus eine nichtselbstständige Programmfunktion ist. So wurden im Jahr 2004 auch Handywürmer, die sich via Bluetooth verbreiten, in den Medien als Handyviren gezählt, obwohl diese erst ein Jahr später aufgetreten sind.
Verbreitung je nach Betriebssystem sehr unterschiedlich
Das verwendete Betriebssystem hat großen Einfluss darauf, wie groß die Wahrscheinlichkeit einer Vireninfektion ist. Während für Windowssysteme über 60.000 Viren existieren, gibt es für Linux und Apple jeweils etwa 50 Viren. Die große Verbreitung von Windows vor allem im privaten Bereich sorgte für eine schnelle Verbreitung der unerwünschten Programme. Das liegt daran, das viele Privatpersonen sich nicht auskennen mit Schutzmaßnahmen, aber auch an dem Aufbau von Windows, in dem besonders in den alten Versionen der Nutzer immer alle Rechte hatte, und somit jederzeit neue Programme installiert werden können. Unter Linux hat der Standardnutzer nur beschränkte Rechte und muss, bevor er ein Programm installiert oder Veränderungen am System vorgenommen werden, immer das Root-, also das Administratorenpasswort angeben. Das hat zur Folge, das sich kein Schädling unbemerkt einnisten kann, zumindest nicht ohne Passworteingabe.
Die meist kommerzielle Nutzung von Applecomputern führt dazu, das der Sicherheitsstandard höher ist, weil professionell betreute Computersysteme oft gut geschützt werden.
Windowsnutzer haben also eine ungleich größere Chance, Opfer einer Virusattacke zu werden als Nutzer andere Systeme. Somit bietet sich für die Nutzung im Internet das kostenlos nutzbare Linux an.
Fast vollkommener Schutz durch Livesysteme
Livesyteme, die von einer CD gestartet werden wie Knoppix bieten nahezu aboluten Schutz, wenn keine Schreibgenehmigung für die Festplatten erteilt wird. D. h., das keine Veränderungen an Festplatten vorgenommen werden können, somit kann sich kein schädliches Programm einschleichen.
Allgemeine Prävention
Anwender sollten niemals unbekannte oder Programme aus unsicherer Quelle ausführen und generell beim Öffnen von Dateien Vorsicht walten lassen. Das gilt insbesondere für Dateien, die einem per E-Mail zugesandt wurden. Solche Dateien sollten, wenn überhaupt, erst nach Überprüfung mit einem aktuellen Antivirenprogramm geöffnet werden. Schadprogramme können durch Sicherheitslücken in den mit Dateien verknüpften Programmen auf verschiedene Weise aktiv werden.
Betriebssystem und Anwendungen sollten regelmäßig aktualisiert werden. Ferner sollte dem Betriebssystem bereits im Grundzustand alle wichtigen Service Packs und Hotfixes durch sogenanntes Slipstreaming oder unbeaufsichtigte Installation integriert werden. Dazu gibt es auch die Möglichkeit, die Service Packs und Hotfixes für Windows 2000 und Windows XP via "Offlineupdate" (siehe Weblinks) einzuspielen. Andernfalls könnte bereits beim ersten Verbinden mit dem Internet der PC infiziert werden.
Die eingebauten Schutzfunktionen des Betriebssystems sollten ausgenutzt werden. Dazu zählt insbesondere, nicht als Administrator mit allen Rechten, sondern als Nutzer mit eingeschränkten Rechten zu arbeiten, der keine Software installieren darf. Das automatische Öffnen von Dateien aus dem Internet sowie das automatische Ausblenden von bekannten Dateianhängen sollte deaktiviert werden. Auch durch die Autostartfunktion für CD-ROMs und DVD-ROMs können Programme bereits beim Einlegen eines solchen Datenträgers ausgeführt und damit ein System infiziert werden.
Es empfiehlt sich, die auf den meisten Privatrechnern vorinstallierte Software von Microsoft zu meiden oder umzukonfigurieren. Diese bieten durch ihren extrem hohen Verbreitungsgrad eine große Angriffsfläche. Vor allem Internet Explorer (IE) und Outlook Express sind hier zu nennen. Die zur Zeit bedeutendste Alternative zu IE ist Firefox, der mehr Sicherheit verspricht. Für Betriebssysteme wie Mac OS X, GNU/Linux oder die aus der BSD-Reihe existieren keine Viren, die für den Benutzer eine Gefahr darstellen können. Es gibt zwar Viren für diese Betriebssysteme, jedoch können sie sich auf Grund von z.B. Rechtetrennung im Normalfall nicht stark verbreiten.
Antivirenprogramme schützen nur vor bekannten Viren. Daher ist es bei der Benutzung eines solches Programms wichtig, regelmäßig die von den Herstellern bereitgestellten, neuen Virensignaturen einzuspielen. Unbekannte Viren können jedoch von manchen dieser Programme auch anhand ihres Verhaltens entdeckt werden. Diese Funktionen arbeiten jedoch extrem unzuverlässig. Aus diesen Gründen kann man diese Programme nur als Unterstützung ansehen und sich nicht allein auf ihr Urteil verlassen.
Personal Firewalls zeigen gegen Viren keine Wirkung, da ihre Arbeitsweise nichts mit der der Viren zu tun, sondern eher auf Würmer passt.
Computervirentypen
Bootviren sind die ältesten Computerviren überhaupt. Diese Viren waren bis 1995 die meistverbreitete Form von Viren. Ein Bootsektorvirus infiziert den Bootsektor von Disketten und Festplatten sowie den MBR einer Festplatte. Der Bootsektor ist der erste physische Teil einer Diskette, und ist einen Sektor (512 Byte) groß. Der Bootsektor wird von Startdisketten verwendet, um von der Diskette booten zu können, jedoch hat jede Diskette und Festplatte einen Bootsektor oder einen MBR. Bootsektorviren nutzen die Tatsache aus, dass der Bootsektor immer als erstes geladen wird. Will ein Benutzer von einer infizieren Startdiskette booten oder vergisst eine infizierte Diskette im Diskettenlaufwerk beim Start des Computers, greift das BIOS bei entsprechender BIOS Boot Einstellung auf diesen Sektor zu und führt ihn aus. Der Virus versucht danach den MBR der Festplatte zu infizieren, um bei jedem Start des Computers ausgeführt zu werden. Wenn ein infizierter Computer startet, wird der MBR geladen, der normalerweise für das Erkennen der verschiedenen Partitionen der Festplatte zuständig ist. Der Virus, der nun geladen wird, bleibt im Speicher und überwacht die Zugriffe auf andere Disketten. Wenn eine Diskette in einen mit einem Bootsektorvirus infizieren Computer gelegt wird, wird er Virus im Speicher aktiv und infiziert den Bootsektor der Diskette. Seit 2005 gibt es auch Bootsektorviren für CD-ROMs. Diese infizieren bootfähige Imagedateien (ISO). Es ist technisch möglich, einen Bootsektorvirus für einen USB-Stick oder für ein LAN-Netzwerk zu erstellen, dies wurde aber bis jetzt noch nicht erzeugt. Heutzutage gibt es beinahe keine Bootsektorviren mehr, da BIOS und Betriebssysteme meistens einen fast unumgehbaren Schutz haben. Zwar gibt es Bootsektorviren, die diesen Schutz umgehen können, doch ist ihre Verbreitung zu langsam, um ein Problem darstellen zu können.
Dateiviren
Linkviren oder Dateiviren infizieren ausführbare Dateien auf einem Betriebssystem. Die Namenserweiterung und der Aufbau der Datei hängt vom Betriebssystem ab. Die befallenen Dateien wurden nach dem Programmieren kompiliert, das heißt, die Datei beinhaltet nur mehr vom Prozessor in Verbindung mit dem Betriebssystem lesbaren Binärcode. Die meisten dieser Viren sind in Assembler oder C programmiert, da diese die schnellsten Programme liefern und direkte Kontrolle der Hardware haben
Makros sind in ein Programm eingebaute Sonderfunktionen, die vom Benutzer selbst erstellt werden können, um Flexibilität zu garantieren. Makros gibt es in allen Microsoft Office Programmen, aber auch in anderen Schreib-, Tabellenkalkulations-, Zeichen- und Datenbankprogrammen, die nicht von Microsoft stammen. Die meisten Programme, die Makros enthalten, haben ein globales Makro, das sämtliche benutzerdefinierte Funktionen und Einstellungen speichert. Dieses globale Makro wird bei jedem Start des Programmes ausgeführt. Makros wurden mit einer Basic-ähnlichen Sprache versehen, da diese für den Anwender leicht zu erlernen ist. Ein Makrovirus sucht nach Makros in verschiedenen Dokumenten, um diese zu infizieren. Auch wird das globale Makro infiziert, um bei jedem Start ausgeführt zu werden. Wenn ein infiziertes Dokument geöffnet wird, nistet sich der Virus im Speicher ein, und erstellt in jedem gespeicherten, geöffneten oder geschlossenen Dokument ein Makro mit dem Viruscode. Damit ist auch dieses Dokument infiziert. Makroviren verbreiten sich viel schneller als normale Dateiviren, da viel mehr Dokumente ausgetauscht werden als ausführbare Programme.
Skriptviren
Scripts sind Codes, die meistens in Webseiten eingebettet werden, um spezielle Funktionen in der Webseite zu erhalten, die mit normalem HTML oder XML nicht verwirklichbar sind. Diese Funktionen sind zum Beispiel Gästebücher, Foren, dynamisch geladene Seiten, E-Mail-Accounts. Scriptsprachen sind meistens vom Betriebssystem unabhängig. Um ein Script auszuführen wird ein bestimmter Interpreter benötigt. Ein Interpreter ist ein Programm, das den Script, der in einer lesbaren Sprache geschrieben ist, ausführt. Ein Script muss bei jedem Ausführen vom Interpreter in die Maschinensprache (Binärformat) übersetzt werden, im Gegensatz zu Kompilersprachen. Ein Scriptvirus sucht sich am Rechner meistens HTML Dateien, und schreibt seinen Code in ein eigenes „script-tag“. Ein „script-tag“ ist ein HTML Teil, der den Interpreter aufruft, und den nachfolgenden Code bis zum Ende des „script-tags“ ausführt. Wenn nun eine mit einem Scriptvirus infizierte HTML Seite geladen wird, wird der Script ausgeführt, und sucht wieder nach anderen Webseiten zum Infizieren. Diese Viren werden in VBScript geschrieben, da man somit (durch Microsoft Windows Script Hosting) vollständigen Zugriff auf ein Windows Betriebssystem hat. Meist schreibt ein solches Skript einen anderen Virus, Wurm oder Trojaner in das System. Windows Script Hosting wird nur von Microsoft Internet Explorer zur Verfügung gestellt. Aus diesem Grund sollte Windows Script Hosting im Internet Explorer immer ausgeschalten sein, denn somit werden diese Skripte nicht ausgeführt.
Testviren
Das Eicar test file ist konzipiert als Virus, der keinerlei Schaden anrichtet und freiwillig und offen von Benutzern verbreitet wird, die damit ihre Virenscanner testen wollen. Technisch gesehen handelt es sich dabei allerdings nicht wirklich um einen Computervirus, da ihm nicht nur die Schadensfunktion, sondern auch der Code zur Vervielfältigung fehlen.
Infektionsarten
Companion-Viren
Companion-Viren infizieren nicht die ausführbaren Dateien selbst sondern benennen die ursprüngliche Datei um und erstellen eine Datei mit dem ursprünglichen Namen, die nur den Virus enthält, oder sie erstellen eine Datei mit ähnlichem Namen, die vor der ursprünglichen Datei ausgeführt wird. Unter DOS gibt es beispielsweise Companion-Viren, die zu einer ausführbaren EXE-Datei eine versteckte Datei gleichen Namens mit der Endung ".com" erstellen, die dann nur der Virus enthält. Wenn unter DOS beim Aufruf eines Programms die Endung nicht angegeben wird, werden ".com"-Dateien ".exe"-Dateien vorgezogen. Der Virus führt, nachdem es sich meist im Arbeitsspeicher festgesetzt hat, das ursprüngliche Programm aus, so dass der Benutzer meist nichts von der Infektion bemerkt.
Überschreibende
Überschreibende Computerviren sind die einfachste und kleinste Form von Viren. Wenn ein infiziertes Programm ausgeführt wird, sucht der Virus nach neuen infizierbaren Dateien, und überschreibt; entweder die ganze oder nur eine benötigte Länge; der neuen Datei. Diese Viren sind sehr gefährlich, da die infizierte Datei nicht mehr oder nur mehr zum Teil funktioniert.
Einige Viren überschreiben direkt die in die Hardware integrierte Programme wie das Bios, z.b der Virus W95/CIH-10xx oder die CMOS Einstellungen (WM97/Chronic-A.). Die entsprechenden Bios-Chips müssen dann ausgetauscht werden, sind die sie verlötet, muss sogar das Motherboard ausgewechselt werden
Prepender
Diese Art von Computerviren schreibt den Viruscode vor den Code der infizierten Datei, und speichert den überschriebenen Teil am Anfang. Bei der Ausführung einer infizierten Datei wird zuerst wieder der Virencode ausgeführt, da er am Anfang der Datei liegt. Nach dem erneutem Versuch Dateien zu infizieren stellt der Virus die originale Datei im Speicher wieder her und führt sie aus. Außer einem kleinen Zeitverlust merkt der Benutzer nicht, dass ein Virus gerade aktiv wurde, da die Hostdatei vollkommen arbeitsfähig ist.
Appender
Ein Appender schreibt seinen Viruscode an das Ende einer infizierten Datei. In vielen Fällen manipuliert der Virus die Eintrittsadresse der Datei, sodass der Viruscode vor der Hostdatei ausgeführt wird. Beim Starten einer infizierten Datei wird, wenn die Eintrittsadresse der Datei nicht geändert wurde, zuerst die Hostdatei ohne Probleme ausgeführt, und erst beim Beenden der Datei wird der Viruscode aktiv. Wenn die Eintrittsadresse manipuliert wird, wird der Virus zuerst aktiv, und gibt nach Beendigung der Funktionen die Kontrolle durch einen Sprung an den Anfang der Hostdatei wieder zurück. Diese Art von Computerviren ist, wenn nicht anders programmiert, auch harmlos.
EPO
Der Fachbegriff Entry Point Obscuring [1] heißt übersetzt „Verschleierung des Einsprungspunkts“. Diese Art von Computerviren ist die am schwersten zu programmierende Form von Viren. Ein Computervirus, das diese Infektionsmethode benutzt, speichert seinen Code nicht am Anfang oder am Ende der Datei, sondern sucht sich einen speziellen Ort in der Datei, um diese zu infizieren. Ein solcher Ort könnte zum Beispiel der Aufruf einer speziellen Funktion, wie zum Beispiel das Beenden des Programms, oder eine interne Funktion der Datei sein. Der Grund für diese ungewöhnliche Infektionsmethode ist, dass Antivirenprogramme, die die Durchsuchzeit einer Datei auf ein Minimum reduzieren wollen, nur auf statischen Adressen wie dem Anfang oder dem Ende prüfen. Um dieses Virus erkennen zu können muss nun eine Routine geschrieben werden, die den gesamten Inhalt einer Datei durchsucht. Wenn eine Datei, die mit dieser Art von Virus infiziert ist, gestartet wird, kann es sein, dass der Virus gar nicht ausgeführt wird, da die infizierte Funktion im Programm nicht ausgeführt wird. Um das Verbreiten zu beschleunigen, werden manchmal mehrere Funktionen infiziert.
Techniken
Arbeitsspeicher
- Einige einfache Viren infizieren direkt, wenn ein infiziertes Programm ausgeführt wird, andere Dateien. Solche Viren verbreiten sich meist nicht sehr erfolgreich, weil oft nur Dateien im aktuellen Verzeichnis infiziert werden. Wenn das nicht der Fall ist, kann das Durchsuchen ganzer Laufwerke auffällig sein, außerdem werden dabei kaum Dateien auf Wechseldatenträgern infiziert.
- Speicherresidente Viren verbleiben auch nach Beendigung des Wirtprogramms im Speicher und fangen Aufrufe von Systemfunktionen wie das Ausführen einer Datei ab, um diese Datei dann zu infizieren.
Selbstschutz
- Stealthviren, wenn sie besondere Maßnahmen ergreifen, um ihre Existenz zu verschleiern. So werden Systemaufrufe abgefangen, so dass z. B. bei der Abfrage der Größe einer infizierten Datei die Größe vor der Infektion angegeben wird (manche Viren verändern die ursprüngliche Größe auch gar nicht, weil sie sich in unbenutzte Bereiche der Datei kopieren) oder auch beim Lesen der Datei die Daten der ursprünglichen Datei zurückgeben.
- verschlüsselte Viren, wenn sie einen Teil ihres Codes verschlüsseln. Der Schlüssel kann dabei von Infektion zu Infektion variieren. Das soll Antivirenprogramme daran hindern, einfach nach einer bestimmten Zeichenfolge in Dateien suchen zu können.
- polymorphe Viren, wenn sie ihre Gestalt von Generation zu Generation vollkommen ändern. Das geschieht oft in Kombination mit Verschlüsselung, es wird eine variable Verschlüsselung benutzt. Ein Teil des Viruscodes muss jedoch in unverschlüsselter Form vorliegen, um bei der Ausführung den Rest zu entschlüsseln. Um auch diesen Teil variabel zu machen, wird der Entschlüsselungscode bei jeder Infektion neu erstellt. Der Programmcode, der dabei den Entschlüsselungscode immer neu erstellt, befindet sich dabei selbst im verschlüsselten Teil des Virus und kann z. B. voneinander unabhängige Befehle austauschen und Operationen mit verschiedenen Befehlssequenzen kodieren, so dass verschiedene Varianten entstehen.
- metamorphe Viren, wenn sie ihren gesamten Code bei jeder Infektion umformulieren. Dies geschieht meist durch Übersetzung des Maschinencodes in symbolischen Code und variabler Rückübersetzung. Der größte Teil des Viruscodes dient dabei meist dieser Aufgabe.
Aufbau
Es gibt mehrere Varianten, ein Virus zu strukturieren:
Erklärung 1
- Vermehrungsteil: Dieser Programmteil sorgt für die Vermehrung des Virus.
- Erkennungsteil: Im Erkennungsteil wird geprüft, ob bereits die Infektion eines Programms oder Systembereichs erfolgte. Jedes Wirtsprogramm wird nur einmal infiziert.
- Schadensteil: Einige Viren enthalten eine Schadensfunktion, meist das Überschreiben oder Verändern von Programmen oder Daten oder aber auch nur die Ausgabe von Meldungen und Tönen auf dem Rechner. Dieser Programmteil kann fehlen, aber auf jeden Fall entsteht Schaden durch Inanspruchnahme von Speicherplatz im Hauptspeicher und auf Datenträgern. Durch Programmierfehler, Veränderungen des Betriebssystems oder ähnliches können weitere Schäden als Nebeneffekte auch dann auftreten, wenn sie nicht absichtlich programmiert sind.
- Bedingungsteil: Sowohl die Verbreitung als auch die Schadensfunktion können von Bedingungen abhängig programmiert sein, z. B. tritt bei einigen Viren der Schaden an einem bestimmten Datum oder bei einer bestimmten Anzahl von Aufrufen ein. Auch dieser Teil kann fehlen.
- Tarnungsteil: Hierunter fallen Programmroutinen, die die Entdeckung des Virus im infizierten System erschweren sollen. Dieser Teil ist meist nur bei neueren Viren zu finden.
Erklärung 2
Ein Computervirus besteht aus drei Teilen:
- Replikationseinheit
- Trigger (Auslöser)
- Payload (Schadroutine)
Die Replikationseinheit dient der (meist unbemerkten) Vervielfältigung des Virus, z. B. indem es sich an ein bestimmtes Programm anhängt, das sich auf der Festplatte befindet. Jedesmal, wenn das infizierte Programm gestartet wird, kopiert sich der Virus. Damit kann sich der Virus erst einmal verbreiten, ohne zunächst einen Schaden anzurichten.
Andere Verbreitungsmethoden sind die Infektion von Disketten oder anderen bootfähigen Datenträgern (Bootviren) oder Textdokumenten (falls das Textverarbeitungsprogramm eine genügend mächtige Makro-Sprache besitzt und die Makros zusammen mit dem normalen Text in einer Datei gespeichert werden).
Den Teil, der den eigentlichen Schaden verursacht, bezeichnet man als Schadroutine oder Payload (dt.: Nutzlast). Hier tritt der Virus zum ersten Mal in Erscheinung und richtet einen mehr oder weniger großen Schaden an. Eine Schadroutine ist optional (ein Virus ist auch ohne sie ein Virus) und in den meisten Viren gar nicht vorhanden. Mitunter richtet die Verbreitung aber einen Schaden an.
Einige Viren sind so programmiert, dass sie erst dann in Erscheinung treten und den Schaden verursachen, wenn ein bestimmtes Ereignis eingetreten oder eine bestimmte Zeit verstrichen ist. Andere schalten gewisse Funktionen zu einem bestimmten Zeitpunkt wieder ab. Hierfür ist der sog. Trigger (dt.: Auslöser) zuständig.
So kann es z.B. sein, dass ein Virus erst nach dem 100. Start des Rechners aktiv wird, oder dass es sich jeden Dienstag oder am 10. eines jeden Monats in Erscheinung tritt und dann z.B. bestimmte Dateien löscht.
Geschichte
Theoretische Anfänge: Bis 1985
Im Jahr 1949 veröffentlichte der Computerpionier John von Neumann seine Arbeit "Theory and Organization of Complicated Automata". Darin stellt er die These auf, ein Computerprogramm könne sich selbst reproduzieren. Das war die erste Erwähnung von Computerviren-ähnlicher Software. Erst Mitte der 1960er Jahre wurde wieder über dieses Thema diskutiert, als Victor Vyssotsky, Robert Morris Sr. und Doug McIlroy, Programmierer bei Bell Labs ein Computerspiel mit dem Namen Darwin erschufen. Zwei Spieler ließen Software-Organismen um die kontrolle über das System kämpfen. Die Programme versuchten dabei, einander zu überschreiben. Spätere Verionen des Spiels wurden als Core Wars bekannt.
1975 veröffentlichte der US-Autor John Brunner den Roman "Der Schockwellenreiter", in dem er die Gefahr von Internetviren voraus ahnt. Sein Kollege Thomas J. Ryan schilderte 1979 in "The Adolescence of P-1", wie sich eine Künstliche Intelligenz virenähnlich über das nationale Computernetz ausbreitet.
Im Jahr 1980 verfasste Jürgen Kraus eine Diplomarbeit mit dem Titel Selbstreproduktion bei Programmen, in welcher der Vergleich angestellt wurde, dass sich bestimmte Programme ähnlich wie biologische Viren verhalten können. Die Behörden wurden bei dieser Diplomarbeit hellhörig, und ließen die Verbreitung des Werkes stoppen. Das ist der Grund, warum diese Arbeit heute nicht mehr erhältlich ist.
Professor Leonard M. Adleman verwendete 1984 im Gespräch mit Fred Cohen zum ersten Mal den Begriff Computervirus.
Praktische Anfänge: Von 1985 - 1990
Fred Cohen lieferte 1986 seine Doktorarbeit "Computer Viruses - Theory and Experiments" ab. Darin wurde ein funktionierendes Virus für das Betriebssystem UNIX vorgestellt. Dieser gilt heute als der erste Computervirus.
Zwei Software-Händler aus Pakistan verbreiteten im Jahr 1986 den ersten Virus für das Betriebssystem MS-DOS. Das Programm war relativ harmlos, da es nur das Inhaltsverzeichnis der befallenen Disketten in Brain umbenannte.
Ein Jahr später, 1987, erschien im Data-Becker Verlag das erste Buch zum Thema Computervirus "Das große Computervirenbuch" von Ralf Burger. Da Burger den Quellcode einiger Viren im Buch veröffentlichte, erschienen in den folgenden Monaten duzende Varianten des von ihm geschriebenen Virus in der Öffentlichkeit.
1988 erschien der erste Baukasten für Viren (Virus Construction Kit). Damit ist es auch Anfängern möglich, Viren nach Maß zu erstellen. Das Programm wurde für den Computer Atari ST geschrieben.
In diesen Jahren erschienen auch die ersten Antivirenprogramme; vor allem um große Firmen zu schützen. Im Jahr 1989 erschien mit V2Px dann auch der erste polymorphe Virus, der sich selbst immer wieder neu verschlüsseln konnte und nur sehr schwer zu entdecken war.
Die Ära der DOS-Viren: 1990 - 1995
In diesen Jahren wurden Viren immer komplexer, um sich weiter verbreiten zu können und um sich besser gegen die Entdeckung vor Antivirenprogrammen zu schützen. Im Jahr 1992 veröffentlichte ein Virenschreiber namens Dark Avenger den ersten polymorphen Programmgenerator, MTE. Damit konnten auch einfachste Viren sich leicht vor einer Erkennung schützen. Einige der damaligen Antivirenhersteller konnten dieses Problem nicht lösen, und stoppten die Entwicklung ihres Programms.
1992 löste auch der Michelangelo Virus eine enorme Medienhysterie aus - nun war die Existenz der Viren auch in der Öffentlichkeit bekannt.
In diesen Jahren wurden auch immer wieder neue Techniken in Viren entdeckt. Wie zum Beispiel die gleichzeitige Infektion von Dateien und Bootsektor, OBJ-Dateien oder Quellcode-Dateien. Auch wurde 1992 mit Win.Vir_1_4 der erste Computervirus für das Betriebssystem Microsoft Windows 3.11 entdeckt. Diese wurden aber für den Anwender nie eine Gefahr.
Das Ende der MS-DOS-Viren wurde gezeichnet von den komplexesten Viren (wie ACG und OneHalf) bis zu dieser Zeit. Diese Viren waren stark polymorph und enthielten auch Techniken wie Metamorphismus.
Die Ära der Viren für 32bit Windows Betriebssysteme: 1995 - 2002
Ab 1995, mit dem Erscheinen von Microsoft Windows 95, und dem ständigem Zuwachs an Benutzern wurden auch Viren für dieses Betriebssystem (und dessen obligaten Programmen wie Office) geschrieben. 1995 erschien der erste Makrovirus für Microsoft Word. Da Dokument öffter getauscht wurden als Programme, wurden Makroviren ein sehr großes Problem für die Anwender. In den Jahren darauf erschienen dann auch die ersten Makroviren für Excel (1997), Powerpoint und Access (beide 1998) und Visio (2000). 1996 wurde auch das erste Virus Constructor Kit für Makroviren geschrieben, die es auch Personen ohne Programmierkenntnissen ermöglichten, Viren zu erstellen.
1996 erschien dann mit Boza auch der erste Virus für Microsoft Windows 95, und Microsoft wurde gezeigt, dass es doch nicht stimmt, dass ihr neustes Betriebssystem unantastbar ist für Viren.
Da der Kampf zwischen Antivirenherstellern und Virenautoren zugunsten der Antivirenhersteller gewonnen schien, wurde 1998 mit W32.HPS und W32.Marburg die ersten polymorphen Windows 32-bit Viren geschrieben. Kurze Zeit später wurde mit Regswap auch der erste metamorphe Virus für diese Betriebssysteme geschrieben.
1998 und 1999 erschienen die ersten VBS- und JS-Viren und als logische Konsequenz auch die ersten HTML-Viren. Diese Viren arbeiteten mit dem umstrittenen Zusatzprogramm Windows Host Scripting. Nun konnten auch Webseiten von Viren infiziert werden.
In dieser Zeit wurden auch einige andere, für den Benutzer ungefährliche Viren geschrieben, die dennoch historisch interessant sind. Beispiele sind der OS2.AEP Virus, der als erster ausführbare Dateien des Betriebssystem OS/2 infizierten konnte, oder die ersten Viren für HLP-Dateien, für PHP-Dateien, für Java, für AutoCAD, für Bash, für PalmOS und für Flash. Mit dem W95/CIH-10xx verbeitet sich 1998 der erste Virus, der neben dem löschen der Festplatte auch das Bios infizieren kann und somit den gesamten PC unbrauchbar macht.
Am Ende dieser Ära tauchten wieder (wie in der DOS-Ära) die komplexesten Viren auf, die es bis zu dieser Zeit gab. Beispiele sind Win32.MetaPHOR oder Win32.ZMist, die sehr stark metamorph sind, und nicht von allen Antivirenherstellern vollständig entdeckt werden können.
Neue Nischen: Ab 2002
Ab ungefähr dem Jahr 2002 traten Viren mehr und mehr in den Hintergrund, und wurden durch Würmer ersetzt. Die Entwicklung von Viren geht trotzdem weiter, und bezieht sich vor allem auf neue Nischen.
Im Jahr 2002 wurde der erste Virus geschrieben, der sowohl Win32-bit Anwendungen als auch ELF (Linux Anwendungen) infizieren konnte. Dieser Virus kann als Einläutung für ein neues Zeitalter der Viren gesehen werden.
Im Jahr 2004 wurde dann entgültig eine neue Äre für Viren besiegelt. Der erste Virus für PocketPCs (mit dem Betriebssystm Windows CE) tauchte auf, und zeigte, dass die viel verwendeten Kommunikationsgeräte nicht verschont werden.
Einige Monate später wurde der Virus Win64.Rugrad entdeckt. Dieser Virus konnte die Anwendungen des neu erschienen Microsoft Windows XP 64-bit Edition infizieren, und hat eine Vorreiterrolle in der Entwicklung neuer Viren.
Wieder einige Monate später, im Jahr 2005, wurde der erste Virus für Handys (mit dem Betriebssystem Symbian OS) geschrieben. Er kann, nachdem vorher schon Würmer für dieses Betiebssystem erschienen sind, auch Dateien infizieren.
Mitte 2005, kurz nach der Veröffentlichung der ersten Beta-Verison des XP-Nachfolgers Microsoft Windows Vista, wurde der erste Virus for Microsoft Command Shell (MSH - Codename: Monad) veröffentlicht. Zuerst wurde propagiert, dass es der erste Virus für das neue Windows sei. Jedoch läßt Microsoft nach Bekanntwerden der Viren verlautbaren, dass Monad doch nicht wie geplant in Vista enthalten sein wird.
In dieser Zeit wurden auch die ersten Viren für Ruby und MenuetOS entdeckt, die aber weder jetzt noch in Zukunft eine Gefahr für Anwender sein werden.
Literatur
Die meisten Bücher zum Thema sind inzwischen veraltet und/oder nicht mehr erhältlich (Auswahl).
- Das grosse Computer-Viren-Buch, Ralf Burger, 1989, ISBN 3890112005
- Computer-Viren-Report, Prof. Dr. Klaus Brunnstein, 1989, ISBN 3809205303
- Virus: Detection and Elimination, Rune Skardhamar, 1995, ISBN 012647690X
- The Giant Book of Computer Viruses, Mark A. Ludwig, 1998, ISBN 0929408233
- The Art Of Computer Virus Research And Defense, Peter Szor, 2005, ISBN 0321304543
Weblinks
- Informationen zu Computer-Viren vom Bundesamt für Sicherheit in der Informationstechnik
- Telepolis-Artikel zum 20-jährigen Bestehen von Computerviren
- Links zu Antivirenherstellern, Informationsseiten und Virus-Datenbanken
- Projektseite "Offlineupdate" der Zeitschrift c't
- Infos zu den das CMOS und das Bios schädigenden Viren