SI-Labor - Versuch 1

Transcription

SI-Labor - Versuch 1
SI-LABOR – VERSUCH 1
Auswirkungen von „Vireninfektionen”
und Angriffen auf Computersysteme
sowie mögliche Schutzstrategien
Abbildung 1: Künstlerische Darstellung von Computerviren
im Datendickicht. Quelle: Heise-Verlag
SI-LABOR – G. Varvelli
Versuch 1 – Viren
INHALTSVERZEICHNIS
1
Lernziele
3
2
Einführung in das Thema
4
3
Grundlagen
6
3.1
Die Gefahr von Viren, Würmern und Trojanern
6
3.2
Wer ist gefährdet?
7
3.3
Mögliche Konzepte gegen Malware
8
3.4
Übertragungsmedium E-Mail und die Rolle der ISP
10
3.5
Wie funktionieren Viren?
12
3.5.1
Einordnung nach „Infektionsopfer“
12
3.5.2
Einordnung nach Infektionsart
17
3.5.3
Klassifizierung nach Schutzmaßnahmen gegen Entdeckung
19
3.5.4
New Generation – Makroviren
21
3.6
Was sind Würmer?
28
3.7
Was sind Trojaner?
30
3.7.1
Zweck der Trojaner
30
3.7.2
Wege der Infektion eines Rechners mit Trojanern
32
3.7.3
New Generation – Rootkits
36
4
Versuchsaufbau
37
4.1
Vorsorgemaßnahmen
37
4.2
Säuberungsmaßnahmen
43
4.2.1
Virenscanner
44
4.2.2
Antitrojaner
51
4.2.3
Firewalls
61
5
Aufgabenstellung im Versuch
77
Literatur – Quellen
78
Weiterführende URLs zum Thema
80
Information zu dieser Ausarbeitung
80
Anhang
81
Seite 2
SI-LABOR – G. Varvelli
1
Versuch 1 – Viren
Lernziele
Liebe KommilitonInnen mit den Schwerpunkten Medieninformatik –
Technische
Informatik (Elektrotechnik), im Rahmen dieses Versuchs sollen euch die Grundlagen
zur Technik von Angriffen auf Rechner und -netzwerke, Sicherungsstrategien und
Schutzmassnahmen vermittelt werden. Dazu werden Fragen geklärt werden wie:
-
Was sind Computerviren, wieso werden sie überhaupt Viren genannt?
-
Wie infiziert sich ein Rechner?
-
Was ist der Unterschied zwischen Viren, Makroviren, Würmern, Trojanern?
-
Was sind sogenannte „hoaxes“?
-
Über welche Kanäle kann sich eine Infektionsgefahr eines ursprünglich
„sauberen“ Rechners ergeben?
-
Wie sieht ein
zufälligen
Sicherheitkonzept aus, mit dem ich mein Rechner zu Hause vor
(Viren,
Würmer)
oder
gezielten
(Trojaner)
Angriffen
ohne
Riesenaufwand schützen kann?
-
Was kann ich tun, wenn es bereits zur Infektion von Disketten oder vom
Rechner gekommen ist?
Vor allem soll vermittelt werden, dass es im Umgang mit (wichtigen) Daten nur eine
Maxime geben kann, nämlich:
VORSICHT IST BESSER ALS NACHSICHT,
GERADE WEGEN DER GEFAHR VON
COMPUTERVIREN, WÜRMERN UND TROJANERN
Seite 3
SI-LABOR – G. Varvelli
2
Versuch 1 – Viren
Einführung in das Thema
Virus (zu lateinisch virus „Schleim, Saft, Gift“) ist ursprünglich die allgemeine
Bezeichnung für Krankheitserreger; seit etwa 1900 ist es nur noch die Bezeichnung für
krankheitserregende Partikel, die bakteriendichte Filter passieren können und als in
Proteinhüllen verpackte Stücke genetischen Materials den biochemischen Apparat
geeigneter Wirtszellen auf Produktion neuer Viren derselben Art umprogrammieren
können. Dabei sind Viren bei ihrer Vermehrung ganz auf die chemischen Bausteine und
die Energie der lebenden Wirtszellen angewiesen, ausserhalb derer sind sie nicht – oder
nur bedingt – überlebensfähig. Daher werden Viren nicht als primitive Organismen (wie
Bakterien) aufgefasst, sondern eher als „ausser Kontrolle geratene Gene“.
Geschichtliche Entwicklung
1984 setzte der amerikanische Computerspezialist Fred Cohen mit seiner Schrift
„Computer Viruses: theory and Experiments“ [1] in Anlehnung an die Biochemie und
inspieriert von John Brunner's ‚Shockwave Rider’ sowie von Thomas Ryan's
‚Adolescence of P-1’, zweien Science-Fiction-Büchern der 70er Jahre, die gedanklichen
Grundlagen für das, was wir heute im Allgemeinen als Computerviren bezeichnen. Um
die aufgestellten Thesen zu untermauern, programmierte Cohen den wohl ersten Virus1 .
Im Gegensatz zu „richtigen“ Viren sind Computerviren somit nicht durch Evolution,
sondern durch den Willen findiger Programmierer entstanden. So begannen bald auch in
Europa, speziell in Deutschland, ab 1986 (Hobby-) Programmierer mit der Schaffung
eigener Viren, nachdem unter anderem der Spiegel über Cohens Arbeit berichtet hatte.
Ab dem Jahr, vor allem seit dem Kongress des Chaos Computer Clubs, wurde die
Problematik öffentlich diskutiert. Seit den Jahren 1986/87 schlummert in so mancher
nicht mehr benutzten 5 ¼ Zoll-Diskette eines der ersten Viren, wie zum Beispiel dem
ersten Boot-Virus ‚Pakistani Brain’ zweier pakistanischer Brüder.
1
Bereits Anfang der 70er Jahre wurden von Programmierern und Administratoren Killer-Applikationen
geschaffen, die sich gegeneinander störten und zum Teil auch die Fähigkeit sich selbst zu kopieren
hatten. Gedanklich geht die Idee einer sich selbst reproduzierenden Applikation auf John von Neumanns in den 40er Jahre des letzten Jahrhundert veröffentlichtes Papier ‚Theory and Organization of
Complicated Automata’ und auf sein Emulationsprogramm ‚Game of Life’ aus den 60er Jahre zurück.
Seite 4
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Gefahren...
Computerviren – zusammen mit Würmern und Trojanern nennt man sie Malware – sind
für uns Menschen natürlich nicht so gefährlich wie die Namensgeber aus der Biologie;
sie können allerdings Nerven, Geduld und richtig Geld kosten und uns bisweilen in Verzweiflung bringen, wenn wir kurz vor einem Abgabetermin stehen und unser Rechner
durch eine Virusinfektion lahmgelegt ist. Bei näherer Betrachtung der Computerviren
fällt auf, dass diese – analog zu richtigen Viren – aus Kleinst-Programmcodes bestehen,
die abhänhig von der Intention des jeweiligen Programmierers unterschiedliches
Schadenspotential bergen, vom automatischen Infizieren über Übertragungskanäle wie
Disketten oder E-Mails bis zum Löschen von Dateien, von Festplattenbereichen,
Einträgen des Betriessystems (Boot-Sector) oder gar von Einträgen im BIOS. Analog zu
den Krankheitserregern sind sie schwer auszumachen, da sie klein sind (meistens
zwischen einem halben und einigen Kilobytes), sich zumeist in Programmdateien oder
im Bootsektor als deren Wirte „verstecken“, auf automatische und selbstständige
Vervielfältigung und auf Schwächung oder Schädigung des Wirtes ausgelegt.
... und Auswirkungen
Kaum ein Monat vergeht ohne Meldungen über neue Viren, Würmer oder Trojaner, die
sowohl dem unbeholfenen User wie auch dem spezialisierten IT-Fachmann irgendwie
das Gefühl von Ohnmacht vermitteln. Die Gefahr ist real und sie wird uns auf absehbare
Zeit weiterhin begleiten. Dass Malware nicht nur ein Schreckgespenst sind, das
sensationslüsterne Medien und geldgierige Hersteller von Antiviren-Software an die
Wand malen, mussten in den vergangenen Jahren mehr Anwender als je zuvor am
eigenen Rechner erfahren. Im Mai 2000 zum Beispiel infizierte der Loveletter-Wurm
Millionen von Computern weltweit und setzte damit einen Meilenstein in der
Geschichte der EDV. Und wer glaubt, dass es sich dabei um einen einmaligen
Höhepunkt handelt, irrt gewaltig. So registrierte die Firma MessageLabs [2], die
weltweit E-Mails ihrer Kunden mit mehreren Scannern auf Viren untersucht (und
nötigenfalls infizierte Mails in Quarantäne setzt), im Oktober und November 2000 mehr
infizierte
E-Mails als im Loveletter-Monat Mai. Verantwortlich waren mehrere
„kleinere“ Epidemien, wie sie schon fast als zum Alltag gehörend gerechnet werden.
Seite 5
SI-LABOR – G. Varvelli
3
Grundlagen
3.1
Die Gefahr von Viren, Würmern und Trojanern
Versuch 1 – Viren
In einer Umfrage zu Antiviren-Programmen, vom Heise-Verlag durchgeführt und in [3]
vorgestellt, berichteten 49 % der 5286 befragten Teilnehmer, dass sie schon mindestens
einmal einen Virus auf ihrem System hatten. Bei rund einem Drittel dieser Fälle (17
Prozent aller Befragten) kam es auch zu einem Virenbefall. Berücksichtigt man nur die
Benutzer von Microsoft-Betriebssystemen, liegen die Zahlen sogar noch höher, und das,
obwohl laut Umfrage über 80 Prozent der Windows-Nutzer Antiviren-Software
einsetzen. Knapp die Hälfte der Geschädigten gab sogar an, dass auch zum Zeitpunkt
des Befalls Antiviren-Software auf dem System aktiv war. Doch immer noch verkauft
uns die Mehrzahl der Experten Antiviren-Software als bestmögliche Sicherung gegen
den Schädlingsbefall.
Dabei sind die Schwächen von Antiviren-Software hinlänglich bekannt. Die Scanner
erkennen nur ihnen bekannte Schädlinge zuverlässig, sodass sie auf aktuelle VirenSignaturen angewiesen sind. Wie Tests gezeigt haben, sinken die Erfolgsaussichten
dramatisch, wenn es gilt, geringfügig modifizierte Viren zu erkennen - von wirklich
neuen ganz zu schweigen. Zudem kommt noch hinzu, dass rund drei Viertel der
Benutzer von Antiviren-Software zwischen zwei Updates mehr als eine Woche
verstreichen lassen und somit nicht ‚optimal geschützt’ oder zumindest bestmöglichst
vorbereitet sind. Die Umfrage ergab, dass weniger als ein Viertel der Benutzer von
Antivirenprogrammen diese öfter als einmal die Woche aktualisieren. Man kann auch
kaum von einem Anwender erwarten, dass er täglich oder gar stündlich neue Updates
aus dem Netz lädt. Andererseits verbreiten sich Würmer wie ILOVEYOU in wenigen
Stunden rund um den ganzen Globus – Katastrophen sind so natürlich vorprogrammiert.
Wo es zu einer akuten Infektion kam, hatte rund ein Drittel irreparabel zerstörte Dateien
zu beklagen, bei 18 Prozent war das Betriebssystem nicht mehr zu retten. Bei immerhin
40 Prozent der Betroffenen konnte Antiviren-Software das System und die befallenen
Dateien vollständig wiederherstellen. Rund ein Drittel der Viren-Vorfälle kostete
Seite 6
SI-LABOR – G. Varvelli
Versuch 1 – Viren
weniger als eine Stunde Arbeitszeit, aber immerhin 17 Prozent der Betroffenen
verbrachten damit mehr als einen Arbeitstag.
Abbildung 2:
Diagramm zur Umfrage
des Heise-Verlags [3]; rund zwei Drittel
der Viren-Vorfälle war nach spätestens
vier Stunden erledigt. Aber immerhin 17
Prozent
erforderten
mehr
als
einen
Arbeitstag.
3.2
Wer ist gefährdet?
Viren sind hauptsächlich ein Windows-Phänomen. Das liegt zum einen an der großen
Verbreitung der Betriebssysteme aus Redmond; Monokulturen sind nun einmal
besonders anfällig für Schädlinge. Erschwerend kommt jedoch hinzu, dass Microsoft es
den Virenbastlern viel zu einfach macht. Das gesamte System ist nämlich hauptsächlich
auf bequeme Benutzbarkeit und tolle Funktionen ausgelegt - außer wenn es um
Sicherheit geht. Die Sicherheitseinstellungen des Internet Explorer, die auch das
Verhalten von Outlook (Express) beeinflussen, sind etwa so übersichtlich wie die
deutschen Telefontarife – nämlich überhaupt nicht. Microsofts Mail-Programme können
mit einem Mausklick vertonte Glückwunschvideos abspielen; eine Option, solche
Attachments vorher automatisch auf Viren zu testen, sucht man jedoch vergeblich.
Derartige Funktionen bleiben den Virenwächtern von Drittherstellern überlassen, und
um die muss sich der Anwender natürlich selbst kümmern.
Dass schon ein unvorsichtiger Mausklick auf eine Mail genügen kann, das (Betriebs-)
System komplett zu zerstören, ist in der IT-Landschaft von heute ein Anachronismus.
Andere Betriebssysteme zeigen, wie es anders geht. Ein wichtiger Grundpfeiler sicherer
Systeme ist die grundlegende Trennung zwischen Administrator - `root´ unter Linux -
Seite 7
SI-LABOR – G. Varvelli
Versuch 1 – Viren
und normalen Benutzern, die bei DOS, Windows 95/98/ME vollständig fehlt. Damit ist
nicht gemeint, dass jeder Endanwender einen Systemverwalter anheuern soll, sondern
dass das Betriebssystem eine rollenspezifische Rechtevergabe vorsieht: Im Normalbetrieb arbeitet der Anwender mit eingeschränkten Rechten. Die ermöglichen ihm zwar
seine normalen Tätigkeiten, gestatten aber keine Schreibzugriffe auf Systemdateien oder
zentrale Programme wie das installierte Office-Paket.
Nur bei administrativen Tätigkeiten wie der Installation neuer Programme schlüpft der
Anwender in die Rolle des Systemverwalters - mit uneingeschränkten Zugriffsrechten.
Selbstverständlich bietet das keinen hundertprozentigen Schutz, aber es baut eine
zusätzliche - auch psychologische - Hürde auf. Wer sich gerade mit Passwort explizit
als Administrator angemeldet hat, ist sich der damit verbundenen Verantwortung viel
eher bewusst, als wenn er gerade zwischen zwei Telefonaten kurz einen Blick in seine
Mailbox wirft.
Da bei DOS, Windows 95/98/ME die benötigten Systemfunktionen für Zugriffskontrolle fehlen, lässt sich ein solches Konzept dort prinzipiell nicht umsetzen. Doch
selbst unter NT beziehungsweise Windows 2000, die theoretisch die notwendigen
Voraussetzungen mitbringen, arbeiten viele Anwender ständig als Administrator. Das
liegt nicht allein an deren Bequemlichkeit, sondern auch daran, dass es Microsoft
versäumt hat, dieses Konzept ausreichend zu fördern und zu propagieren. So lassen sich
in der Defaultinstallation viele `normale´ Anwendungen, etwa diverse Programme zum
Brennen von CDs und Multimedia-CDs auch von Microsoft nicht ohne erweiterte
Rechte benutzen.
3.3
Mögliche Konzepte gegen Malware
Sinnvoll wäre, dass bereits die Installation einen normalen Benutzer-Account mit
eingeschränkten Rechten einrichtet, den Anwender über dessen Funktion aufklärt und
ihn beim ersten Systemstart als Default präsentiert. Programme, die sich als NT/2000kompatibel bezeichnen, müssten nach der Installation in diesem Modus vollständig zu
bedienen sein. Leider zeichnet sich in dieser Hinsicht bisher auch bei XP als
gemeinsamen Nachfolger von Windows 2000 und ME
keine Besserung ab.
Seite 8
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Ein Positiv-Beispiel stellt Linux dar: So lässt sich seine Immunität nicht mehr
ausschließlich auf mangelnde Verbreitung und fehlende Schädlinge zurückführen. Die
Schätzungen des Linux-Counters (www.linuxcounter.org) gingen im Jahr 2001 weltweit
von rund 16 Millionen Linux-Benutzern aus. Und die Virenexperten der Kaspersky
Labs haben bereits 43 Viren und Trojaner für Linux registriert - kein einziger hat es
jedoch bisher zu nennenswerter Verbreitung gebracht.
Abgesicherte Testumgebungen: Sandkästen
Ebenfalls sehr wirkungsvoll wäre das Einführen von geschützten Umgebungen für
besonders gefährdete oder riskante Anwendungen. In einer solchen „Sandbox“ darf
dann beispielsweise das Mail-Programm keine externen Programme mehr starten.
Dateizugriffe, Netzwerkzugang, Kommunikation mit anderen Programmen - alles ließe
sich mit einer solchen Sandbox detailliert reglementieren und protokollieren. Eine
mögliche
Rettungsfunktion
aufgezeichneten
Änderungen
macht
alle
wieder
im
Testbetrieb
rückgängig.
Für
eines
neuen
Programms
Standardanwendungen
wie
Browser oder Mailer stellt das System vordefinierte Profile für verschiedene
Sicherheitsansprüche bereit; Dritthersteller können für ihre Applikationen eigene Profile
mitliefern. An technischen Problemen scheitert dieses Konzept nicht, wie Sun mit der
Virtual Machine für Java gezeigt hat. Diverse Hersteller bieten bereits Programme mit
Sandbox-Funktionen an. Doch zum einen fehlt es ihnen an Verbreitung, zum anderen
bleiben solche Bemühungen ohne vollständige Integration in das Betriebssystem nur
Flickwerk.
Ausführung nur bei korrekter Checksumme - ECCO
Besonders für Firmennetze mit hohen Sicherheitsstandards wäre ein noch weiter
gehendes Konzept interessant: Das System könnte vor dem Ausführen jedes Programms
dessen Unversehrtheit anhand einer Prüfsumme testen. Nur wenn das Programm diesen
Test besteht, wird es überhaupt gestartet: Execute with Correct Checksum Only ECCO. Für neue Programme kann der Hersteller digital signierte Prüfsummen
mitliefern, oder der Benutzer kann bei der Installation - als Administrator natürlich eine solche erzeugen lassen. Damit kann man auch gleich sicherstellen, dass Anwender
Seite 9
SI-LABOR – G. Varvelli
Versuch 1 – Viren
auf entsprechend eingerichteten Rechnern keine eigenen Programme aus möglicherweise dubiosen Quellen installieren. Ein ähnliches Konzept für sich selbst schützende
Programme wurde bereits 1992 in der c't vorgestellt [4].
3.4
Übertragungsmedium E-Mail und die Rolle der ISP
E-Mail hat mittlerweile Disketten als häufigstes Verbreitungsmedium für Viren und
Würmer abgelöst. Das Antiviren-Zentrum Kaspersky Labs führt bereits 85 Prozent aller
Infektionen auf verseuchte E-Mails zurück. Außer in Firmennetzen mit speziellen
Filtern für E-Mail auf den Servern bleibt jedoch der Schutz vor solchen Schädlingen
ausschließlich den Anwendern überlassen. Dabei wären sicherlich viele Firmen und
auch Privatanwender bereit, dafür zu zahlen, dass ihnen jemand diese Aufgabe
abnimmt. Internet Service Provider (ISP)
könnten die Bezeichnung Service im Namen
endlich einmal wörtlich nehmen und als Dienstleistung die Mail ihrer Kunden vor ihrer
Weiterleitung auf Viren überprüfen. Bei einem Schädlingsbefall käme die Mail in
Quarantäne, Absender, Empfänger und ein vorher festgelegter Administrator würden
über den Vorfall unterrichtet. Alternativ könnte man die Mail auch nur mit einem
deutlichen Warnhinweis im Betreff versehen, die den Empfänger vor dem Öffnen auf
die mögliche Gefahr aufmerksam macht.
Besser als ein normaler Anwender kann der ISP die Signatur-Datenbanken der VirenScanner ständig auf dem neuesten Stand halten. Die Firma MessageLabs, die in
Zusammenarbeit mit Providern solche zentralen Viren-Checks anbietet, aktualisiert ihre
Datenbanken alle zehn Minuten. Da die Hersteller von Antiviren-Software nach dem
Auftreten von neuen Viren in der Regel innerhalb weniger Stunden entsprechende
Signaturen bereitstellen, haben die Scanner viel bessere Chancen, einen Virus
rechtzeitig zu erkennen. Um nicht von einem Hersteller abhängig zu sein, arbeitet
MessageLabs außerdem mit mehreren, verschiedenen Scannern - ein Luxus, den sich
nur wenige Privatanwender leisten. Probleme bereiten bei diesem Verfahren jedoch
verschlüsselte E-Mails (S/MIME oder PGP), deren Inhalt sich einer Kontrolle durch
Viren-Scanner entzieht. Solche Mails können nur vom jeweiligen Absender oder
Empfänger auf Viren getestet werden. Der Anteil von verschlüsselter Mail ist zwar noch
relativ gering, aber deutlich steigend – eigentlich ein begrüßenswerter Trend.
Seite 10
SI-LABOR – G. Varvelli
Versuch 1 – Viren
In Deutschland bietet der Hamburger Provider Ision die Dienste von MessageLabs an allerdings nur für Firmenkunden [5]. UUNet hat zwar eine Kooperation mit der
britischen Firma, bietet aber nach eigenen Aussagen wegen Problemen mit dem
Datenschutz in Deutschland keine zentralen Viren-Scans an.
Wer auf Windows angewiesen ist, sich aber vor Viren schützen möchte, muss das also
notgedrungen selber tun. Das heißt in erster Linie: Vorsicht. Bei Mail-Attachments ist
grundsätzlich Misstrauen angebracht - auch wenn sie von Bekannten kommen.
Schließlich könnten diese selbst Opfer eines Virus sein, der sich ohne ihr Wissen der
gespeicherten Adressen bedient hat. Wer regelmäßig große Dateimengen mit anderen
austauscht, sollte mit diesen vereinbaren, dass jede Mail mit einem Attachement
zunächst durch eine reine Text-Mail explizit angekündigt wird.
Doch infizierte E-Mails müssen nicht mehr unbedingt ein Attachement enthalten, das
erst durch Anklicken aktiviert wird. Manche Schädlinge nutzen bekannte Sicherheitslücken von Windows aus, um schon beim Öffnen der Mail ein fremdes Programm
auszuführen. Dabei handelt es sich um (komprimierte) HTML-Mails, die Visual-Basicoder JavaScript-Code enthalten. Patches von Microsoft und eine sichere Konfiguration
des E-Mail-Programms schließen – zumeist – diese Sicherheitslücken [6]. Auch bei
Downloads fremder Dateien sollte man Vorsicht walten lassen. Erste Anhaltspunkte für
die Vertrauenswürdigkeit der Quelle liefert bereits die URL: So ist das Risiko beim
Web-Server einer namhaften Firma sicher geringer als bei einem ftp-Server, der nicht
über einen Namen, sondern nur über eine IP-Adresse im Zahlenformat erreichbar ist.
Hoaxes – Falschmeldungen
So gut wie jeder Benutzer von E-Mail-Programmen hat bereits Warnungen vor Viren
per E-Mail erhalten – von Freunden oder irgendwo her. Dabei handelt es sich in der
Mehrzahl um Falschmeldungen, so genannte Hoaxes, die Anwender verunsichern und
zur Weiterleitung animieren sollen. In regelmäßigen Abständen rollen wahre Lawinen
solcher Hoaxes durch das Internet, die manchen bereits mehr auf die Nerven gehen als
richtige Viren. Hoaxes richten allein durch ihre schiere Masse und die für sie
verplemperte Arbeitszeit beträchtlichen Schaden an.
Seite 11
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Wer eine Virenwarnung per E-Mail erhält, sollte sich zunächst auf den Webseiten der
Antivirus-Labors informieren [7]. Dort findet er zumeist auch schon einen Hinweis auf
den Hoax, den er dann einfach ignorieren und löschen sollte. Nur wenn die Hersteller
von Antiviren-Software vor einem tatsächlich aktiven Virus warnen, ist es unter
Umständen sinnvoll, die Meldung an andere weiterzuleiten - dann aber gleich mit dem
Link zur Beschreibung des Schädlings. Weitere Informationen zu Hoaxes finden sich
auch auf den deutschen Hoax-Info-Seiten [8].
3.5
Wie funktionieren Viren?
Entsprechend der klassischen Definition nach Cohen ist ein Computervirus ein Programm, das andere Programme infizieren kann, indem er diese so modifiziert, dass sie
eine – eventuell modifizierte – Kopie von ihm enthalten. Dabei liegt der Schwerpunkt
dieser Definition auf der Fähigkeit, sich durch die Infektion (anderer Dateien oder
Datenträger) zu verbreiten. Ist diese Voraussetzung erfüllt, kann ein solches Programm
als Virus klassifiziert werden. Dabei ist eine Schadensfunktion nicht erforderlich,
obwohl jegliche Art ungewollter Aktivitäten (wie eben das „Einpflanzen“ fremden
Codes) ohne Kenntnis des Benutzers natürlich schon als Schädigung interpretiert
werden kann. Die Einteilung beziehungsweise Unterscheidung von Computerviren
erfolgt gewöhnlich durch folgende drei Kriterien:
-
Was wird infiziert/beschädigt? Welcher Teil eines Systems wird infiziert
(ausführbare Dateien, Containerdateien, Boot-Sektor usw.)?
-
Wie wird infiziert (Art und Weise)?
-
Wie wird die Infektion und das Wirken verborgen?
3.5.1 Einordnung nach „Infektionsopfer“
Bootsektor- und Partitionsviren
Jeder bootfähige Datenträger, sei es nun eine Diskette oder eine Festplatte, besitzt einen
speziellen Sektor, in dem wichtige Informationen für den Startvorgang des jeweiligen
Seite 12
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Systems enthalten sind. So finden sich im ersten Sektor Routinen zum Testen und
Initialisieren der Hardware und zum Aufruf der Startfunktionen des Betriebssystems.
Sektor 0 muß deshalb als erstes aufgerufen werden, was ihn als erstklassiges und
beliebtes Angriffsziel qualifiziert. So ist es auch nicht verwunderlich, daß die ersten in
Umlauf gelangten PC-Viren den Bootsektor als Unterschlupf und Verbreitungsmöglichkeit nutzten. Zum Beispiel der bereits genannte Klassiker "Pakistani-Brain", der
sich aufgrund mangelnder Schutzmittel wie ein Flächenbrand ausbreitete.
In der frühen DOS-Ära, als Festplatten nur vom Hörensagen bekannt waren,
beschränkten sich die meisten Viren auf den Bootsektor von Disketten, die damals noch
5 1/4 Zoll groß waren. Folgende Generationen fühlten sich bald auch auf Festplatten
heimisch. In der Regel wird dabei auf Festplatten nicht der Bootsektor, den es auf jeder
Partition
gibt,
Partitionssektor,
sondern
als
der
Opfer
sogenannte
auserkoren.
Master-Boot-Record
Dieser
befindet
sich
(MBR),
auf
dem
alias
ersten
physikalischen Sektor der Platte und enthält Daten über sämtliche vorhandenen
Plattenpartitionen. Zusätzlich findet sich im MBR ein kleines Programm, welches vom
BIOS gestartet wird und dem System beim Starten wichtige Informationen liefert, zum
Beispiel von welcher Partition das Betriebssystem anlaufen soll. Damit der Eindringling
genügend Platz im recht engen MBR findet, wird dieses Programm entweder an einen
anderen Ort der Platte verlegt und durch eigene Routinen ersetzt oder teilweise
umgepatcht. Die Festplatte ist dann immer noch bootfähig. Startaufrufe werden einfach
an den verschobenen oder veränderten MBR weitergeleitet. Vielfach beschränkt sich
das Schadenspotential von MBR-Infektoren auf Verschiebeaktionen, bei denen das
System problemlos weiter funktioniert. Bei solch "harmlosen" Vertretern gehen
höchstens einige Daten aus dem Sektor verloren, der den verlegten MBR aufnimmt.
Aber es geht auch anders: Einige besonders clevere Exemplare verschlüsseln den
verlegten MBR, so daß dieser ohne den aktiven Virus, der alle Zugriffsversuche
auffängt,
nicht
mehr
lesbar
ist.
Wird
der
Virus
in
solchen
Fällen
samt
Entschlüsselungsroutine beseitigt, ist die Festplatte praktisch unlesbar, da auf die
lebenswichtigen Bootinformationen nicht mehr zugegriffen werden kann. Vergewissert
euch deshalb vor möglichen Reinigungsexzessen, welche Plage sich im System
eingenistet hat.
Seite 13
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Sitzt ein Virus in der Bootregion, läuft dann die Startsequenz bei Betriebssystemen auf
DOS-Basis (95/98 analog) zumeist nach folgendem Muster ab:
1.
Einschalten des Systems;
2.
Informationen aus dem ROM-BIOS werden gelesen;
3.
Laden des Bootsektors, Lesen der Partitionsinformation -Start des Viruscodes;
4.
der Virus veranlaßt das Laden des in einem anderen Sektor abgelegten
originären Bootsektors;
5.
der für die Vermehrung zuständige Teil des Viruscodes begibt sich auf eine
residente Lauerposition im RAM
6.
Laden des Betriebssystems (CONFIG.SYS, autoexec.bat)
7.
DOS-Prompt – wird bei ’95 und ’98 übersprungen
8.
Start des ersten Programms (der Win 95/98-Routinen)
9.
Neuinfektionen erreichbarer Datenträger
Datei-Viren
Datei- oder Link-Viren sind die häufigste Virenart im DOS-/Windows-kompatiblen
Bereich, stellen aber nicht die Mehrzahl der Infektionen. Die ist Bootsektor- und
Makro-Viren vorbehalten.
Die Vermehrung der Dateischädlinge erfolgt durch Befall von ausführbaren Dateien. Da
COM-, EXE- oder sogenannte Overlay-Dateien unterschiedliche Strukturen aufweisen,
ein Befall also nicht nach allgemeingültigen Regeln erfolgen kann, weisen die meisten
Viren
eine
Spezialisierung
auf
und
können
nur
eine
Dateiart
infizieren.
Selbstverständlich gibt es auch Allroundspezies, die sich über jede ausführbare Datei
hermachen. Datendateien wie Textfiles werden allerdings nicht befallen, befallene
Dateien müssen ausführbar sein. Innerhalb der großen Familie der Dateiviren wird
wiederum zwischen überschreibenden und nicht überschreibenden Viren unterschieden.
Seite 14
SI-LABOR – G. Varvelli
Versuch 1 – Viren
a) überschreibende Viren
Diese Virenart vernichtet mit der Infektion die Originaldatei, die entweder komplett
oder teilweise zerstört wird. Bei Aufruf dieser Datei durch den Benutzer wird dann der
Virus nebst Schadensfunktion ausgeführt. Derartige Schädlinge können sehr klein sein,
da sie auf keinerlei Lauffähigkeits- und Kompatibiltätsprobleme Rücksicht nehmen
müssen. Die Dateilänge von befallenen Dateien ändert sich durch die Infektion in der
Regel nicht. Eine Reparatur ist nicht möglich, da die ursprüngliche Datei vernichtet
wird. Überschreibende Viren sind durch die sofortige Zerstörung des Wirtsprogramms
leichter zu entdecken als andere Arten. Ein natürlicher Virus, der bereits bei der
Infektion seinen Wirt erlegen würde, hätte keine dauerhafte Überlebenschance; gleiches
gilt auch für die digitalen Plagen.
b) anhängende Viren
Die meisten Dateiviren verfahren nach dem Motto „leben und leben lassen", hängen
sich entweder an das Ende der Datei oder schreiben sich selbst vor den Wirtscode,
wobei dieser zumeist funktionsfähig bleibt. Bugs, schlampige Programmierung oder
Inkompatibilitäten mit der Codebasis von Wirtsdateien können jedoch zur Zerstörung
führen, auch wenn dies vom Virenprogrammierer ursprünglich gar nicht geplant war.
Nach erfolgreicher Infektion wird bei Ausführung der infizierten Programme zunächst
der Virus und erst danach die Wirtsdatei ausgeführt.
Bei einer derartigen Veränderung der befallenen Dateien ändert sich natürlich die
Dateilänge. Ein aufmerksamer Benutzer konnte zu DOS-Zeiten den Befall in der Regel
rasch feststellen, wenn es sich nicht gerade um ein Virenexemplar mit StealthEigenschaften handelte (siehe weiter unten). Bekannte Vertreter dieser Spezies sind
BlackJack, Jerusalem, die Vienna- und die Vacsina-Familie.
Companion-Viren
Eine typische DOS-Eigenschaft ist die Bevorzugung von COM-Dateien. Existiert zu
einer
EXE-Datei
eine
gleichnamige
COM-Datei, wird diese bei Eingabe des
Dateinamens zuerst ausgeführt. Die sogenannten Companion-Viren machen sich dies
Seite 15
SI-LABOR – G. Varvelli
Versuch 1 – Viren
zunutze, indem sie nach einem EXE-Programm suchen und eine gleichnamige
COM-Datei erzeugen, die den Virencode enthält. Diese Dateien weisen zumeist die
gleiche Länge auf und werden sehr oft durch das Setzen des Verborgen- oder
System-Dateiattributs versteckt. Startet der ahnungslose Benutzer ein DOS-Programm,
wird in diesen Fällen zunächst der Virus ausgeführt und danach erst die entsprechende
Datei.
Die
Entfernung
derartiger
Eindringlinge
gestaltet
sich
einfach.
Die
betreffende
COM-Datei wird gelöscht und eine saubere Version (Installationsdisketten immer
schreibgeschützt einsetzen) ersetzt – fertig.
Multipartite-(Hybrid-)Viren
Besonders üble Zeitgenossen sind die sogenannten Multipartite- oder Hybrid-Viren, die
mehrere Infektionsmechanismen einsetzen, und sowohl Boot- bzw. Partitionssektoren
als auch Dateien infizieren können. Verbreitete Exemplare dieser Spezies sind
Neuroquila, Natas, Tequila (malte nette Fraktale...) und Goldbug.
Multipartite-Viren sind in der Regel schwierig zu entfernen, weil der Virencode restlos
aus allen Komponenten entfernt werden muß. Erschwerend kommt hinzu, daß die
Hybriden bestimmte Tricks benutzen, um sich gegen Enteckung und Entfernung zu
wehren. So wird in der Regel der MBR der Festplatte verschlüsselt, so dass ohne
aktiven Virencode, der den notwendigen Schlüssel enthält, jegliche Bootversuche von
einer unverseuchten Diskette zum Scheitern verurteilt sind. Der Rechner findet dann
einfach seine Festplatte nicht mehr, da an der Stelle, an der die entsprechenden Daten
liegen sollen, nur unlesbarer Code zu finden ist. Mit der Meldung "Ungültiges Laufwerk
C:" enden alle Versuche, auf das System zuzugreifen. Andererseits besitzen derartig
hochentwickelte Saboteure auch ausgeprägte Stealth-Fähigkeiten, die im aktiven
Zustand (Booten von verseuchter Platte) ihre Anwesenheit verbergen können.
Zur Identifizierung und Entfernung sollten deshalb nur die aktuellsten und besten
Antivirenprogramme zum Einsatz kommen. Gegen die verbreitetsten Plagen gab es
auch verschiedene ONESHOTS, die nur gegen einen bestimmten Virus aktiv wurden (z.
B. K-NQ gegen Neuroquila).
Seite 16
SI-LABOR – G. Varvelli
Versuch 1 – Viren
3.5.2 Einordnung nach Infektionsart
Speicherresidente Viren (TSR-Viren)
Solange der Virencode in einer infizierten Datei schlummert, kann er nicht aktiv
werden. Damit der Störenfried seine implementierten Funktionen ausführen kann, muß
er zunächst in den RAM-Speicher des Systerns gelangen. Dies geschieht durch den
Aufruf einer infizierten Datei. Ist der Schädling so ausgelegt, daß er danach einer
infizierten Datei Teile seines Codes dauerhaft im Speicher belässt, spricht man von
einem residenten Virus. Er „residiert" im RAM des Computers. Gewöhnlich schaltet
sich der Eindringling zwischen verschiedene Interrupts, über die die Steuerung des
Computers erfolgt und kann von dieser Position ungestört seinem Treiben nachgehen.
Die Vorteile einer derartigen Verhaltensweise liegen auf der Hand. Vagabundieren die
Viren erst einmal resident im speicher herum, können sie sich sehr schnell verteiten und
fallen zumeist nicht durch außergewöhnliche Festplattenzugriffe auf. Anders als die
"direct-action"-Infektoren liegt ein derartiger Schädling permanent auf der Lauer. Wird
ein ungeschützter Datenträger mit unbefallenem Bootsektor oder eine bevorzugte
Wirtsdatei entdeckt, schlägt die Infektionsroutine zu. Die speicherresidente Aktivität
weist allerdings auch Nachteile auf. Einerseits läßt sich aktiver Virencode im Speicher
feststellen, wenn es sich nicht gerade um ein Exemplar mit Stealth-Eigenschaften
handelt, andererseits kann die Arbeitsgeschwindigkeit des Systems abnehmen, wenn ein
normalerweise
zügiger
Interrupt
(Tastatur etc.) permanent über den zwischen-
geschalteten Virencode geleitet wird. Letzteres fällt allerdings auf schnellen Systemen
(> P2 266 MHz) nicht mehr auf.
Im Laufe der Zeit haben residente Viren die verschieden Techniken und Fähigkeiten
herausgebildet. Eine einheitliche Vorgehensweise gibt es nicht. So installiert sich eine
Vielzahl von Viren als TSR (terminate and stay resident) unter DOS im konventionellen
Speicherbereich (0 bis 640 kB). Andere setzen den sogenannten TOM-Zeiger herunter,
der die Obergrenze des DOS-Speichers angibt und schieben sich in den freigewordenen
Zwischenraum. Derartige Aktivitäten können natürlich, sofern es sich nicht um ein
Exemplar mit Tarnfunktionen handelt, mit normalen Mitteln des Betriebssystems - z. B.
dem DOS-Befehl MEM - entdeckt werden. Schwieriger festzustellen sind Viren, die die
Seite 17
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Größe des freien Speichers nicht verändern, sich zum Beispiel in unbenutzten
Speicherbereichen im DOSKernel oder in anderen residenten Programmen verbergen.
Mittlerweile gibt es hauptsächlich Exemplare, die sich in den oberhalb der magischen
DOS-Grenze von 640 kB liegenden Speicherbereichen (UMB und HMA) tummeln.
Sitzt der Übeltäter erst einmal im Speicher, läßt er sich oft nur noch durch eine
hardwaremäßige
Löschung
des
elektronischen
Gedächtnisses
per
Reset-Taste
vertreiben. Ein Warmstart mittels des gängigen "Affengriffs" (STRG+ALT+ENTF)
führt in vielen Fällen nicht zum Erfolg, da mittlerweile jedes bessere Kaliber einen
derartigen Affront durch Manipulation des Warmstart-Vektors verhindern kann. Das
System gaukelt dabei einen Warmstart vor, die entsprechenden Lämpchen leuchten auf,
in Wirklichkeit tut sich jedoch nichts, der Speicher, samt Eindringling, bleibt
ungelöscht. Aber auch nach einem Hardware-Reset des Systems erwacht der Schädling
wieder zum Leben. Damit er nämlich seine Position im Speicher beziehen kann, wird
nach dem erstmaligen Aufruf einer infizierten Datei entweder der Bootsektor der
Festplatte oder eine Datei infiziert, die bei jedem Start aufgerufen wird. Primär kommen
dafür natürlich command.com oder andere Systemdateien in Betracht. Weiste in reinen
DOS-Zeiten eine derartige Datei also eines Tages eine veränderte Größe oder ein
anderes Datum auf, war mit Sicherheit ein Virus am Werk. In diesen Fällen half (und
hilft) nur noch ein Neustart von einer garantiert unbefallenen und schreibgeschützten
Diskette mit anschließender Tiefenreinigung des Systems.
Fast und Slow Infektoren
Die Vermehrung residenter Viren kann auf verschiedene Weise erfolgen. Wird jede
ausführbare Datei sofort nach ihrer Ausführung angegriffen oder attackiert der Virus
bereits beim Lesen eines Verzeichnisses alle potentiellen Wirte, spricht man von einem
sogenannten Fast Infector. Die Bezeichnung trifft die Sache ziemlich genau, da derartig
veranlagte Virenarten ein infiziertes System mit erheblicher Geschwindigkeit zersetzen
können. Besonders gefährlich ist in diesen Fällen ein Komplettdurchlauf der Festplatte
mit einem Virenprüfprogramm, das den residenten Virencode nicht erkennt. Während
die gescannten Dateien am Auge des Betrachters vorbeidefilieren, wird jeder potentielle
Wirt infiziert. Bei einem derartigen Komplettbefall dürfte die Entfernung erheblich
schwerfallen.
Seite 18
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Eine weitere Variante sind Siow Infectors, die sich durch ihren Infektionsmechanismus
nur sehr langsam verbreiten. Wirtsdateien werden nur dann befallen, wenn sie neu
erzeugt werden (z. B. durch Kompilation) oder wenn der Benutzer in sie schreibt. Trotz
ihrer langsamen Ausbreitung ist diese Virenspezies gefährlicher als viele andere, da die
schleichenden Veränderungen in der Regel nicht bemerkt werden.
Direct-Action-Viren
Wenn der Virus unmittelbar nach dem Aufruf einer infizierten Datei keine residente
Speicherposition bezieht, sondern vorhandene Laufwerke bzw. Verzeichnisse nach
potentiellen Wirten durchsucht und diese zu infizieren versucht, spricht man von einem
Direct-Action-Virus. Anders als bei den zuvor beschriebenen residenten Viren sind
derartige, zumeist sehr kleine Schädlinge nicht darauf angewiesen, Interruptvektoren zu
verbiegen und auf diese Weise die Systemkontrolle zu erlangen. Vorteil solcher
Vermehrungspraktiken ist die Umgehung von residenten Wächterprogrammen, die an
sensiblen Interruptvektoren auf der Lauer liegen. Nachteilig wirken sich allerdings die
langen, nicht durch Benutzertätigkeit hervorgerufenen Zugriffszeiten aus, während der
Übeltäter die Platte nach möglichen Opfern scannt. Schöpft ein aufmerksamer User
dadurch Verdacht und durchsucht nun seinerseits sein System mit einem neuen
Prüfprogramm, dürfte es dem Untergrundaktivisten an Kragen gehen.
Ein weiterer Nachteil direkt agierender Exemplare ist die Tatsache, daß sie sich keine
der bei residenten Viren so beliebten Stealth-Techniken zu Nutze machen können.
3.5.3 Klassifizierung nach Schutzmaßnahmen gegen Entdeckung
Stealth- oder Tarnkappen-Viren
Kann sich ein Virus durch Tarnmechanismen einer Entdeckung entziehen, wird er als
Stealth-Virus bezeichnet. Dabei spielt es keine Rolle, ob sich das betreffende Exemplar
im Bootsektor, in Dateien oder in beiden zu Hause fühlt. Durch ihr verborgenes Wirken
können sich getarnte Arten natürlich wesentlich besser verbreiten als ungetarnte Viren
und haben dadurch bessere Überlebenschancen.
Seite 19
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Stealthviren verbergen, daß sie Dateien oder Sektoren manipuliert haben, und täuschen
damit die meisten DOS- und Windows-Hausmittel, wie CHKDSK, SCANDISK oder
MEM. Aber auch Virenprüfer werden in der Regel ausgetrickst. Befallene Dateien oder
Bootsektoren erscheinen bei einer Stealth-Infektion unverändert, weil der Virus
Lesezugriffe auf befallene Dateien registriert und dem Benutzer vorgaukelt, es wäre
alles in Ordnung.
Um derartige Zugriffe auf einen befallenen Wirtscode zu erkennen und die Täuschung
auszuführen, muß sich zumindest ein Teil des Viruscodes resident im Speicher
befinden. Die Tarnkappe kann durch Booten von einer unbefallenen Diskette gelüftet
werden, da der Virus dann seine residente Speicherposition nicht erlangt.
Stealth-Eigenschaften
sind
relativ
schwierig
zu
programmieren.
Konsequenz:
Tarnkappen-Viren sind häufig bugbehaftet und beschädigen hin und wieder das
Dateisystem. Indiz für einen Befall sind dann häufig querverkettete Dateien. Versuchen
Sie aber keinesfalls, die Beschädigung mit DOS-Hilfsmitteln zu beheben. Verwenden
Sie insbesondere niemals den Parameter ‚/F’ (automatische Fehlerbehebung) bei einem
CHKDSK- oder Scandisk-Durchlauf, da anderenfalls erhebliche Datenverluste auftreten
können.
Polymorphe Viren
Als polymorph werden Viren bezeichnet, die keine einheitliche Codierung aufweisen.
Die Vorteile einer derartig variablen Verschlüsselung liegen auf der Hand. Durch den
mit jedem neu infizierten Programm veränderten Aufbau der Entschlüsselungsroutine
wird Antivirenprogrammen die gängige Suche mittels Suchstrings unmöglich gemacht.
Der Virus sieht praktisch in jeder infizierten Datei anders aus. Eine bedingt zuverlässige
Entdeckung ist in diesem Chaos eigentlich nur durch eine algorithmische Suche oder
durch heuristische Analyse (Heuristik: Lehre von den Methoden zur Auffindung neuer
wissenschaftlicher Erkenntnisse) und Code-Emulation möglich. Kein Wunder, daß bei
polymorphen Attacken auch verbreitete Virenchecker häufig die Waffen strecken.
Besonders raffiniert gehen dabei Arten mit einer sogenannten Slow Polymorphic Engine
zu Werke. Durch gebremste Mutation verändert sich die Verschlüsselung nur sehr
langsam. Der Virus produziert, zumeist über Datum und Zeit gesteuert, über einen
Seite 20
SI-LABOR – G. Varvelli
Versuch 1 – Viren
kurzen Zeitraum nahezu identische Schlüssel. Schon einen Monat später sieht die
Codierung aber völlig anders aus. Eine vollständige Analyse der Verschlüsselung, als
Voraussetzung wirksamer Erkennungsroutinen, dauert dann einige Zeit, die der Virus
für seine Verbreitung nutzen kann. Erinnert sei hier nur an Tremor, der noch Monate
nach seinem ersten Auftreten von vielen Virenprüfern nicht zuverlässig erkannt wurde.
Ein
Trend
in
der
Virenentwicklung
waren
eine
Zeitlang
fremdprograminierte
polymorphe Verschlüsselungshilfen. Derartige Engines bieten Virenprogrammierern die
Möglichkeit, ihre Eigenkreationen mit polymorphen Eigenschaften zu versehen. Ist die
Engine erst einmal bekannt, kann jeder Virus, der diese Verschlüsselungshilfe in seinem
Code nutzt, zuverlässig gefunden werden. Wahrscheinlich blieb die Verbreitung der
PMEs deshalb hinter den Erwartungen ihrer Programmierer zurück.
Tunnelnde Viren
Als "tunnelnde" Viren werden Arten bezeichnet, die residente Wächterprogramme
umgehen können. Ein solcher Wächter liegt an den sensiblen Interrupts des Systems auf
der Lauer. Werden gemeinhin von Viren praktizierte illegale Aufrufe registriert, erfolgt
eine Warnung an den Benutzer. Ein tunnelnder Virus verfolgt nun innerhalb des
Speichers den Weg, den ein Interruptaufruf nehmen würde, und sucht auf diese Weise
im BIOS nach dem Anfang des OriginalInterrupthandlers. Hat er ihn gefunden, ruft er
diese Adresse direkt auf. Der am Kreuzweg wartende Wächter kann nun lange warten,
der Virus hat sein Wirken erfolgreich verborgen. Natürlich gibt es clevere Guardians,
die ein derartiges "lnterrupt Tracing" verhindern können. Die meisten Spürhunde
können so jedoch tatsächlich umgangen werden.
3.5.4 New Generation – Makroviren
Mitte 1995 wurden Computerviren bekannt, welche einen vollkommen neuen Infektionsmechanismus für ihre Ausbreitung benutzen. Dieser Virentyp infizierte zunächst
nur Dokumente im Winword-Format, indem er sich der komplexen Makrosprache
dieser Textverarbeitung bediente. Später erschienen auch Exemplare für Excel und die
Lotus- Textverarbeitung AmiPro. Zum Jahreswechsel 1996/97, also ein knappes Jahr
später, war die Zahl derartiger Viren bereits auf über zweihundert gestiegen.
Seite 21
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Der erste Virus seiner Art war wohl DMV, der von seinem amerikanischen
Programmierer zu Demonstrationszwecken per Internet verteilt wurde, vielleicht aber
auch ein deutsches Makro namens „Nachtwächter“, das mit einem Winword-Buch
verteilt wurde. Egal, der erste Makro-Virus, der in freier Wildbahn aktiv wurde, hieß
Concept und sollte wohl ebenfalls die Möglichkeiten der Makrotechnologie für die
Virenzucht aufzeigen, wie ein interner Vermerk des Autors vermuten läßt.
Vergleichbar mit der Brain-Epidemie, nur in viel größeren Dimensionen, von keinem
Schutzmechanismus gehindert, überholte Concept in wenigen Monaten locker den
Marktanteil, den sich andere Viren in Monaten und Jahren mühevoller Infektionsarbeit
erkämpfen mußten. Selbst der altehrwürdige Form-Virus, seit Jahren auf abertausenden
Festplatten heimisch, sah dagegen blaß aus. Die explosionsartige Verbreitung war vor
allem auf das wuchernde Internet zurückzuführen, in dem der unabdingbare Nährboden,
Microsofts Winword-Format, als Quasistandard für die Weitergabe von Texten reichlich
vorhanden ist. Dabei sorgte insbesondere eine infizierte Datei, die eigentlich vor
Concept warnen sollte und angeblich von einem bekannten Virenforscher stammte, für
die starke Vermehrung rund um den Globus.
Concept fand sich dann auch auf mehreren CD-ROMs, darunter auch eine Test-CD, die
Microsoft freigiebig an Hunderte ihrer OEM-Kunden in aller Welt verteilte. Apropos
Microsoft: Dort hatte man angesichts der gerade angelaufenen Auslieferung des neuen
Word 95, trotz der grassierenden Epidemie nichts eiligeres zu tun, als die durch
„Concept“
und
vergleichbare
Nachbauten
drohenden
Gefahren
herunterzuspielen.
Makroviren wurden als Scherz bzw. Streich abgetan. Die einzige Maßnahme, zu der
man sich herabließ, war die Freigabe einer ziemlich umständlich zu handhabenden
Dokument-Vorlage, die vor Concept & Co. schützen sollte.
Ursprünglich machte Concept von englischen Makrobefehlen Gebrauch, war also
zunächst mit der deutschsprachigen Winword-Version nicht lauffähig. Da der Virencode aber jedermann offen lag, dauerte es nicht lange, bis auch eine nationale Variante
erschien. Doch dieses Ereignis fiel kaum ins Gewicht, existierten doch kurze Zeit später
wesentlich gerissenere Makro-Viren, die unverdrossen das befallene System manipulierten (z.B. Colors) oder ein echtes Schadenspotential enthielten (Xenixos). Manch
einer der neuen Garde versuchte sogar, einen DOS-Virus in das System zu schleusen.
Seite 22
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Dabei gaben sich Dutzende Virenzüchter in aller Welt Mühe, die plötzliche Nachfrage
nach Makroviren in der VX-Szene und ihren im Internet betriebenen Viren-Servern zu
befriedigen. So erschienen Mitte 1996 alsbald die ersten automatischen MakroGeneratoren, wahlweise in englisch oder deutsch, die es auch Laien erlaubten, einen
Virus Zusammenzuklicken, der wahlweise über Lösch- und Tarnfunktionen verfügte
oder einen DOS-Virus freisetzte, dessen Code dann im Makrotext enthalten war.
Im Untergrund werden überdies nach alter Tradition umfangreiche Publikationen
vertrieben, die sich mit der Programmierung von (Makro-)Viren beschäftigen und
ausführliche Bastelanleitungen enthalten. Zu nennen wären hier nur das Magazin "Virus
Bits and Bytes" oder das spanische Hacker-Bulletin „29 A“. Ausschließlich mit der
Makroviren- Programmierung beschäftigte sich das elektronische Fachmagazin SLAM,
an dem „internationale Größen“ der Makrovirenszene mitarbeiten.
Bei
dem
angesichts
der
hereinbrechenden
Flut
neuer
Schädlinge
entstandenen
Medienrummel und der Aufmerksamkeit der aufgeschreckten Fachwelt, dauerte es nicht
lange,
bis
neben
minderjährigen
Möchtegernvirenzüchtern
auch
einige
der
publicitysüchtigen DOS-Traditionalisten auf die Makrolinie umschwenkten. Zu nennen
wäre hier nur die deutsche Neurobasher-Gruppe, die nach diversen "Erfolgen" in der
Vergangenheit (Tremor, Neuroquila und Co.) alsbald mit Hunter.C ihren ersten
polymorphen Makrovirus veröffentlichte. Dieses Exemplar stellt dann wohl auch eine
neue Generation der Word-Infektoren dar, verfügt es doch in bewährter Tradition über
die Fähigkeit, bei der Vermehrung seine Struktur zu ändern und ist überdies auch in der
Lage aktiv zu bleiben, ohne die normal.dot zu verändern. Bei der Beschränkung auf
Winword-Vorlagen
als
Wirte
sollte
es
nicht
bleiben.
Angesichts
der
applikationsübergreifenden Makrosprache erschien alsbald der erste Virus für Excel,
kurz darauf auch ein Exemplar für das altgediente AmiPro.
Dabei wird auch die tatsächliche Gefahr der Makroviren deutlich, die nicht, wie noch
ihre Assembler-Vorfahren, an ein bestimmtes Betriebssystem gebunden sind, sondern
auf jeder Plattform überleben können, auf der auch die zugrundeliegende Makrosprache
zu finden ist. Im Falle von Winword ist dies vorerst Windows, in den Versionen 3.x, 95,
98, NT4 und 2000, sowie das Apple Betriebssystem, für das es ebenfalls eine
Office-Version gibt.
Seite 23
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Hinzu kommt die Mächtigkeit der Makrosprache, die sich mit Version 8 auch unter
Winword zum ausgewachsenen Visual Basic (VBA) gemausert hat. Einen besseren
Virenbaukasten kann man sich kaum vorstellen. Makros können sich selbst kopieren,
DOSund Windows-API-Befehle aufrufen. Hinzu kommt die Möglichkeit, Makros mit
der
Read-only-Funktion
Untersuchungen
quasi
unzugänglich
zu
zu
verschlüsseln
machen.
und
Derartige
damit
Makros
für
können
nachträgliche
nur
noch
ausgeführt, gelöscht oder umbenannt werden.
Glücklicherweise existiert noch keine globale Windows Makrosprache (bald vielleicht
über
VBA
und
XML?),
da
andernfalls
entsprechende
Viren,
mit
immensem
Schadenspotential, nicht lange auf sich warten lassen würden.
Infektionsmechanismen
Virenprogramme sind in der in Winword enthaltenen Makro-Programmiersprache
geschrieben.
Makros
werden
grundsätzlich
in
sogenannten
Dokumentvorlagen
gespeichert, die alle notwendigen Voraussetzungen für einen bestimmten Dokumenttyp
(z. Bsp. Lebensläufe), wie Absatz-Formatierungen oder Textbausteine enthalten.
Dokumente können keine Makros enthalten, deshalb erfolgt die Verbreitung dieser
Virenspezies auch über Dateien, die in Winword-Vorlagen (*.dot) umgewandelt
werden. Diese Vorlagen erhalten dann jedoch die für das Word-Dokument-Format
obligatorische Dateiendung *.doc, um sich zu tarnen.Am Beispiel von Concept, der als
der erste weltweit verbreitete Virus seiner Gattung gilt, soll der Infektions-mechanismus
etwas näher beleuchtet werden. Concept und viele seiner Nachfahren bedienen sich
dabei u. a. der folgenden, in Winword integrierten Funktionalität: Makros können beirn
Starten von Winword bzw. beim Öffnen von Dokumenten oder Vorlagen ohne Zutun
des Benutzers automatisch ausgeführt werden.
Dabei gibt es eine Hierarchie der Ausführung von Makros gleichen Namens, die in
folgender Reihenfolge abgearbeitet wird:
1. Zuerst wird das automatische Makro ausgeführt, das in der mit dem aktuellen
Dokument verbundenen Vorlage enthalten ist, ist die geöffnete Datei selbst eine
Dokumentvorlage, wird natürlich das hierin enthaltene Makro ausgeführt.
Seite 24
SI-LABOR – G. Varvelli
Versuch 1 – Viren
2. Existiert ein solches Makro nicht, wird das Makro gleichen Namens in der globalen
Dokumentvorlage normal.dot ausgeführt.
3. Fehlt auch ein solches Makro, wird das interne Makro dieses Namens von Winword
ausgeführt.
Es kommt dabei nur das Makro zur Ausführung, welches gemäß der obenstehenden
Reihenfolge zuerst gefunden wird. Der Clou an der Sache ist allerdings, daß diese
automatischen Makros mit beliebigen Inhalten gefüllt werden können. Steckt also im
Makro AUTOOPEN, das ,beim Öffnen einer als Dokument getarnten Vorlage
automatisch ausgeführt wird, eine Virusroutine, wird diese unbemerkt durch den
Benutzer ausgeführt.
Umsetzung
Diesen Umstand nutzt auch Concept: Wird eine infizierte Vorlage geöffnet, prüft das
darin enthaltene Virenmakro AUTOOPEN zunächst, ob die weiteren Virenmakros
(PAYLOAD und FILESAVEAS) bereits in der globalen Vorlage normal.dot enthalten
sind. Ist dies nicht der Fall, werden die Virenmakros in die normal.dot übertragen.
Gleichzeitig wird unbemerkt ein Eintrag in der win.ini vorgenommen und ein
Textfenster mit einer '1' angezeigt. Dieses Fenster ist dann auch für den arglosen
Benutzer der einzige Hinweis auf die erfolgte Concept -Infektion. Andere Viren sind
längst nicht so mitteilsam. Danach ist der Virus scharf und infiziert Dokumente auf
folgende Weise: Speichert der Anwender Dateien über den Menüpunkt ‚Datei /
Speichern unter’, wird zunächst der Dokumenttyp unbemerkt auf „Word-Vorlage“
umgestellt. Danach werden die Virenmakros in die neue Vorlage übertragen, die nun
bereit ist, weitere Infektionen auszuführen.
Schadenspotential
Glücklicherweise
enthält
die
ursprüngliche
Concept-Variante
keine
wirkliche
Schadensfunktion. Außerdem konnte diese Variante unter einer deutschen WinwordVersion
die
Unterschiede
normal.dot
in
den
ihr
Infektionsprogramm
sprachspezifischen
nicht
Versionen
voll
von
realisieren,
weil
Winword-Basic
es
gibt.
Kompatible Nachbauten ließen allerdings nicht lange auf sich warten. Diese enthielten
Seite 25
SI-LABOR – G. Varvelli
Versuch 1 – Viren
dann auch echte Schadensfunktionen, die am Beispiel des Xenixos-Virus (auch:
Nemesis) erläutert werden sollen, der einer der ersten Makroviren war, der speziell für
die deutsche Winword-Version geschrieben wurde.
Beim Öffnen einer infizierten Datei werden zunächst, wie bei Concept, die Virenmakros
in die normal.dot kopiert. Geöffnete Dokumente werden ebenfalls beim `Speichern
infiziert und intern als Vorlagen abgespeichert. Abhängig vom aktuellen Systemdatum
führt Xenixos dann verschiedene Aktionen aus. Im März versucht Xenixos per
Debug-Skript den gefährlichen Neuroquila-Virus zu erzeugen. Dies funktioniert jedoch
in der ursprünglichen Xenixos-Variante alufgrund eines Fehlers in der Batch-Datei
nicht. Der Neuroquila-Code findet sich dann jedoch unverschlüsselt in der generierten
exe-Datei. Im Mai wird der Befehl
@echo j FORMAT C: /U > nul
in die autoexec.bat eingefügt, der dafür sorgt, daß nächsten Systemstart die Festplatte
formatiert wird. Weiterhin wird geprüft, ob ein Sekundenwert von mehr als 45 gegeben
ist. In diesem Fall wird für die aktuell gespeicherte Datei das Paßwort Xenixos
vergeben. Zeigt die Systemuhr einen Sekundenwert kleiner 30, wird einem aktuell
gedruckten Text die Zeile „Nemesis.Corp“ hinzugefügt.
Diese kleine Übersicht zeigt bereits, über welche Möglichkeiten Makroviren verfügen.
Neben der Manipulation von Systemdateien, können auch herkömmliche AssemblerViren mittels des Debug-Kompilers erzeugt und auf das System losgelassen werden.
Fazit: Auch wenn den umsatzfördernden Horrorszenarien der Antiviren-Branche und
den aufgeblähten Stories der Fachpresse mit Vorsicht begegnet werden sollte, sind
Makroviren keinesfalls auf die leichte Schulter zu nehmen.
Schutz vor Makroviren: Vorbeugen...
Der beste Schutz gegen Makroviren ist, wie bei allen Viren, die Erzeugung
regelmäßiger
Backups
von
wichtigen
Dokumenten,
sowie
der
globalen
Winword-Formatvorlage normal.dot. Letztere können Sie zwar durch Löschen und
Word-Neuinstallation wieder herstellen, die neue Version enthält jedoch keine der von
Ihnen
vorgenommenen
Anpassungen
(Menüstruktur,
Formatvorlagen,
Autotext,
Seite 26
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Makros etc.). Hinweis: normal.dot befindet sich im Office-Unterverzeichnis Vorlagen.
Es hat jedoch keinen Sinn, die globale Vorlage mit einem Schreibschutz zu versehen, da
die meisten Angreifer diese Barriere mittlerweile problemlos deaktivieren können.
Gleiches gilt für die automatische Abfrage zum Speichern der geänderten Vorlage –
immerhin bei der ersten Generation ein starkes Indiz für einen Befall. Auch diese
Sicherheitsfunktion wird durch neuere Exemplare deaktiviert. Um zu verhindern, daß
sich Viren einschleichen, ist es hifreich, Dokumente im ASCII- oder Rich-Text- Format
(*.rtf) auszutauschen. Kritische Dokumente können auch vor dem Öffnen in Word
problemlos mittels der Windows Schnellansicht-Funktion in Augenschein genommen
werden. Natürlich können Dokumenteninhalte auch im virensicheren WordPad geöffnet
und dann mittels Kopieren und Einfügen gefahrlos in Word importiert werden.
Noch ein wichtiger Tip: Viele Makroviren setzen einen Script-Virencode ab, der mit der
DOS-Debug-Funktion zu einem vollwertigen Virus kompiliert werden soll. Einige
versuchen auch die Festplatte zu formatieren. Benennt deshalb die Dateien debug.exe,
format.com und deltree.exe um. Diese Dateien sind sowohl im DOS-Verzeichnis sowie
im Windows-95/98-Command Verzeichnis. Die umbenannten Dateien funktio-nieren
nach der Operation wie gewohnt, stehen aber den Viren nicht mehr zur Verfügung und
können keinen Schaden anrichten.
Word 98 verfügt bereits über einen standardmäßigen „Virenschutz“. Aktiviert die
Option Makrovirus-Schutz in der Optionen-Dialogbox über Menü Extras (office 97)
beziehungsweise in der Makro-Sicherheitseinstellung über Menü Extras / Makro /
Sicherheit (Word 2000).
Abbildung 3: Menüauswahl Extras / Makro / Sicherheit und die entsprechende Dialogbox bei Word 2000 mit der höchsten sicherheitsstufe.
Seite 27
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Word prüft dann vor jedem Öffnen eines Dokuments, ob dieses Makros beinhaltet und
warnt gegebenfalls davor. Es können die in der Dokumentvorlage enthaltenen Makros
dann entweder deaktiviert oder den Öffnungsvorgang ganz abgebrochen und das
verdächtige Objekt mit einem externen Virenscanner unter Lupe genommen werden. Es
sollte sich jedoch keiner auf diese Schutzmaßnahme allein verlassen, da bisher jeder
Virenschutz meist früher als später von findigen Programmierern überwunden wurde.
... und Heilen
Befallene Dokumente, die, wie festgestellt, tatsächlich getarnte Dokumentvorlagen sind,
können mit einem aktuellen Anti-Viren-Programm, das ein Makro-Modul einhaltet, von
den Schädlingen gereinigt werden. Bei vielen Viren (siehe hierzu die Listen
verschiedener
Antivirenprogramme-Hersteller)
genügt
es
bereits,
die
kritischen
Virenmakros im Makro-Manager (Winword-Extras-Menü) zu löschen. Den Inhalt
befallener Dokumente kann durch Öffnen des Dokumentes unter WordPad und
Transportieren des gesamten Textes mittels Kopieren und Einfügen in das geöffnete
WinWord einfach gerettet werden, sofern dieser nicht zuvor durch einen Virus gelöscht
wurde. Infizierte Dokumente können natürlich danach gelöscht werden, um ganz sicher
zu sein. Bedenkt aber, daß der Übeltäter sein Nest auch in der globalen Vorlage
normal.dot hat, so daß diese bei einer Radikalkur ebenfalls durch ein Backup oder eine
Neuinstallation ersetzt werden muss.
3.6
Was sind Würmer?
Anfang
der
1980er
Jahre
experimentierten
Forscher
mit
selbstreproduzierenden
Programmen, die unter anderem Funktionen von Netzwerkprotokollen ausnutzten; Im
Rahmen dieser konstruktiven Experimente wurde der Begriff worm geprägt [9].
Er bezeichnet seitdem alle unabhängigen Programme oder Prozesse, die sich in einem
Netzwerk
selbst
reproduzieren
können.
Die
Motivation
für
die
Forscher
zur
Entwicklung solcher Programme stellte die beabsichtigte bessere Ausnutzung der
Rechenleistung und der Ressourcen von nicht ausgelasteten Rechnern dar. Basierend
auf der Möglichkeit, beliebige Programme (d. h. auch eine Kopie eines aktiven
Seite 28
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Programms) von einem Rechner auf einen anderen Rechner zu kopieren und dort
auszuführen, sind die für Computer-Würmer notwendigen Funktionen heute in vielen
Netzwerken allgemein verfügbar. Aufgrund von Mängeln in den Protokollen und
Sicherheitsfunktionen, die diese Funktionen kontrollieren und bereitstellen, können
diese auch mißbraucht werden.
Computer-Würmer werden heute hauptsächlich Programme zur Sabotage von Software
genannt, die sich oft in rasender Geschwindigkeit über die Computer-Netzwerke der
Welt ausbreiten. Dabei unterscheiden sie sich vor allem in ihren Verbreitungsmöglichkeiten vom Computervirus: Während Viren für ihr zerstörerisches Werk immer
einem "Wirt" anhängen müssen, haben Würmer ein eigenständiges „Fahrwerk“. Nur im
Schlepptau gelangen Viren in andere Computer. Würmer hingegen können sich selbst
auf den Weg machen. Dabei nutzen sie verschiedene Möglichkeiten. Die berühmt
gewordenen Würmer „Melissa“ oder „I love you“ nutzten für ihre Verbreitung E-Mail
Programme. Sie wurden aktiv, sobald der Adressat die E-Mail öffnete und schickten
sich dann selbstständig an dessen Einträge im Adressbuch weiter. Der Wurm „Code
Red“ dagegen nutzte für sein Fortkommen Sicherheitslücken in Internet-Programmen,
so genannte Verwundbarkeiten. Computer-Würmer der jüngsten Generation – wie etwa
„Nimda“ – stehen im Verdacht, sich über mehrere „Fahrwerke“ zu verbreiten.
Allerdings kann dem beängstigten Computer-User auch entwarnendes mit auf dem
„Informations“-Weg gegeben werden: Vieles um „Melissa“ wurde 1999/2000 auch von
der Presse aufgebauscht, bedenkt man, dass dieser Wurm bei seinem weltweiten
Auftreten auf zehntausende Rechner eigentlich schon seit einem Jahr unter dem Namen
W97M von Herstellern von Anti-Viren-Software bekannt war, die ihn bei Updates aber
nicht in ihre Produkte aufgenommen hatten. Um eine Riesenblamage besorgt, sprach
man gegenüber den Medien von einem neuen Virus und nannte ihn „Melissa“. Wie man
aus dem Artikel in [10] aus der FAZ entnehmen kann, ist hinter diesem Thema viel
Hype. Bei Verdacht, in die eine oder andere Richtung, sind die ersten Anlaufstellen
Informationsseiten wie die bereitsgenannte [8] sowie einschlägige Websites mit
Vireninformationen und -datenbanken [11][12].
Seite 29
SI-LABOR – G. Varvelli
3.7
Versuch 1 – Viren
Was sind Trojaner?
3.7.1 Zweck der Trojaner
Der Begriff Trojanisches Pferd geht auf D. Edwards zurück und wurde erstmals in einer
Arbeit über MULTICS veröffentlicht [13]. Die Problematik selbst ist jedoch bereits seit
den 1960er Jahren bekannt. Ihr kommt gerade im Bereich der Computer-Kriminalität
eine große Bedeutung zu, denn ihre Eigenschaft, bis zu der Aktivierung keine
auffälligen Auswirkungen zu verursachen, macht ihre Entdeckung sehr schwierig. Sie
befinden sich zwar im Kontrollfluß, überprüfen jedoch nur die Erfüllung der durch die
Programmierung festgelegten Voraussetzungen, um anschließend die Kontrolle an die
normale Funktion der Komponente weiterzugeben oder sie selbst zu erbringen. In
zunehmendem Maße werden sie auch eingesetzt, um Computer-Viren freizusetzen.
Trojaner sind im Gegensatz zu Viren vollständig eigene Programme mit mehr oder
weniger desktruktiver Energie. Mit Hilfe eines Trojaners gelingt es, die Kontrolle über
einen infizierten PC zu erhalten und diverse Funktionen auszuführen. Aus diesem
Grund werden Trojaner von Hackern auch gerne als sogenannte Remote-AccessControls, also als eine Art Fernsteuerungs-Software bezeichnet.
Trojaner werden fast ausschließlich und meistens gezielt über das Internet verbreitet. Zu
diesem Zweck werden sie zum Beispiel in Trägerprogramme eingebaut, die nützliche
Funktionen vorgeben und im Hintergrund den Server in das zu infizierende System
einfügen. Mit Hilfe dieses Servers ist es dem Hacker dann möglich, ferngesteuert über
die Systemports – z.B. auch Port 80 für die Internetanbindung, siehe sogenannte
Fireholes – diverse Funktionen auszuführen.
Bevorzugt werden Trojaner eingesetzt, um Informationen jedwelcher Art zu spionieren.
Besonders begehrt sind dabei beispielsweise die Paßwörter zum Provider. Zu diesem
Zweck werden sogenannte Keylogger eingesetzt, die den Puffer der Tastatur auslesen
und die darin enthaltenen Informationen dem Hacker verfügbar machen.
Seite 30
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Weitere Funktionen können sein:
-
Kontrolle über das Dateisystem (Kopieren, löschen, überschreiben),
-
Herunterfahren des Betriebssystems,
-
Öffnen und Schließen des CD-ROM Laufwerks,
-
Einfügen von Viren in das infizierte System
-
Und zum Teil vollständige Kontrolle über die Peripherie (z.B. Webcams).
Wie erkenne ich einen Trojaner in meinem System ?
Die Entdeckung von Trojanern ist leider nicht einfach, weil die Wege, über die sich
Trojaner ins System „einklinken“ zu unterschiedlich sind. Manche Trojaner schreiben
Zeilen zum Aufruf in die beiden Dateien win.ini oder system.ini, andere schreiben
Schlüssel in die Windows-Registry, wieder andere nutzen eine Kombination aus den
Möglichkeiten. Insbesondere folgende Schlüssel sollten bei Verdacht auf Infizierung
genauer angeschaut werden:
-
HKEY_LOCAL_MACHINE\Software\Microsoft \Windows\CurrentVersion\Run
-
HKEY_LOCAL_MACHINE\Software\Microsoft \Windows\CurrentVersion\RunOnce
-
HKEY_LOCAL_MACHINE\Software\Microsoft \Windows\CurrentVersion\RunServices
-
HKEY_LOCAL_MACHINE\Software\Microsoft \Windows\CurrentVersion\RunServicesOnce
-
HKEY_CLASSES_ROOT\exefile\shell\open\command
Eine Entfernung der Schlüsseleinträge sollte aber nur dann erfolgen, wenn auch
wirklich Sicherheit besteht. Ein fälschlicherweise gelöschter Schlüssel kann unter
Umständen dazu führen, daß Windows nicht mehr hochfährt. In folgenden Dateien
können ebenfalls Aufrufe eingetragen sein: control.ini, progman.ini, winstart.bat sowie
im Autostart-Ordner der Start-Leiste. Verdächtig sind dabei immer anomale Reaktionen
des Betriebssystems. Wird Windows während einer Arbeitssitzung einfach beendet oder
heruntergefahren, ist die Taskleiste plötzlich nicht mehr sichtbar, sind die Maustasten
plötzlich vertauscht, verändern sich die Farben des Systems, öffnet/schließt sich das
CD-Laufwerk von allein, oder finden während einer Online-Sitzung unmotivierte
Seite 31
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Übertragungen statt, ohne dass ihr downloadet oder neue Seiten ladet, dann besteht der
dringende Verdacht einer Infektion mit einem Trojaner. Es sollten dazu auch die
Informationen über aktuelle Trojaner, z. B. in Newslettern, konsultiert werden, um den
Wirk- und Funktionsmechanismus kennenzulernen.
Schutz vor einer Infizierung
Mails von unbekannten Absendern, die ein neues Programm vorstellen und es als
Attachement an die Mail angehängt haben, sollten immer suspekt vorkommen. Ein
Löschen dieser Mails kann oftmals besser sein, vor allem aber: nicht die Attachements
starten. Der Einfallsreichtum von Hackern ist schier unermeßlich, oft werden Bilder
oder Bildschirmschoner von holden Nackten – wer da drauf reinfällt ist fast schon selbst
schuld – oder „gefakte“ Mails von bekannten Softwareherstellern verschickt, wie im
jüngsten Fall des Y2KCounter, der über die Adresse [email protected] verschickt
wurde. Hier sollte man nicht oberflächlich werden, gerade während aktiver OnlineSitzungen sollten Anti-Trojaner verwendet werden, die Infizierungen mit Trojanern sehr
oft verhindern können. Dazu aber in einem späteren Kapitel mehr.
3.7.2 Wege der Infektion eines Rechners mit Trojanern
Um verstehen zu lernen, wie ein Computer mit einem Trojaner infiziert werden kann,
muß zunächst die Motivation der Angreifer geklärt werden. Denn die Art und Weise,
wie trojanische Pferde ins Zielsystem eingebracht werden können, ist immer ähnlich –
es muß eine unauffällige Datei zugestellt werden, die vom Benutzer des Zielrechners
oder vom Betriebssystem selbst ausgeführt werden. Der potentielle Benutzer eines
Trojaners wird oft als Cracker oder Script-Kiddie bezeichnet, der von Szene-Programmierern programmierte Tools dazu nutzt, sich Zugang zu fremden Systemen zu
verschaffen. Rund um den Trojaner-Programmierer kann sich eine Schar von „NetzExperten“ reihen, die meist auch auf seinen Seiten in Foren über die Vor- und Nachteile
des jeweiligen Trojaners lebhaft diskutieren. Script-Kiddies bezeichnen die Nutzer
potentieller
Zielrechner
gerne
als
Victims
(Opfer)
oder
DAUs
(Dümmster
anzunehmener User) und benutzen die Unwissenheit dieser Gruppe von „Internetlern“,
um Ihre „Tools“ in fremde Systeme einzubringen. Im Zusammenhang mit dem sehr
Seite 32
SI-LABOR – G. Varvelli
Versuch 1 – Viren
beliebten Trojaner SubSeven gibt es auf einer offiziellen WebSite eine exakte Anleitung
darüber, wie Opfer benutzt werden können.
Ein Trojaner besteht grundsätzlich aus mindestens 2 Dateien, dem Agenten und dem
Server. Wie diese beiden Dateien miteinander kommunizieren, kann in einschlägigen
Webpages nachgelesen werden. Es gilt zunächst somit, den Server auf dem Zielrechner
zu installieren. Die einfachste Methode ist die, über einen direkten Zugang zum
Zielrechner den Server dort installieren. Zum Beispiel kann das der PC eines Schulfreundes, Kommilitonen oder Bekannten sein, der ohnehin repariert werden muß.
Unauffällig wird bei dieser Gelegenheit dann der Server installiert und somit der
Zielrechner präpariert. Auf diese Art und Weise werden auch oft Rechner in
Berufsschulen oder Universitäten verseucht. Es gilt also, auch bei „angeblichen"“
Freunden oder Bekannten ein Blick über die Schulter zu werfen und Fragen, warum und
wie etwas am Rechner gemacht wird.
Infektion per E-Mail
Eine weitere Möglichkeit ist die, den Server einfach als Attachment an eine eMail zu
hängen, die dann später vom Opfer ausgeführt wird. Diese direkte Methode funktioniert
mittlerweile aber nur noch dann, wenn Gegner und Opfer miteinander bekannt sind und
in
gewisser
Weise
vertraut
sind,
da
die
Netzgemeinde
heutzutage
zumindest
ansatzweise um die Gefahren wissen. Dieser Umstand wird übrigens auch gerne dazu
benutzt, unter falschen Absenderadressen Trojaner ins Netz zu schicken. Denn die
Mails eines Bekannten wird wesentlich weniger kritisch betrachtet, als die eines
Unbekannten oder wenn die Mail völlig unmotiviert und unaufgefordert zugeschickt
wird. Dazu benutzt der Angreifer sogenannte Ghost-Mailer, der eine vollkommen freie
Wahl der Absenderadresse läßt. Hier wird, um im szeneüblichen Jargon zu bleiben, eine
„gefakte“ Absenderadresse benutzt.
Eine dritte und ziemlich clevere Methode sieht vor, zwei Dateien miteinander zu
verbinden. Der Server wird dazu einfach an ein nützliches Programm angeschweisst und
installiert sich erst bei Ausführung des Programms. Hierzu wird ein sogenanntes JoinerTool benutzt. Über eine komfortable Oberfläche kann der Angreifer selbst festlegen,
welche Datei mit dem Server verbunden wird. Definitiv funktioniert diese Methode mit
Seite 33
SI-LABOR – G. Varvelli
Versuch 1 – Viren
ausführbaren EXE-Dateien. Weniger bekannt und in der Funktionsweise auch sehr
kontrovers diskutiert wird die Möglichkeit, auch Blidschirmschoner, also Dateien mit
der Endung „scr“ und MP3-Dateien derart mit dem Server zu verknüpfen, dass dieser
sich automatisch beim Aufruf der Hauptdatei startet. Oftmals werden diese gejointen
Dateien dann per eMail an den ahnungslosen User gesandt, häufig mit der
Ankündigung, das sich im Anhang ein tolles Tool oder nützliches Programm befindet.
Wird der Anhang unüberlegt geöffnet, installiert sich auf diese Weise dann der Server
und der Zielrechner ist präpariert für einen Online-Zugriff.
Infektion per Chat
Oftmals wird auch der IRC-Chat dazu benutzt, Trojaner im Netz zu verteilen. Hierzu
nutzt der Angreifer einmal die Hitze des lebhaften Chats, die Unwissenheit oder
Gutgläubigkeit des Chat-Partners und einige Unzulänglichkeiten des beliebtesten ChatProgramms ICQ, um den Zielrechner mit dem Server zu infizieren.
Dabei mutet es schon seltsam an, wenn ca. 80% aller infizierten Computer männliche
Benutzer haben. Vielleicht, weil der männliche Chatter eher bereit ist, auf die naiven
Fragen eines unerfahrenen und schutz- und hilfebedürftigen „Mädchens“ einzugehen
und charmant seine Unterstützung anzubieten. Diesen Umstand nützten Angreifer oft
aus, in dem sie sich wissentlich als vermeintlich weiblicher Chatter einklinken und
eigentlich sehr schnell mit wirklich naiven Fragen und verdächtigem Interesse an den
Chat-gewohnheiten oder dem persönlichen Umfeld des potentiellen Opfers auffällt.
Werden zu diesem Zweck auch noch Dateien ausgetauscht, insbesondere ausführbare
Dateien, ist mit hoher Wahrschienlichkeit davon auszugehen, das sich dahinter ein
Trojaner-Angriff verbirgt. Auch ein auf diese Weise übermitteltes Bild kann trügerisch
sein, denn einige Versionen des beliebten ICQ-Programms sind schlicht zu blöde, das
exakte Dateiformat anzuzeigen. Ein Bild mit dem Namen ICH.JPG trägt, kann durchaus
auch
ICH.JPG.exe
heißen,
kann
also
ein
ausführbares
Programm
und
somit
möglicherweise der Trojaner-Server sein. ICQ zeigt in diesem Fall nur die erste
Dateierweiterung nach dem ersten Punkt an. Unter Betriebssystemen wie Windows (ab
95) ist es aber erlaubt, eine Datei auch mit einem Punkt in der Bezeichnung der Datei zu
versehen.
Erst
die
endgültig
letzten
drei
Buchstaben
werden
als
tatsächliche
Erweiterung betrachtet.
Seite 34
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Auch in der Hitze eines charmanten Chats ist demnach das Mittel der Wahl, die
geladene Datei zunächst im Explorer zu überprüfen, bei dem selbstverständlich das
Ausblenden von bekannten Dateien deaktiviert wurde. Dieser Punkt wird in Kapitel 4.1,
9. Schritt, eingehender erläutert.
Ebenso ist anzuraten, auch auf ein energisches „nun schau Dir das Bild mal schnell an“
nicht mit einem unüberlegten Öffnen der Datei zu reagieren. Ihr werdet die Installation
des Servers nicht oder nur sehr undifferenziert bemerken, in dem ihr möglicherweise
eine Fehlermeldung im Stil von "Dies ist keine zulässige Win32-Anwendung" erhaltet ,
um dann zu bemerken, das sich das Bild seltsamerweise nicht öffnen lässt. Der
Angreifer wird dann wahrscheinlich argumentieren, das es wohl einen Fehler bei der
Datenübertragung gab. Schöne Fehler...
Weitere Infektionsmethoden
Weitere Methoden, Trojaner auf dem Zielrechner zu installieren, befinden sich noch im
Experimentalstadium oder eignen sich nur für bestimmte Browser-Versionen. Grundsätzlich ist hier anzuraten, stets die aktuellste Version einzusetzen und Sicherheitsupdates regelmäßig durchzuführen. Für Benutzer des Internet-Explorers ab Version 4
mit gleichzeitig installiertem Windows-Scripting-Host (läßt sich über: Einstellungen /
Systemsteuerung / Software / Windows-Setup deaktivieren) gibt es noch eine besondere
Gefahrenquelle. Das Script GodMessage wird in einer Art und Weise in den HTMLCode einer WebSite eingebaut, dass ein kleiner Trojaner, der hardcodiert im Script
verankert wurde, bei Aufruf der Website auf dem Zielrechner installiert wird. Dieser
Basis-Trojaner dient dazu, zu einem späteren Zeitpunkt einen mächtigeren Trojaner aus
dem Netz zu downloaden, während der ahnungslose Surfer andere Seiten anwählt.
Eine zur Zeit sehr kontrovers diskutierte Möglichkeit ist die, Trojanercode mittels eines
simplen QBasic-Scripts, einer Datei – also möglicherweise einen Trojaner-Server – in
eine weitere Datei, zum Beispiel eine Bild-Datei mit den Formaten gif, bmp und tif
abzulegen. Mittels dieses Scripts ist es später möglich, mit angepassten Automatisierungsfunktionen diese eingeimpfte Datei wieder zu extrahieren und zu starten.
Natürlich wird dadurch eine Bilddatei nicht zu einer ausführbaren Datei, dafür sorgt
allein der Datei-Header, in dem festgelegt wird, um welches Dateiformat es sich handelt
Seite 35
SI-LABOR – G. Varvelli
Versuch 1 – Viren
und mit welcher Anwendung es verknüpft ist. An dieser Stelle muss aber noch einmal
darauf hingewiesen werden, dass es durchaus möglich ist, ein Dateiformat derart zu
registrieren, das es selbststartend wird. Beispielsweise ist ein Bildschirmschoner mit der
Dateiendung *.scr auch keine ausführbare Datei im eigentlichen Sinne. Trotzdem kann
der Schoner mit einem Doppelklick direkt ausgeführt werden.
Es gibt mittlerweile in einschlägigen Foren längst komfortable Quelltexte, um diverse
Dateitypen unter C++ solcherart in der Windows-Registry zu registrieren. Auf diese
Weise
können
Server
durchaus
unauffällig
zum
Beispiel
in
Projekten
zur
Datenverarbeitung versteckt und zu einem späteren Zeitpunkt aktiviert werden. Verlasst
euch niemals darauf, das nur in ausführbaren EXE-Dateien destruktiver Code enthalten
sein kann. Jede unaufgefordert zugesandte Datei kann von Angreifern manipuliert sein.
3.7.3 New Generation – Rootkits
In den letzten zwei bis drei Jahren hat sich ein neues Angriffskonzept von sich reden
lassen. Mit Hilfe von sogenannten Rootkits (von root für Wurzel, Hauptverzeichnis)
versteckt ein Angreifer möglicherweise verräterische Betriebssystems-Meldungen, die
einem aufmerksamen Systemadministrator (SysAdmin) noch auffallen könnten. Diese
in verschiedenen Varianten existierenden Programme, gehören mittlerweile zu den
Standardinstrumenten eines versierten Hackers und Angreifers; sie haben den Zweck,
den erfolgten Zugriff auf ein System so lange wie möglich zu verschleiern. Ihr
Mechanismus ist recht einfach: es wird sehr systemnah gearbeitet, zum Teil erfolgen
Zugriffe sogar direkt in der Speicherverwaltung (im RAM); genutzt werden entweder
zuvor ausgewechselte/veränderte Systembefehle, oder es wird direkt der Betriebssystemskernel manipuliert [14]. Als Beispiel soll der als erster seiner Art bezeichnete
‚t0rnkit’ genannt werden, bei dessen Installation die UNIX/Linux-Programme du, find,
ifconfig, login, ls, netstat, ps, sz und top gegen eigene „getunte“ Versionen ersetzt und
den TCP-Port 47017 fürs „ET-nach-Hause-Telefonieren“ offenlässt. Mit den veränderten Befehlen lässt sich ein infiltriertes System dann unbemerkt manipulieren. Bekannt
sind die Rootkits bisher fast ausschließlich als angriffsmittel gegen UNIX/Linux-Systeme, da hierbei der Verschleierungsaufwand gegenüber einem Windows-System höher
ausfallen muss, um als Angreifer erfolgreich sein zu wollen.
Seite 36
SI-LABOR – G. Varvelli
4
Versuch 1 – Viren
Versuchsaufbau
Einen vernünftigen und sicheren Schutz für die Onlinewelt aufzubauen braucht – solange es sich um die Absicherung eines privat genutzten Einzelplatzrechners handelt –
nicht notgedrungen spezielles oder tiefgreifendes Wissen noch muss man dafür tief in
die Tasche greifen. Wenn es auch nicht schadet, sich mit den grundlegenden Themen
der Sicherheit im Internet zu beschäftigen, so werdet ihr euch diesen Schutz ganz allein
aufbauen können und nach und nach verstehen lernen, wie und warum ein Schutztool
funktioniert und wie Angriffe aus dem Web stattfinden.
Wir
haben
hier
eine
Kombination
an
Vorsorgemaßnahmen
und
Schutz-Tools
zusammengestellt, die euch bei konsequenter Beachtung einiger weniger Verhaltensweisen, die wir in diesem Versuch vorstellen, hilfreich zur Hand gehen werden. Ein
sinnvoller Schutz benötigt drei bis vier unterschiedliche Maßnahmen/Programme, die
von ihren Funktionen her miteinander verzahnt sind und sich sinnvoll ergänzen. In
diesem Versuch sind es:
-
ein ordentlich konfiguriertes System (e Kapitel 3.8.1),
-
zwei Antiviren-Programme (inkl. Makrovirenschutz),
-
ein Anti-Trojaner,
-
eine Firewall (evt. Portscanner zur Überprüfung noch ungeschützter Ports),
-
eine Backup-Software.
In den folgenden Kapiteln wird ein Sicherheitskonzept gegen Viren und Trojaner
vorgestellt, der durch umfangreiche Vorsorgemaßnahmen vor Infektionen schützen und
bei bereits bestehender Infektion hilft
4.1
Vorsorgemaßnahmen
Im diesem ersten Schritt widmen wir uns möglichen Vorsorgemaßnahmen, die uns vor
einer Infektion schützen helfen sollen. Die Redakteure der Fachzeitschrift PC-Welt
haben in einer Ausgabe einen Artikel zum Thema Virenschutz verfaßt, der das Problem
der Einnistung von Viren und Trojanern an der Wurzel erfaßt. Das darauf abgestimmte
Sicherheitskonzept ist wohlüberlegt und
wird – um einige Punkte von uns erweitert –
hier unten aufgeführt.
Seite 37
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Das Problem
Ein standardisiertes Betriebssystem wie Windows, mit seinen stets gleichen Wegen der
Initialisierung von Systemkomponenten und Anwendungsprogrammen, bietet zuverlässige Angriffspunkte für Viren und Trojaner. Wie der aktuelle Internet-Wurm
W32/MyPics zeigt, die Schädlinge legen den Aufruf ihrer Schadensfunktionen gerne in
klassischen Initialisierungsdateien wie autoexec.bat oder win.ini ab und sichern sich
ihren Aufruf über Autostart oder Run-Schlüssel in der Registrierung.
Die Lösung –Konzept zu Systemskonfiguration und Verhaltensweise
Ein PC-System wird resistenter gegen Viren, je weniger es der „digitalen Biologie“
eines Standardsystems entspricht. Da in der Praxis ein derart restriktives Vorgehen
nahezu unmöglich ist, weil ein Betriebssystem wie Windows eine sehr große Anzahl an
Dateien und Initialisierungswegen in sich trägt und entsprechend viele Dateien gepatcht
werden müßten, sind folgende Schritte sinnvoll:
1. Schritt: Einstellung der korrekten Bootreihenfolge
Ein Schutz gegen Bootsektor-Viren ist die richtige Bootreihenfolge im BIOS des PC.
Die Festplatte als erste Bootpartition verhindert zuverlässig das Übergreifen eines Virus
von einer im Laufwerkschacht vergessenen Diskette. Standardmäßig ist die Bootreihenfolge auf das Diskettenlaufwerk A: und anschließend auf die Festplatte festgelegt.
2. Schritt: Benutzerdefinierte Installation von Windows und der Verzeichnisse
Installiert das Betriebssystem nicht im Express-Modus sondern legt benutzerdefinierte
Pfade
fest.
Schlecht
programmierte
Trojaner
fragen
beispielsweise
nicht
die
Systemvariablen ab sondern verlassen sich auf den Standardpfad c:\windows. Der Pfad
c:\win98 umgeht z.B. diesen Eintrittsweg.
3. Schritt: Umbenennen der autoexec.bat und Modifikation des Kommandointerpreters
Eine der zentralen Initialisierungsdateien, die in einem DOS/Windows-9x-System
immer abgearbeitet wird, ist die Datei autoexec.bat, in der beispielsweise die Systemvariablen festgelegt werden, die Maus initialisiert wird, die Landessprache ausgewählt
Seite 38
SI-LABOR – G. Varvelli
Versuch 1 – Viren
wird usw. Auch hier können sich Autoaufrufe von Trojanern verbergen. Macht nun eine
Sicherheitskopie der Datei command.com und gebt dann im DOS-Eingabefenster
folgenden Befehl ein:
edit c:\command.com
und sucht die Zeile, in der die autoexec.bat zum ersten Mal vorkommt. Hier ändern ihr
den Namen autoexec.bat z.B. in autoexe_.bat ab, speichern die Datei command.com und
ändert die Original-autoexec.bat in autoexe_.bat ab. Nach erfolgtem PC Neustart wird
nicht mehr die Datei autoexec.bat abgearbeitet, sondern autoex_.bat.
4. Schritt: Verbannen der „Killer“-Programme format, debug und deltree
Die „Killer“-Programme format, debug und deltree entschärft ihr, indem ihr die Dateien
aus dem Windows-Command-Verzeichnis in einen Ordner verschiebt, der nicht im
Path-Verzeichnis der autoexec.bat vorkommt.
5. Schritt: Entfernen der run- und load-Zeilen aus der Datei win.ini
Die Datei win.ini wird geschützt, indem zunächst eine Datei mit dem Namen
winstart.bat anlegen. Diese Datei wird beim Windows-Start automatisch ausgeführt,
wenn Sie vorhanden ist. Schreibt folgende Zeilen in die Datei winstart.bat:
type win.ini | find /v /i "run=" > win.ini
type win.ini | find /v /i "load=" > win.ini .
Diese beiden Zeilen entfernen die Zeilen run und load aus der Datei win.ini. Das PipeZeichen | erhaltet ihr übrigens mit der Tastenkombination Alt GR + größer/kleiner.
6. Schritt: Umbenennen der Registry
Zugriffe auf regedit werden entschärft, wenn die Datei einfach umbenannt wird. Viele
Trojaner legen eine Datei mit der Endung *.reg ab, in der die entsprechenden
Autoaufrufe des Servers hinterlegt sind. Wird diese Datei gestartet, werden die entsprechenden Registrierungsschlüssel in die Registry eingetragen. Dabei kann es aber zu
Schwierigkeiten bei erwünschten Regedit-Importen führen. Daher sollte regedit.exe nur
dann umbenennen, wenn ihr eventuell auftretende Probleme selbst beheben könnt. Die
meisten Installationsprogramme verwenden für das Schreiben der Registry-Schlüssel so
genannte INF-Dateien und lassen sich von einer fehlerhaften regedit.exe nicht beirren.
Seite 39
SI-LABOR – G. Varvelli
Versuch 1 – Viren
7. Schritt: Kontrolle der Registry
Die vier Run-Schlüssel der Registry (Run, RunOnce, RunServices, RunServicesOnce)
unter
HKEY_LOCAL_MACHINE\Software\Microsoft \Windows\CurrentVersion
lassen sich schon unter DOS kontrollieren. Dazu können folgende Zeilen in die
autoexec.bat geschrieben werden:
-
regedit /e con HKEY_LOCAL_MACHINE\Software\Microsoft \Windows\CurrentVersion\Run
-
regedit /e con HKEY_LOCAL_MACHINE\Software\Microsoft \Windows\CurrentVersion\RunOnce
-
regedit /e con HKEY_LOCAL_MACHINE\Software\Microsoft \Windows\CurrentVersion\RunServices
-
regedit /e con HKEY_LOCAL_MACHINE\Software\Microsoft \Windows\CurrentVersion\RunServices Once
Sinnigerweise sollte aber das Echo eingeschaltet sein, in dem die Zeile @ECHO OFF
aus der Datei autoexec.bat entfernt und auskommentiert (mit REM) wird. Eine
weiterführende Batch-Programmierung mit einer Choice-Abfrage kann auch gleich ein
Löschen des betreffenden Schlüssels bewirken.
8, Schritt: Entschärfung der automatischen Makrofunktionen
Makroviren werden am besten aufgehalten, wenn DOC-Dateien fremder Herkunft nicht
mehr direkt mit Word geöffnet werden. Dies gilt insbesondere für Mail-Attachements,
in denen sich gerne Makroviren aufhalten. Verwendet lieber in Word den Menübefehl
Einfügen Datei, das garantiert einen virenfreien Import, da keine Makros importiert
werden. Alternativ betrachtet die Texte zunächst nur mit dem Viewer, den für die
großen MS-Anwendungsprogramme Word, Excel, Powerpoint kostenlos auf der
Microsoft-Webseite zur Verfügung steht. In Kombination dazu sollte gemäß Absatz
‚Schutz vor Makroviren: Vorbeugen...’ in Kapitel 3.5.4 vorgegangen werden. Zusätzlich
sollte die Office-Makroviren-Option gemäß Absatz ‚Schutz vor Makroviren: Vorbeugen...’ im Kapitel 3.5.4 eingestellt werden.
9. Schritt: Verhinderung der Nichtanzeige von „Doppelendungen“
Eine
beliebte
Strategie
bei
Computer-Würmern ist es, Dateien mit doppelter
Dateiendung zu versehen. Damit soll dem Opfer eine harmlose Datei untergejubelt
werden, z.B. eine Bild- oder Textdatei wie ICHLIEBEDICH.TXT.vbs vorgegaugelt
werden, die in Wirklichkeit aktivierbaren-aufrufbaren-ausführbaren Code beinhaltet.
Seite 40
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Der Windows Explorer zeigt aber in der Standardeinstellung die Dateierweiterungen
registrierter
(also
ihm
bekannter)
Dateitypen
nicht
an,
interpretiert
dafür
die
„anscheinende“ Dateiendung hinter dem zweiten der zwei Punkten als DateinamensErweiterung. Die Folge ist, dass die Datei als ICHLIEBEDICH.TXT (Textdatei)
angezeigt wird und als Skriptdatei (gekennzeichet als *.vbs) interpretiert und der
Scriptinterpreter gestartet wird, welcher die Skriptdatei prompt durchführt. Diesen
Würmern begegnet man angemessen, indem man beim Explorer im Menüeintrag
Ansicht die Option auf Anzeige aller Dateien aktiviert, wie im Bild hir unten dargestellt.
Abbildung 4: Vorzunehmende Odrnereinstellungen beim
Microsoft Explorer, je nach Typ des Betriebssystems
Angezeigt wird somit die volle Dateilänge beziehungsweise der volle Dateiname.
Allerdings muss trotzdem noch berücksichtigt werden, dass verschiedene Dateierweiterungen entweder immer noch nicht angezeigt werden (*.pif und *.shs), andere
aber trotz der unscheinbaren Endung unter Windows ausführbar sind, nämlich die
Screensaver-Dateien mit der Endung *.scr.
10. Schritt: Anzeige auch der *.pif und *.shs Dateien
Die
gerade
genannten
Dateiendungen
*.pif
(program
information
file,
aus
Kompatibilitätsgründen verbliebene Altlast aus der Windows 3.xx-Zeit mit Informationen über DOS-Programme) werden unter Windows 9x als 32-Bit-Executables
interpretiert und ausgeführt. Ähnlich ist es mit *.shs-Dateien (temporäre OLEContainer), die durch durch das Ablegen von eingebetteten Objekten auf dem Desktop
entstehen und worin sich beliebige Dateien verstecken und durch Doppelklick auch
Seite 41
SI-LABOR – G. Varvelli
Versuch 1 – Viren
öffnen/starten lassen. Dateien mit solchen Dateiendungen lassen sich nur durch einige
Änderungen in der Registry sichtbar machen. Diese Dateiendungen lassen sich nur
durch Änderungen in der Registry sichtbar machen. Dazu muss die Registry nach dem
Schlüssel HKEY_CLASSES_ROOT nach der Zeichenkette „NeverShowExt“ durchsucht
werden.
Ihr
findet
dann
bei-spielsweise in HKEY_CLASSES_ROOT\piffile ein
„NeverShowExt = "" “. Benennt diesen Eintrag nach „AlwaysShowExt“ um oder löscht
ihn einfach. Ebenso verfahrt ihr mit den entsprechenden Einträgen, die ihr bei
ShellScrap (Temporäre Datei), lnkfile (InternetShortcut) und möglicherweise xnkfile
(Exchange-Verknüpfung) findet.
11. Schritt: Anlegen von Images der Festplattenpartitionen
Das „Plattmachen“ einer virulenten Partition oder Festplatte ist zwar nicht eine
Präventivmaßnahme, dennoch sollte ein Backup der betroffenen Partition, am besten als
Image (z.B. unter Verwendung von Norton Ghost), schon vor der Infektion auf Vorrat
erstellt werden, um starke Infektionen, die das gesamte System kompromittieren und
unter Umständen nicht mehr gereinigt werden können, durch neues Aufspielen zu
überwinden. Mit Ghost können recht schnell Images („Abbilder“) einer ganzen Partition
– sogar komprimiert – erstellt werden, die dann bequem von einer zweiten Festplatte
oder von CD-ROM aus überspielt werden können.
12. Schritt: Rechtzeitiges Überprüfen von Datenträgern und Dateien auf Virenbefall
Die bisher genannten helfen natürlich nur einen durch Virus- und Wurminfektion
verursachbaren Schaden einzugrenzen. Um dem Virus überhaupt auf die Spur zu
kommen, wird ein funktionierender Virenscannen benötigt, der möglichst regelmäßigen
Updates unterzogen wird und mit dem alle über Diskette, ZIP, CD-ROM (auch
Original-CDs!) oder E-Mail eingehenden Dateien vor deren Aufrufen untersucht
werden. Auch eigene Medien, die „mal eben schnell in einem anderen Rechner“ zwecks
Datenaustausch gesteckt haben, sollten einer gründlichen Untersuchung unterzogen
werden, sobald sie wieder im heimischen Rechner eingeschoben werden.
13. Schritt: Verwerfen unbekannter oder gar aller E-Mails mit Attachments
Wie bereits erwähnt, sichert die Maßnahme, jede Mail mit einem Attachement zunächst
durch eine reine Text-Mail explizit anzukündigen, vor so mancher ungewollten Datei,
Seite 42
SI-LABOR – G. Varvelli
Versuch 1 – Viren
die durch einen Wurm losgeschikt sein könnte. Drastischer und sicherer noch ist es, sich
einen Teufel um E-Mails mit Attachments zu sorgen und diese gleich alle zu verwerfen.
14. Schritt: Kein automatischer Intenet-Verbindungsaufbau beim Browser-Start
Bei der Installation des Browser (Netscape oder IE) wird dem Anwender die möglichkeit gegeben, die eingerichtete DFÜ-Verbindung (Datenfernübertragung) für die Interneteinwahl an den Browser derart zu koppeln, dass bei dessen Aufruf die DFÜVerbindung gleichzeitig mit aufgebaut wird – sogar mit dem anfänglich benötigten
abgespeicherten
Passwortes. Auch hier gilt: Automatismen sind gefährlich und sollten
vermieden werden. Zum einen ist es gefährlich, sich Passwortabfragen allgemein durch
automatische
Speicherfunktionen
zu
sparen,
diese
können
dann
nämlich
mit
entsprechenden Tools ausgelesen werden. Zum anderen könnten Trojaner gleich unbemerkt die Internet-Verbindung aufbauen. Darum ist ein getrennter Aufruf besser.
15. Schritt: Abblocken von möglichen Internet-Zugriffsversuchen durch Firewalls
Mit Hilfe einer Personal Firewall (englisch für Feuerwand), die ein Sicherheitsdienst am
Eingang des Systems darstellt und ein- und ausgehende Datenpakete auf ihre
Berechtigung untersucht, können unrechtmäßige Zugriffe von außen (bzw. von innen,
wenn man sich einen Trojaner eingefangen hat) bemerkt und unterbunden werden.
Wichtig sind dabei die Einstellungen im Regelwerk, die nach der Installation
voreingestellt sind. Auf Firewalls wird im Kapitel 4.2.3 gesondert eingegangen.
So gerüstet sind die schlimmsten Klippen bereits umschifft und das System um viele
Punkte sicherer geworden. Was aber nicht heißen soll, daß hiermit bereits alle Gefahren
beseitigt wurden. Der hier vorgestellte 15-Punkte-Plan bietet die Basis, auf der alle
weiteren Sicherheitskonzepte mitVirenscannern, Anti-Trojaner-Programmen und Firewalls aufbauen sollten. In den nächsten Kapiteln wird eingehender auf die Installation,
Einstellung und Benutzung dieser Tools eingegangen.
4.2
Säuberungsmaßnahmen
Ist auf einem Datenträger, der z. B. zum Datentransport zwischen der Hochschule, dem
Büro und dem heimischen Rechner genutzt wird, eine infizierte Datei gelandet oder ist
Seite 43
SI-LABOR – G. Varvelli
Versuch 1 – Viren
ihr Bootsektor infiziert worden, beziehungsweise ist trotz aller Vorsichtsmaßnahmen ein
Virus/Makrovirus/Wurm/Trojaner auf dem Rechner gelandet, muss dieser Datenträger
desinfiziert – „gereinigt“ werden. Genutzt wird dazu ein zuvor bereits installierter
Virenscanner, wie er im nächsten Kapitel vorgestellt wird. Sinnvoll ist aber auf jeden
Fall eine parallel zur Beseitigung laufenden Suche nach der Quelle allen Unheils, da
man sich an sonsten schnell mit dem selben Virus wieder infiziert.
4.2.1 Virenscanner
Ein Virenscanner versteht sich heutzutage von selbst, obwohl uns im letzten SI-Labor
von Studenten E-Mails mit virenbefallenen Attachments erreichten, die also trotz
erfolgreicher Versuchsdurchführung danach keinen Scanner eingesetzt hatten, sei es aus
Unachtsamkeit, aus Faulheit oder wider besseren Wissens.
Auch wenn die Hersteller gerne von ihren Scannern behaupten, das sie sicher und
zuverlässig Viren, Makroviren und Trojaner im System erkennen und beseitigen können
– 100%ig sicher ist kein einziger Virenscanner. Darum gehen wir in unserem Sicherheitskonzept von zwei parallel installierten Virenscannern aus. Schutz sollte ein Virenscanner bieten bis zu dem Punkt, wo eine Dateioperation durchgeführt, ein so genanntes
Attachment einer zugeschickten eMail geöffnet oder auf die Festplatte kopiert oder
wenn Dateien von einem Datenträger auf den lokalen PC bewegt wird. Vorgestellt wird
von uns die Sharewareversion von AVP von der russischen Kasperski Lab, die zusammen mit den Scannern von McAfee, AntiVirenKit 10, F-Secure und F/WIN32 zu den
momentan am sichersten Getesteten gehört [15].
Die Erkennung von Schädlingen kann grundsätzlich auf zwei verschiedene Arten
passieren: On-Demand und On-Access – alle obengenannten Programme ermöglichen
beide Varianten.
On-Demand-Modus: Das eigentliche Scanprogramm
Der On-Demand-Scanner durchsucht auf explizite Anweisung einzelne Dateien, Ordner
oder auch Platten und den ganzen Rechner nach Viren. Dabei ist darauf zu achten, dass
das Programm die Möglichkeit bietet, auch Archive und explizit alle Dateien – und
nicht nur, was das Programm für infizierbar hält – zu scannen. In Abbildung 5 ist die
Seite 44
SI-LABOR – G. Varvelli
Versuch 1 – Viren
unseres Erachtens nach im Expertenmodus sinnvollste zu wählende Grundeinstellung dargestellt: es werden der Arbeitsspeicher sowie alle Sektoren und Dateien beider
Partitionen der vorliegenden Festplatte gescannt, sowohl unter Benutzung der bekannten
Signaturen als auch unter Verwendung der als Code-Analyser bezeichneten Heuristik.
Weitere Informationen zu Signaturen, Viren und Heuristik bzw. Schutz sind im übrigen
in [16] und [17] in Hülle und Fülle vorzufinden.
Mit Hilfe ihrer eingebauten Heuristik (siehe auch Kapitel 3.5.3, Absatz ‚Polymorphe
Viren’) können Antiviren-Programme auch vor neuen Viren oder Variationen bekannter
Schädlinge warnen. Diese verraten sich dabei durch typische „Verhaltensmuster“, wie
die
charakteristische
Assembler-Sequenz, mit der sich der CIH-Virus Ring-0-
Privilegien erschleicht, die normalerweise nur Treibern zustehen. Auch bestimmte
betriebssystemsnahe Kopier-, Lösch- und Verschiebungsbefehle, die von Programmen
Abbildung 5: Der Kaspersky Anti-Viren-Scanner
mit der getroffenen Funktionsauswahl
(und auch von Viren) an den Betriebssystemskernel gerichtet werden und Zugriffe auf
zum Teil reservierte Speicherbereiche ermöglichen, werden in ihrer Reihenfolge und
bezüglich ihrer Adressierung untersucht, da sie Aufschluss über anormale Zugriffe
geben können. Somit sollen auch neue Variationen von „klassischen“ – bereits bekannten – Viren erkannt werden. Die Ergebnisse eines umfangreichen Tests der heuristischen Funktion von AV-Programmen in der c’t-Ausgabe 2/2001 waren allerdings
Seite 45
SI-LABOR – G. Varvelli
Versuch 1 – Viren
ernüchternd: Nur das Programm von F-Secure entdeckte alle (15) gesuchten „unbekannten“ Viren, AVG dreizehn, FP-Win zwölf, Kaspersky und McAfee jeweils zehn.
In der Optionenanzeige (Klick mit rechter Maustaste auf das Zeichen mit dem grünen
Häkchen) in Abbildung 6 sind Optionen zur Vorgehensweise mit infizierten Dateien
aufgeführt. Am sinnvollsten erscheint uns, erkannte Viren nicht gleich – und vor allem
nicht automatisch – zu löschen, sondern sie erst unschädlich zu machen und in einem
gesonderten Verzeichnis zu verschieben beziehungsweise verdächtige Dateien in Quarantäne zu stellen und ihre Herkunft zu ermitteln. Im Anschluss daran können sie auf
einer Diskette kopiert und zwecks Aufbau einer eigenen Virensammlung sicher aufbewahrt werden, um die im Virenverzeichnis verschobenen Dateien auf dem Rechner
abschließend mit Hilfe der Rettungsdisketten entgültig zu löschen.
Abbildung 6: Die getroffene Optionsauswahl im Anti-Viren-Scanner
In Abbil-dung 7 sind weitere vom Benutzer wählbare Optionen zum Warnsignal und zu
„After-Scan“-Aktivitäten aufgeführt.
Abbildung 7: Weitere Optionseinstellungen im
Anpassen-Fenster des Anti-Viren-Scanners
Seite 46
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Schließlich können im Statistik-Fenster des AV-Scanners die Resultate des letzten
durchgeführten Scans mit Angabe gescannter Sektoren, Dateien, Ordner, Archive und
der komprimierten Dateien bekannten Typs eingesehen werden; in diesem Fall hatten
wir mit unserem Datenbestand noch mal Glück gehabt...
Abbildung 8: Kaspersky Anti-Virus Control Centre mit laufenden Aktivitäten
sowie der Anzeige der Statistik des im Hintergrund laufenden Virenchech
On-Access-Modus: Monitoring
Im On-Access-Modus arbeitet das Programm als Wächter permanent im Hintergrund
und überprüft automatisch alle Dateien beim Öffnen. Dabei sollte sich der „Wächter“ auch auf einem langsamen System (200 MHz, 64 MByte RAM) noch ohne spürbare
Performance-Einbußen benutzen lassen.
Ein guter Virenscanner besitzt hierfür einen Monitor (bei Kaspersky im AV Control
Centre integriert, siehe Abbildung 9 nächste Seite), der im Hintergrund sämtliche
Dateioperationen überwacht und zur Tat schreitet, wenn virulenter Code entdeckt wird.
Selbstverständlich sollte allerdings dabei sein, dass ihr regelmäßig nach neuen Signaturfiles des Scanners sucht und so den Scanner auf dem neusten Stand haltet, da Antiviren-Programme Dateien nach charakteristischen Codesequenzen – so genannte
Seite 47
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Signaturen – bekannter Schädlinge durchsuchen. Dabei findet das Programm natürlich
nur dann Viren mit höchstmöglicher Wahrscheinlichkeit, wenn deren Signatur bereits in
der verwendeten Datenbank enthalten ist. Die meisten Programme bieten auch die
Möglichkeit, diese Datenbank über das Internet auf den neuesten Stand zu bringen.
Abbildung 9: Kaspersky Anti-Virus Control Centre mit laufenden Aktivitäten
sowie der Anzeige der Statistik des im Hintergrund laufenden Virenchech
Die Optionen des früher als Anti-Virus Toolkit Professional (AVP) bekannte Kaspersky
Anti-Virus-Programms sind zwar recht üppig, doch der Umgang mit dem Virenscanner
ist äußerst gewöhnungsbedürftig. Das Herzstück des Pakets ist wie gesagt das „AV
Control
Centre“.
Hier
werden
nicht
nur
grundlegende
Einstellungen
für
AV
vorgenommen, sondern auch zeitgesteuerte Aufgaben erstellt und editiert und alle
Teilkomponenten verwaltet (siehe Abbildung 10 nächste Seite). Das Control Centre ist
allerdings in seinem Namen etwas verwirrend, da man hier beispielsweise keinen
Sofort-Scan veranlassen kann. Dafür lassen sich mit dem Scheduler beinahe alle
beliebigen Aktionen – auch externe Programme – anstoßen.
Fast jedes AV-Programm ermöglicht die Erstellung sogenannter Notfalldisks, von
denen aus virenfrei gebootet werden kann. Besonders interessant sind die mit Kaspersky
erstellten Rettungsdisketten: sie enthalten kein DOS-Betriebssystem, sondern ein
Seite 48
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Abbildung 10: Im Kaspersky AV Control Centre können alle
Teilkomponenten eingesehen und etliche Einstellungen
der jeweiligen Komponente eingestellt werden
komplettes und kompaktes Linux-System, das nach dem Einlegen der drei Disketten
automatisch alle im System zu Betriebssystemsstart vorliegenden Datenträger und
gefundenen Windows-Partitionen sauber mountet und scannt. Die Virenfreiheit der
„Linux“-Disketten garantiert ein sorgenfreies Virensuchen auf dem Windows-System,
selbst SCSI-System mit gängigen Controllern werden sauber gemountet und durchsucht. Ermöglicht wird die Erstellung des Rettungsdisketten-Sets durch einen Assistenten, der im Kaspersky AV Control Centre aufgerufen wird (siehe Abbildung 10, siebte
Komponente von oben).
Dabei ist es in der zweiten Dialog-Box des Assistenten möglich, sowohl einen
kompletten Disketten-Set zu erstellen als auch nur die Datenbankdiskette mit den
Virensignaturen aufzufrischen; die Auswahl erfolgt über zwei Häkchenfelder, die
unabhängig ausgewählt werden können und in Abbildung 11 dargestellt sind. Es
versteht sich von selbst, dass diese Rettungsdisketten nach einem gründlichen Scan des
Rechners und der Disketten und vor einer neuen Vireninfektion erfolgen sollte.
Seite 49
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Abbildung 11: Dialog-Box des Assistenten zur Erstellung der Rettungsdisketten
Das Einstellungen-Fenster in Abbildung 12 ermöglicht Sicherheitseinstellungen, Einstellungen zur Fernwartung, zur Quarantäne und zum allgemeinen; das Quarantänebereich des Scanners, hier ohne Abbildung, stellt eine Verzeichnisstruktur dar, in dem
verdächtige Dateien abgelegt und unter „Beobachtung“ gestellt werden können.
Abbildung 12: Einstellungsbereich im AV Control Centre; hier können
Sicherheitseinstellungen, Details zur Alarmierung, zum RemoteManagement sowie zum Quarantänebereich des AV gewählt werden
Seite 50
SI-LABOR – G. Varvelli
Versuch 1 – Viren
4.2.2 Anti-Trojaner
Eine ähnliche Frage wie die nächste wird uns immer wieder gestellt: „Ich bekomme
öfters Dateien als Attachment zugeschickt. Besteht da Gefahr? Was soll ich machen?
Wie soll ich mich verhalten?“
Jeder bekommt mal eine Email mit witzigen Texten, Bildern oder Programmen von
Bekannten oder Freunden. Bei Bildern oder Texten ist das, sofern auch die Dateiendung eindeutig erkennbar ist, oftmals in ordnung. Nur bei Dateiendungen, die wir
weiter oben bereits besprochen haben (*.JPG.pif, *.JPG.vbs oder *.JPG.exe), ist größte
Vorsicht angebracht. Wie soll denn nun mit besagter E-Mail vorgegangen werden, wenn
der erste Verdacht sich bei weiterer Nachforschung, zum Beispiel durch eine eingehende Untersuchung von Registry erhärtet, obwohl der Anti-Trojaner nicht angeschlagen hat? Dann ist es sinnvoll, umgehend diese Datei zu einem der Forschungsgruppen oder Firmen2 weiterzuleiten und diese dann löschen. Dabei kann es natürlich
möglich sein, dass diese E-Mail von jemanden stammt, der Freund oder Bekannter ist;
leider ist es auch möglich, dass E-Mails im Namen eines anderen verschickt werden.
Das bedeutet, dass keine 100%-e Sicherheit über die Infektionsquelle besteht. Die
Information des Freundeskreises über die eigene Infektion sollte deshalb nur über einen
anderen Rechner erfolgen – oder am besten sogar nur telefonisch. Dabei gibt es drei
Regeln im E-Mail-Verkehr, durch deren Befolgung man sich einiges erspart:
-
Nie Anhänge in E-Mails ungeprüft starten, auch nicht bei bekannten Absendern.
-
Seriöse Firmen oder Anbieter werden nie ungefragt eine Datei mitschicken.
-
Beim Absender telefonisch nachfragen, wenn er euch bekannt ist und ihr euch
nicht sicher seid, was es ist und wieso es kommt. Dies sollte auch dann geschehen, wenn euch eure Freundin/Freund/Frau/Mutter/Vater über seinen/ihren
„Unser-Netzwerk-ist-auf-jeden-Fall-sicher-weil-die-Netzwerkspezialisten-untersuchen-ja-alles-vorher“-Netzwerk eine E-Mail zusendet – nichts ist 100%-ig
sicher, auch Systemadministratoren machen Fehler.
2
Anti-Trojan, Hersteller des gleichnamigen tools, bietet ein Informationsforum an und ist unter
[email protected] für alle infizierten Dateien dankbar.
Seite 51
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Funktionsweise
Ein Anti-Trojaner funktioniert normalerweise auf drei Ebenen. Er durchsucht die
Registry nach obengenannten bekannten Einträgen; er untersucht, analog einem Virenscanner, die vorher eingestellte Dateienauswahl nach ihm bekannte Trojaner-programme, indem er vorhandene Codeteile mit den abgelegten Signaturen vergleicht, und –
was uns hier besonders interessieren soll – untersucht alle vom Betriebssystem für die
Kommunikation bereitgestellten Ports.
Grundsätzliche Vorsicht ist aber auch bei Anti-Trojaner-Programmen geboten: Teilweise kursieren kuriose Meldungen, in denen vor Anti-Trojanern, die selbst nichts anderes
als Trojaner beziehungsweise Würmer mit umfangreichen Funktionen sind, gewarnt
wird – wie z.B. im Herbst ´01 bei ANTS 3.03 , einem deutschen Anti-Trojaner.
Was sind Ports?
Jeder Prozess (damit sind Software-Prozesse auf einem Rechner gemeint), dass mit
einem
anderen
Prozess
communizieren
will,
zum
Beispiel
bei
der
externen
Kommunikation innerhalb eines LAN/WAN, wird innerhalb des TCP/IP-Transferprotokolls4 über einen oder mehrerer sogenannter Ports (Kommunikationsadressen, fast so
etwas wie Postfächer) identifizierbar und adressierbar gemacht. Dabei ist ein Port eine
16-bit-Nummer, die vom System der Applikation – und speziell dem von der Applikation angestoßenen Prozess – zugeordnet wird, um die Sender/Empfänger (jeweils
Prozesse) von ankommenden/abgehenden Datenpaketen eindeutig zuordnen zu können.
Da bestimmte Applikationen (higher-level programs) wie zum Beispiel TELNET (Port
23) und FTP (Port 21) selbst Protokolle darstellen und im TCP/IP-Protokoll
berücksichtigt sind und deren Kommunikation standardisiert ist, benutzen sie immer die
selbe Port-Nummer in allen TCP/IP-Implementationen – plattformübergreifend. Diese
fest zugeteilten Port-Nummern werden im Englischen ‚well-known ports’ – „wohlbe3
Es heisst, der Wurm tarnt sich als ein kostenloses Anti-Trojaner-Programm und verbreitet sich ohne EMail-Software; nachzulesen zum Beispiel unter [18]
4
TCP – Transmission Control Protocol; IP – Internet Protocol; bei den beiden handelt es sich um
verschiedene Protokolle, die die Datenübermittlung z.B. in einem LAN oder im Internet auf
unterschiedlichen Ebenen ermöglichen/steuern. Interessierten sei hier das Studium des ISO/OSIEbenenmodells bzw. des Schichtenmodells empfohlen [19], [20].
Seite 52
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Abbildung 13: Datenaustausch des Netscape Communicator am Port 80 (http), nachdem
dieser für Netscape vorbereitet wurde (oben), „Abholen“ der Datenpakete (unten); die Briefe
hinter dem Zaun symbolisieren den Datenverkehr (z.B. E-Mail) außerhalb des Systems
kannnte“ Ports genannt und die Standard-Applikationen ‚well-known services’. Die explizite und ausschließliche Nutzung „wohlbekannter“ Ports durch bestimmte Applikationen – von Port-Nummer 0 bis 1023 – werden von der Internet Assigned Numbers
Authority (IANA) „verwaltet“ und zugeteilt, auf vielen Systemen können diese nur von
Systemprozessen oder von besonders privilegierten Benutzern (z.B. SysAdmin) genutzt
werden. Deren Zuordnung kann in [21] und [22] nachgelesen werden. Die Ports
zwischen 1024 und 65535 stehen nicht unter der Verwaltung des IANA, sondern
können von Entwicklern bzw. für deren Applikationen frei genutzt werden. Bei der Nutzung aller nicht „wohlbekannten“ Ports wird deren Verteilung vom System dynamisch
realisiert. Das bedeutet, dass einer nicht „wohlbekannten“ Applikation innerhalb zweier
verschiedener Aufrufe unterschiedliche weil freistehende Ports zugeteilt werden kann;
somit können auch Konflikte zwischen zwei konkurrierenden Applikationen effektiv
vermieden werden. Eines ist aber beiden Typen an Ports gleich: ihre Verwendbarkeit für
nicht direkt ersichtliche Kommunikation, wofür sie ja geschaffen sind.
Seite 53
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Trojaner und Ports
Was haben nun Trojaner mit Ports zu tun? Um von außerhalb des infizierten Systems
mit dem Trojaner (Server) zu kommunizieren, muss der als Cracker bezeichnete
Angreifer (mit dem Client-Programm) eine vorher festgelegte Verbindung ausnutzen
können. Einmal eigeschleust, wird sich ein Trojaner entweder sofort oder bei Erreichen
einer vorherbestimmten Bedingung vom System (z.B. Erreichen eines bestimmten
Datums und Uhrzeit, Aufruf des Browsers, Aufruf von ICQ etc.) an eine vom Cracker
definierte und im Server vorprogrammierte Port-Nummer ranmachen (z.B. Port 1492
beim Trojaner Back Orifice FTP) und versuchen, eine Datenverbindung nach außen zu
ermöglichen oder einer eingehenden Kommunikation zu antworten – er wird sich in
Wartestellung begeben. Die Aktivität bzw. die Erreichbarkeit kann der Cracker zum
Beispiel mittels eines Port-Scanners überprüfen – zum erstmaligen Infizieren oder bei
Trojanern mit Stealth-Technologie, die von außen aktiviert werden müssen – oder über
eine „Nachricht“ – einem „Brief nach Hause“ – informiert werden, die der Trojaner bei
Internetaktivitäten,
zum
Beispiel
über
Chat-Programme
wie
ICQ,
selbstständig
verschickt. Anschliessend baut der Cracker weitestgehend vom berechtigten und
ahnungslosen Benutzer unbemerkt über diesen Port seine Verbindung auf und macht
sich über die Rechnerressourcen her, teilweise unabhängig von den Benutzerrechten des
aktuellen und legitimen User vor dem Rechner.
Abbildung 14: Datenaustausch des Trojaners Back-Orifice.FTP über Port 1492,
nachdem dieser z.B. durch ein FTP-Download ins System eingeschleppt wurde
und als Server beim Systemstart aktiviert wurde; die roten Briefe stellen unautorisierten Datenaustausch mit einem Client außerhalb des Systems dar
Seite 54
SI-LABOR – G. Varvelli
Versuch 1 – Viren
In genau der beschriebenen Warteposition wird ein Trojaner, der nicht wie ein Rootkit
über die Betriebssystemnähe verfügt, für Anti-Trojaner erkennbar: sie überprüfen über
Kommunikationsbefehle (FTP-, TCP-, UDP-, IP- oder Ethernet-spezifisch, also protokollabhängig und je nach Kommunikationsebene des Schichtenmodells), ob sich an
einem der 65535 (216 ) Ports ein Prozess in Wartestellung, Empfangs- oder Sendebetrieb
befindet. Findet nun ein gestarteter Anti-Trojaner ein Prozess, dass an einem Port
„lauscht“ (auf Datenpakete wartet), hinterfragt er dessen Rechte bzw. die Herkunft der
Datenpakete (Applikation) und vergleicht die Ergebnisse der Analyse mit den Vorgaben
seiner Datenbank; bei Übereinstimmung gibt der Anti-Trojaner sein positives Ergebnis
durch eine explizite Trojanerwarnung aus und stellt ihn somit bloß.
Installation und Einstellungen eines Anti-Trojaners
Das Anti-Trojaner-Programm von Anti-Trojan, das auf der Labor-CD als Sharewareversion mit beschränkter Nutzungsdauer (14 Tage) vorliegt, ist einfach in der Installation und der Handhabung. In Abbildung 15 ist das Hauptfenster dargestellt, an dem die
Auswahl der verschiedenen Funktionen (Einstellungen, Suche etc.) erfolgt.
Abbildung 15: Hauptfenster von Anti-Trojan
Bevor die Suche nach Trojaner begonnen wird, sollten einige sinnvolle Einstellungen
getroffen werden. Im Fenster zur Optionenauswahl in Abbildung 16 sind zwei
Einstellungen sinnvoll, nämlich das Abspeichern ausgewählter Optionen beim Beenden
Seite 55
SI-LABOR – G. Varvelli
Versuch 1 – Viren
des Programms und die Einbeziehung der Suche von Trojaner in gepackten Dateien.
Leider werden dabei aber nur im zip-Format, nicht aber mit LHA oder andere, gepakte
Dateien untersucht; darum trotzdem Vorsicht, wenn man verstärkt gepackte Dateien
anderer Formate erhält. Nicht sinnvoll ist es, zip-Dateien automatisch zu löschen:
solange man die Dateien im Anschluss nicht wieder vergisst und entpackt, sondern sie
im Namen als infiziert kennzeichnet – am besten die Endung *.zip in *.zit oder
Ähnliches mit umbe-nennt –, ist diese automatische Funktion nicht sinnig, da man nicht
mehr manuell nach dem Schuldigen suchen kann.
Abbildung 16: Fenster zur Optionenauswahl
In diesem Fenster können auch vorhandene Plugins, also als Extras nachträglich eingebundene Funktionalitäten, ausgewählt und ausgeführt werden. Die zwei serienmäßigen
Plugins sind ein Process Viewer nach Vorbild des NT Task Manager und ein Tool, um
Ports händisch und explizit zu schleißen.
Der Process Viewer (Abbildung 17) zeigt die gestarteten und residenten Prozesse
inklusive der Prozess-ID und gibt die Möglichkeit einzelne ausgewählte zu terminieren.
Allerdings kann an dieser Stelle nicht verbindlich gesagt werden, ob wirklich alle
Prozesse angezeigt werden oder ob besondere Kernelzugriffe versteckt ablaufen
können, ohne dass dieser Task Manager es aufzeigen würde.
Seite 56
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Abbildung 17: Prozess-Manager als Plugin
Beim Port Checker (Abbildung 18) werden initialisierte Ports, zugehörige IP-Nummern
und Hostname sowie Status angegeben. Durch Auswahl eines Ports und Ancklicken mit
der rechten Maustaste besteht die Möglichkeit, diesen zu schließen.
Abbildung 18: Port Checker als Plugin
In Abbildung 19 sind die Einstellungen zum Scan von Anti-Trojan aufgeführt; sinnvoll
ist es, Trojaner über ein Portscan, die Untersuchung der Registry und – von Zeit zu Zeit,
wegen der Dauer der Untersuchung – der Datenträger, auf die momentan zurückgreifen
kann. Sollte man sich entscheiden, ein Medium wie CD-ROM, Diskette, Zip oder ähnliches zu untersuchen, erfolgt die Auswahl über ein Ancklicken der gewünschten Laufwerke (erkennbar durch ein Häckchen im Rechteck). Gefundene Trojaner sollten nicht
sofort gelöscht werden; eine Kopie der infizierten Datei sollte man zu Anschauungszwecken immer machen. Anschließend kann das System komplett gereinigt werden, so
wie es in der Abbildung an der untersten Auswahl ersichtlich wird. In diesem Fenster
wird auch die Reportanzeige nach dem Scan über ein Button ‚Report’ ermöglicht.
Seite 57
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Abbildung 19: Einstellungen-Fenster von Anti-Trojan
Wird sie Trojanersuche gestartet, erscheinen die Anzeigen gemäß Abbildungen 20, 21
und 22. Zuerst werden die Ports untersucht (inklusive einer Aktivität am Port), anschließend wird die Registry durchforstet (Abbildung 21), und als Letztes werden,
sofern welche ausgewählt wurden, Laufwerke auf mögliche Infektionen hin untersucht.
Abbildung 20: Anzeige während des Port-„Scans“ von Anti-Trojan
Seite 58
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Abbildung 21: Anzeige während des Registry-Scans von Anti-Trojan
Wie zu erkennen ist, zeigt Anti-Trojan während des Scans die bekannten Trojaner an,
deren Signaturen es berückichtigt.
Bei der Laufwerksuntersuchung zeigt das Programm die aktuell untersuchte Datei und
verdächtige Spuren.
Abbildung 22: Anzeige während des Laufwerks-„Scans“ von Anti-Trojan
Seite 59
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Abbildung 23: Anzeige des Suchreports nach eimen Scan von Anti-Trojan
Zum Schluss werden die Untersuchungsergebnisse angezeigt (Abbildung 23). Dieser
Report kann auch nachträglich über das Report-Button (links im Bild) oder über das
Details-Button (rechts im Bild) als html-Dokument mittels des Standard-Internetbrowsers eingesehen werden.
In Abbildung 24 ist das Fenster mit der Funktion zur Newsletter-Anmeldung dargestellt.
Abbildung 24: Fenster mit Newsletter-Anmeldung und
Information zu Trojanern (nur über Internet) im Anti-Trojan
Seite 60
SI-LABOR – G. Varvelli
Versuch 1 – Viren
4.2.3 Firewalls
Eigentlich müsste die Installation einer Firewall – einer Feuerwand – schon im Rahmen
der Vorsorgemaßnahmen vorgenommen werden. Da nun durch die bis jetzt gemachten
Erläuterungen zur Funktionsweise von Viren, Antiviren-Scannern, Trojanern und AntiTrojanern die Umstände für eine Infektion und die mit einer Infektion eingehende Mühe
klar geworden sein dürfte, ist die Notwendigkeit einer Firewall um so klarer.
Zunächst stellt sich die Frage, was eigentlich eine (Personal) Firewall ist und wann man
eine benötigt. Dies ist leicht beantwortet: Eine Personal Firewall ist eine Software, die
sich in den IP-Stack (siehe [20], [21]) einklinkt und den Netzwerk-Datenverkehr über
die Kommuni-kationswege für Datenpakete an der Übermittlungsstelle, den Ports,
kontrolliert und diese Kommunikation nötigenfalls unterbricht. Etwas komplizierter
Eine Firewall stellt einen Paketfilter dar, der anhand einer Regelliste5 Datenpakete auf
deren Sende- oder Empfangsberechtigung (Legitimation). Somit kann ein Computer
vom Internet oder im Netzwerk abschirmt werden – und zwar so, dass alle Datenpakete
(sowohl ein- als auch ausgehende) darauf hin analysiert werden, ob diese von einer
berechtigten Applikation „beantragt“ wurden – dem
Datenpaket an einem bestimmten
Port ging eine explizite Anfrage z.B. vom Browser oder Mailprogramm voraus – und
dementsprechend durchgelassen oder abgeblockt werden, wenn die beantragende
Anwendung nicht berechtigt ist (Trojaner). Erkennbar wird dies der Firewall in erster
Linie an Zugriffen, die von den Programmen auf die Ports erfolgen. Eine Firewall wird
immer dann benötigt, wenn...
-
eine Remote-Access Software wie zum Beispiel PC-Anywhere, Laplink oder
WinGate verwendet wird und der Rechner vor Einbruchsversuchen Dritter
geschützt werden soll,
-
ein Webserver betrieben wird,
-
wenn allgemein ein Server-Programm einen Dienst nach außen anbietet (einige
Tauschbörsen-Tools basieren auf Server-Tools),
-
5
Rechner vor Trojanischen Pferden wie z.B. Back Orifice geschützt werden soll.
Im Wesentlichen sind es: IP-Adressen von Sender/Empfänger, Portnummer lokal und remote, Protokoll
sowie Erlaubnis oder Verbot zu passieren
Seite 61
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Mit anderen Worten sollte jeder Computerbenutzer mit Internet-Zugang vorsorglich
eine Personal Firewall installieren und sie auch einstellen können. Allerdings sollte er
darüber im klaren sein, dass auch Firewalls keine hundertprozentige Sicherheit
garantieren, obwohl sie, eimal richtig konfiguriert – und da liegt die Kunst –
durchaus zusätzlichen Schutz darstellen. Besonderen Augenmerk sollte darum auf die
Standardeinstellungen gesetzt werden, die sofort nach der Firewall-Installation vorliegen. Ein umfangreicher Test von zehn Personal Firewalls, der sich auch um diese
Frage bemühte, wurde von der c’t-Redaktion im November letzten Jahres durchgeführt,
deren Artikel [23] sollte von Interessierten zur Vertiefung zu Rate gezogen werden.
Installation und Einstellungen einer Firewall
Die Personal Firewall ZoneAlarm ist ein kostenloses, einfach zu bedienendes und
einzustellendes Programm; es soll stellvertretend für andere rein softwarebasierte
Firewalls als Beispiel dienen. Die eigentliche Installation von ZoneAlarm Pro (in der
CD liegt die einfachere Freeware-Version, zu Unterrichtszwecken wird wegen der
genaueren Einstellungsmöglichkeiten die Pro-Version eingesetzt) ist einfach gehalten.
Bis auf eine Eingabebox (Abb. 25), in der man ein Passwort zum späteren
Programmzugriff zwecks Regelveränderung angeben kann, aber wegen der Gefahr des
Vergessens nicht unbedingt eingeben muss, sind die Fenster während der Installation
nur zur Information und Werbung gedacht.
Abbildung 25: Eingabebox zur Passworteingabe bei der Istallation
Beim Start des Programms wird die eigentliche „Kommandozentrale“ ersichtlich (in
der mitgelieferten ZoneAlarm-Version ist sie in orange gehalten, nicht in grau-schwarz),
Seite 62
SI-LABOR – G. Varvelli
Versuch 1 – Viren
von der aus alle Funktionen und Einstellungen aus gewählt werden. Abbildung 26 stellt
sie in der oberen Darstellung im offenen, in der unteren Darstellung im gesperrten
Zustand, erkennbar an dem offenen oder geschlossenen Bügelschloss bzw. an dem
gedrückten „Not-Aus“-Knopf über dem ‚Security’-Button. Weitere Informationen über
Status und Kommunikation sind aus den vier mit ‚UP’ für upload und ‚DN’ für
download gekennzeichneten Feldern (links im Bild): Bei vorherrschendem traffic –
Datenübertragung – erscheinen im upload-Feld kleine rote Balken und im downloadFeld grüne, je nach dem ob gesendet oder empfangen wird. Im grauen Feld über dem
‚Programs’-Knopf werden Programme über Icons angegeben, während sie ein Datenaustausch verursachen – siehe dazu Abbildung 40 bei der Nutzung vom Netscape
Communicator.
Abbildung 26: Hauptfenster. Oben ist die Firewall „offen“;
unten ist der „Not-Aus-Knopf“ gedrückt worden, dementsprechend
sind die Ports gesperrt, kein Datenpaket wird durchgelassen.
Rechts unten is ein Pfeil zu sehen, mit dem man das zuletzt aufgerufene Eingabefenster
(klappt bei nochmaligem Drücken einfach hoch) erneut aufruft.
Zum schnellen Unterbrechen eignet sich bei sichtarem Fenster der runde ‚Stop’-Knopf,
der einem Not-Aus-Schalters nachempfunden ist. Daneben besteht die Möglichkeit, das
ZoneAlarm-Zeichen in der Taskleiste rechts bei der Uhr mit der rechten Maustaste
anzuklicken und über die Auswahl des Menüpunktes ‚Stop all internet activity’ Verbindungen und Kommunikation mit dem Internet zu unterbrechen.
Seite 63
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Beim Auswählen des ‚Alerts’-Buttons unterhalb der ‚UP’- und ‚DN’-Anzeigefelder
erscheint das Warnungen-Fenster gemäß Abbildung 27 mit der Angabe der bisher
gesendeten und empfangenen Daten sowie der letzten Warnungen mit Applikation,
Grund, Port, Datum und Zeit. Durch Klicken der Vorlauftasten ( 9 |3|4| : ) kann
man zwischen den letzten x aktuellen Warnungen vorarbeiten. Durch eine konfigurierbare Log-Funktion, die im unteren Bereich dargestellt ist und durch Häckchen-Felder
aktiviert wird, bleiben etwaige Fehlermeldungen erhalten; ein Blick in die Logdatei
durch deren Aufrufen mit dem ‚View Log’-Button ist von Zeit zu Zeit sinnvoll, da man
einen Gefühl für die System-Zugriffe und für die Konfiguration der Firewall bekommt.
Abbildung 27: Anzeige des Warnungen-Fensters
mit möglichen Einstellungen zur Logfunktion
Das ‚Advanced’- und das ‚Log Properties’-Button rufen gleichermaßen das ‚Advanced
alert properties’-Fenster auf (Abb. 28), mit dem einzigen Unterschied, dass beim
Letzteren die Logeinstellung direkt geöffnet werden. Diese zwei Buttons sind als
gleichwertig zu erachten. In der linken Teilansicht wird die Auswahl einer möglichen
Anführung oder Unterdrückung der localen IP-Adresse ermöglicht. Da wir diese
Einstellung von Seiten des Paketempfängers noch nicht überprüft haben, kann von uns
keine Aussage über die wirkliche Funktion gemacht werden. In der mittleren Teilansicht
ist Auswahl der gewünschten Warnmeldungen bzw. deren Unterdrückung aufgeführt;
durch Anklicken und Setzen von Häckchen werden Warnungen an- und ausgeschaltet.
Sinnvoll erscheint uns, die erste Zeit alle Fehlermeldungen zuzulassen, um dann
Seite 64
SI-LABOR – G. Varvelli
Versuch 1 – Viren
„unwichtige“ Stück für Stück wieder zu deaktivieren. Das Unterdrücken von Warnungen bedeutet aber nicht, dass die verursachende Applikation andere Zugriffsrechte
erhält, man sieht einfach nur die Meldung nicht mehr. Sinnvoll erscheint uns die Unterdrückung der Warnungen zu ‚Blocked non-SYN TCP packets’, ‚Blocked fragmented IP
packets’ und ‚MailSafe quarantined attachments’. Alle drei sind in der Abbildung 28
Mitte durch ein rotes Häckchen gekennzeichnet. In der rechten Teilansicht wird die
Auswahl der Logdatei, der Formattierung der Logbucheinträge in der Logdatei
(Definition des Trennzeichens zum Importieren und Auswerten der Logdatei z. B. unter
Excel) und Zeitraum, der von der Logdatei berücksichtigt wird.
Abbildung 28: Einstellungen bei der Auswahl der ‚Advanced Internet Alerts Options’ durch Auswahl
des Advanced-Buttons (Abb. 27 neben der Aufschrift ‚Internet Alerts’). Links: Anführung/Unterdrückung
der localen IP-Adresse. Mitte: Auswahl der gewünschten Warnmeldungen (siehe spätere Abbildungen)
bzw. deren Unter drückung. Rechts: Auswahl der Logfile-Funktion, der Formattierung und Zeitraum.
Beim Auswählen des ‚Lock’-Buttons unterhalb des Bügelschlosses (vgl. Abb. 26)
erscheint ein Fenster (Abb. 29), in dem der Kommunikationsstatus der Firewall angegeben wird (offen oder gesperrt) und Eistellungen zum automatischen Sperren gewählt
werden können. Sinnvoll ist eine Sperrung nach einer bestimmten aktivitätsfreien Zeit,
wenn sich zum Beispiel fünf Minuten nach dem letzten Zugriff (Request, Seitenaufbau,
Download etc.) die Firewall automatisch sperrt. Man könnte ja versehentlich (oder
willentlich) permanent online sein, da man eine Flatrate zur Verfügung hat. Im ‚Alerts’Feld sollte die Auswahl für eine Warnung bei Ablehnung eines Zugriffsversuch im
Internet getroffen werden (unterste Häckchenbox).
Seite 65
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Abbildung 29: Wählbare Einstellungen bei der ‚Internet Lock Settings’.
Es wird der momentane Status erläutert,die Einstellung der automatischen
zeitgesteuerten Sperrung und der Anzeige von Warnungen ermöglicht.
Beim Auswählen des ‚Security’-Buttons unterhalb des ‚Stop’-Knopfes werden die
Sicherheitseinstellungen auswählbar. Über jeweils einem Schieberegler in der Mitte des
Fensters lassen sich unabhängig voneinander für ‚Local’ (internes Netzwerk) und
‚Internet’ drei voreingestellte Sicherheitsstufen auswählen: von ‚Low’ mit einer
uneingeschränkten Kommunikation über Netzwerk und Internet bis zu ‚High’ mit einer
scharfen Kontrolle aller Aktivitäten. Unserer Meinung nach ist die in Abbidung 30 dar-
Abbildung 30: Mögliche Einstellungen
Seite 66
SI-LABOR – G. Varvelli
Versuch 1 – Viren
gestellte Konfiguration die sinnvollste; dabei werden in der ‚Medium’-Einstellung im
internen
Netzwerk
gemäß
Regelwerk
Zugriffsgesuche
berechtigter
Applikationen
erlaubt und unbekannte, unberechtigte erst einmal angehalten, dafür werden alle
Internet-Zugriffe (sowohl versenden wie empfange) angehalten und hinterfragt. Ist eine
Applikation (z.B. Netscape) innerhalb einer Arbeitssession bei ihrem Start schon einmal
berechtigt worden, so bleiben die Zugriffsrechte bis zu ihrer Beendigung erhalten, selbst
wenn stundenlang keine Datenkommunikation erfolgte. Beim nochmaligen Start wird
wieder eine explizite Zugriffsbestätigung verlangt.
Durch Betätigung des ‚Advanced’-Buttons werden sechs Untermenüs (‚Advanced
security properties’) zur Auswahl von Einstellungen in einem Fenster auswählbar (Abb.
31). Innerhalb dieser erweiterten Einstellungsmöglichkeiten kann gewählt werden, ob...
-
der Rechner an einem Internet Connection Sharing Network verbunden ist, z. B.
AVM CapTain zur Internetverbindung über eine einzige ISDN-Karte innerhalb
eines LANs (Einstellung: kein ICSN)
-
Server automatisch zur Datenkommunikation berechtigt sind (Einstellung: alle
Server serienmäßig blockieren,)
-
gefundene Netzwerke eingebunden werden sollen und zum „internen“ Bereich
gezählt werden sollen, somit ein Verbindungsaufbau nicht hinterfragt werden
soll (Einstellung: Hinterfragen bei Zugriffsgesuch)
Abbildung 31: Erweiterte Einstellungsmöglichkeiten zu den Sicherheitseinstellungen
Seite 67
SI-LABOR – G. Varvelli
-
Versuch 1 – Viren
aufgeführte interne IP-Adressen innerhalb des lokalen Netzwerks automatisch
eingebunden werden (deswegen die Netzwerkadresse 192.168.0.0 und Netzwerkmaske 255.255.0.0) und zum „internen“ Bereich gezählt werden sollen,
somit
ein
Verbindungsaufbau
nicht
hinterfragt
werden
soll
(Einstellung:
Hinterfragen bei jedem Zugriffsgesuch, keine Häckchen).
Im Menü ‚Restricted Zone’ kann nach Hostnamen, IP-Adresse, nach IP-Bereich (Abb.
32) oder nach Subnet-Adresse durch Eingabe einer Subnetmaske (z.B. 255.255.0.0)
ausgewählt werden, welche IP-Adressen innerhalb des LANs zugerechnet werden.
Auch hierbei empfehlen wir kein automatisches Einbinden von IP-Adressen, da private
Netzwerke auch von Trojaner für die Weiterleitung genutzt werden können.
Abbildung 32:
In den Menüs ‚Local Zone Custom Settings’ und ‚Internet Zone Custom Settings’, in
Abbildung 33 dargestellt, werden die Ports ausgewählt, die genutzt werden dürfen,
nachdem eine explizite Kommunikationsberechtigung aus dem lokalen Netzwerk oder
zur Internetanbindung erteilt wurde (siehe auch Abb. 38 und 39). Dieses Regelwerk
bestimmt, welche Ports
beim
Erstgebrauch
einer
überhaupt allgemein angesprochen werden dürfen. Wichtig
Firewall
ist
es
sich
daran
zu
erinnern,
dass
die
Grundeinstellungen oftmals zu schwach eingestellt sind und dass alle Applikationen
zum Zuge kommen könnten. Sinnvoll kann es deswegen sein, alles dicht zu machen und
dann bei Gebrauch Stück für Stück durch explizite Regeln für gewünschte Programme
Seite 68
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Ports und Zugriffe zu öffnen. Für den „normalen Betrieb“ können aber folgende
Einstellungen sinnvoll sein:
-
Für den Internetzugang sollte der Port 53 zum Domain Name Service DNS
freigegeben werden; er ist für die Umsetzung und Angabe der KlartextAdressen, wie www.google.de, zuständig.
-
Alle Auswahlpunkte zum Internet Control Message Protocol ICMP sollten
wegen des Restrisikos „tunnelnder“ Angriffsszenarien ausgeschaltet bleiben.
Dieses Protokoll dient nur dem Austausch von Status- und Fehlermeldungen.
Das ewige interne ICMP-Anpingen (‚echo request’ und ‚echo reply’) kann aber
durch die Auswahl des vierten und des sechsten Kästchens abgestellt werden.
-
NetBIOS-Porst können laut Literatur (ohne Quellenangabe) bei schlechter
Konfiguration der Freigaben im Netzwerk zu Sicherheitslücken im System
führen, weswegen präventiv Internetverbindungen über die TCP- und UDPPorts 137, 138 und 139 sowie über TCP-Port 445 nicht erlaubt werden dürfen.
Im rechten Menü werden Dateinamenserweiterungen der Dateien ausgewählt, die beim
Runterladen von E-Mails und bei Verdacht als Vorsichtsmaßnahme unter Quarantäne
gestellt werden. Hier sollten zu Beginn alle Dateiendungen ausgewählt werden.
Abbildung 33: Gewählte Einstellungen bei der Auswahl der ‚Advanced security properties’ aus Abb. 30.
Links: Auswahl der erlaubten Ports innerhalb des lokalen Netzwerks. Mitte: Auswahl der erlaubten Ports
innerhalb der Internetzugriffe. Rechts: Auswahl der Dateiendungen potentiell gefährdender Dateitypen.
Seite 69
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Die Konfiguration einzelner Applikationen: Regeldefinitionen
Beim Auswählen des ‚Programs’-Buttons unterhalb der grauen Anzeigefläche erscheint
eine Liste an Programmen, für die bereits eine Regelliste angelegt worden ist.
Abbildung 34: Mögliche Einstellungen
In diesem Fall sind es: Der Sprachübersetzer Babylon, der Netscape-Browser, der TaskManager von Anti-Trojan, der Windows Media Player und ZoneAlarm selbst. Auch
wenn es den einen oder anderen erstaunt, viele unscheinbare Applikationen versuchen
beim erstbesten „Wehwehchen“ über das Internet Verbindung mit Zuhause aufzubauen,
sobald sie irgend eine Möglichkeit haben. Babylon gibt zum Beispiel die Möglichkeit,
sich über das Internet zu aktualisieren, wörter zu suchen, das Programm weiterzuempfehlen und und und... Was uns perönlich natürlich nicht begeistert, denn Automatismen dieser Art bieten viele Schlupflöcher. Bei jedem Neustart von Babylon ergibt
sich aber auch ein Zugriffsversuch und seitens ZoneAlarm zum Glück eine Warnung,
die in Abbildung 42 rechts dargestellt ist. Nicht so lustig ist daran, dass Babylon
versucht, diese Verbindung im Hintergrund zu starten, ohne dass sich ein Fenster öffnen
würde – klasse Transparenz. Was das Programm da im Hintergrund kommuniziert, ist
wahrscheinlich nur den Programmierern bekannt.
Nicht ganz so undurchschaubar sind ältere Versionen vom Windows Media Player, er
braucht die Internetverbindung „nur“ für das Runterladen von Codecs (Programmteile
Seite 70
SI-LABOR – G. Varvelli
Versuch 1 – Viren
zum Decomprimieren) und für Hilfefunktionen. Was aber genau während der Datenverbindung kommuniziert, kann und will die Microsoft-Hilfe nicht sagen. Wenn man
sich überlegt, dass Microsoft ja eigentlich Betriebssystems-Hersteller ist, und alle
anderen Programme dazugekauft wurden, um den Markt abzuschöpfen, ist es sicher
ratsam zu hinterfragen was genau alles passiert (gesendet wird), wenn man online ist.
Schluss mit der Polemik, kommen wir zur beispielhaften Regeldefinition für Netscape.
Durch Auswahl des ‚Advanced’-Buttons werden zwei Menüs sichtbar. Zum einen sind
es die ‚Access permissions’, in denen Zugriffsrechte für Client- und Serverprogramme
bei einem Zugriff auf das Netzwerk (gelbe Felder) oder zum Internet (blaue Felder)
eingestellt werden; hier sollte bei allen Feldern ‚Always ask for permission’ – immer
Bestätigung einholen – einstellen, die vorletzte Checkbox sollte nicht ausgewählt
werden, um ein Durchschlüpfen des Programms trotz anderslautender Regel zu
verhindern. Zum anderen erhält man im’Alerts and Functionality’ die Möglichkeit,
Einstellungen zu allgemeinen Warnungen und Funktionen wie ‚Warnung bei Zugriffsverweigerung’ zu wählen; es sollten alle drei Checkboxen wie im Bild ausgewählt
werden.
Abbildung 35: Sinnvolle Einstellungen für eine Applikation (hier: Netscape
Communicator) Links: Einstellung der Zugriffsrechte für Client- und Serverprogramme bei Zugriff auf das Netzwerk (gelbe Felder) oder zum Internet
(blaue Felder). Rechts: Einstellung der allgemeinen Warnungen und Funktionen.
Seite 71
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Durch Auswahl des ‚Options’-Buttons rechts von Netscape (in Abb. 34 zweiter roter
Button von oben in der Spalte ‚Options’) werden wieder zwei Menüs sichtbar, zum
einen wieder die ‚Access permissions’, zum anderen die Portauswahl, mit dem sich
entweder alle oder nur bestimmte Ports für die entsprechende Applikation freigeben
lassen. Für den Netscape Communicator (und Messenger) sollten folgende Portzugriffe
zugestanden werden: Port 80 (TCP, http), Port 53 (TCP und UDP, DNS Server), Port 25
(TCP, SMTP Mail), Port 110 (TCP, POP-Server Mail). Der Port 21 (TCP, file transfer
protocol ftp) sollte nur bei starker ftp-Nutzung genutzt werden, ansonsten: zu. Die
Auswahl der Zulassung sollte wie in Abbildung 36 die mittlere sein.
Abbildung 36: Konfigurationsfenster zur Einstellung der
offenen Ports, für jede Applikation, die Zugriff nach Aussen haben
darf, muss jeweils ein eigenes Regelwerk eingestellt werden.
Beim Auswählen des ‚Configure’-Buttons unterhalb des ‚Zone Labs’- und Help-Buttons
werden einige weitere Konfigurationseinstellungen ermöglicht. So kann z. B. eingestellt
werden, dass bei Internet-Aktivitäten ZoneAlarm permanent im Vordergrund gehalten
wird (vor anderen aktiven Applikationen, auch vor Netscape oder dem Internet
Explorer), und dass ZoneAlarm beim Hochfahren des Systems gleich gestartet wird und
im Hintergrund auf Arbeit wartet. Diese beiden Funktionen erscheinen sinnvoll, da sie
ein versehentliches Vergessen der Firewall ausschließen helfen.
Seite 72
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Abbildung 37: Konfigurationsfenster. Wichtig sind nur
die zwei oberen Felder zur Aktivierung der Firewall beim
Hochfahren des Systems und bei Internet-Aktivitäten
Die Firewall in Aktion
Wenden wir uns nun der konfigurierten und in Aktion tretenden Firewall zu. Ausgehend
von der vorgestellten und beispielhaften Konfiguration und der im Hintergrund aktiven
Firewall, wird der Aufruf des Internet-Browsers zu der in den Abbildungen 38 und 39
gezeigten Zugriffswarnung führen. Da Netscape durch ein explizites Regelwerk erst
nach Bestätigung auf Ressourcen zugreifen kann, kann an dieser Stelle der Browser
Abbildung 38: Komplettansicht beim Aufruf von Netscape.
Die Firewall hinterfragt beim User die Bestätigung des Zugriffs
Seite 73
SI-LABOR – G. Varvelli
Versuch 1 – Viren
durch Verneinung angehalten werden oder durch Bejahung der Zugriff freigegeben
werden. In der Warnung wird neben der Applikation noch die interne Zieladresse, der
Dateiname der die Warnung verursachenden Programmdatei und die Versionsnummer
angegeben; beim Aufruf über den ‚More Info’-Button werden weitere allgemeine Informationen über die Funktionalität von ZoneAlarm über html-Seiten angezeigt.
Abbildung 39: Teilansicht; erkennbar wird in diesem Fall die erkannte
Applikation mit Versionsnummer und IP-Nummer (intern). Der Benutzer
erhält die Möglichkeit, den Zugriff zuzulassen oder zu unterbinden.
In diesem Fall haben wir den Browser gestartet, der Verbindungsaufbau ist also erwünscht und der Zugriff kann zugelassen werden. Der Browser baut daraufhin die
vordefinierte Startseite auf – in diesem Fall die Satellitenaufnahme Europas.
Abbildung 40: Seitenaufbau der im Browser voreingestellten Startseite
nach manueller Bestätigung der Berechtigung. Erkennbar ist der Datenverkehr an den grünen Balken in der Anzeige DN für Download.
Seite 74
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Es kann allerdings auch vor anderen Zugriffsversuchen gewarnt werden: In Abbildung
41 ist eine wahrscheinlich harmlose Warnung gezeigt, die vor einer versuchten SubnetInternetverbindung warnt, die vorsichtshalber abgeblockt wurde.
Abbildung 41: Mögliche Zugriffswarnung; ein hat ein
Subnet-Datenpaket losgeschickt – abgeblockt.
In Abblidung 42 sind weitere zwei Zugriffswarnungen dargestellt. Die linke Warnung
wurde durch ein eingehendes Datensignal aus einem anderen Rechner innerhalb des
Netzwerkes bei dessen Diensteanmeldung verursacht und ist, solange sich wie in diesem
Fall keine expliziten Dienste-Server auf dem sendenden oder dem empfangenden
Rechner befinden, vernachlässigbar. Die rechte Warnung ist, wie im vorherigen Absatz
bereits besprochen wurde, auf einen versteckten Kommunikationsversuch seitens der
Übersetzungssoftware Babylon zurückzuführen. Solche Art Kommunikation ist wegen
der unbekannten Datenübertragung mit Vorsicht zu geneißen.
Abbildung 42: Mögliche Zugriffswarnungen. Links: ein Rechner aus dem internen Netzwerk hat beim
Hochfahren ein NetBIOS- Datenpaket losgeschickt – eher harmlos. Rechts: Die Applikation (Babylon
Translator) hat im geheimen nach ihrem Aufruf ein Verbindungsversuch gestartet – nicht transparent.
Seite 75
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Fireholes
Wichtig an dieser Stelle ist allerdings auch das Wissen um Angriffskonzepte, die auf die
Nutzung berechtigter Ressourcen basieren, die von einer Firewall nicht als Angriff
interpretiert wird, somit die Firewall trotz korrekter Funktion umgangen werden kann.
Zum besseren Verständnis kann dies bildlich wie ein Loch in der Feuerwand gesehen
werden, durch den nicht nur berechtigte Kommunikation über den Browser, sondern
auch über den unkontrollierter und -barer Informationsaustausch erfolgt. Dabei geht es
letztendlich um das Hineinschmuggeln von Datenpaketen über legitime Ports wie zum
Beispiel dem Port 80 (http), „dem Internet-Port schlechthin“.
Wie Das? Einfach: Über den gerade genutzten Intenet-Browser. Nun muss man wissen,
dass die Methode, den Browser selbst über einen Trojaner zu infizieren, der dann über
den Browser zuschlägt, mittlerweile von allen neueren Firewalls mittels Checksummenüberprüfung der wichtigen Programmteile (z.B. netscape.exe) enttarnt wird – solange
bei der erstmaligen Browser-Installation nicht schon ein Trojaner auf dem System
vorlag (sonst wären die Checksummen da schon falsch). Ein neuer Weg, seit zirka
einem Jahr angedacht und mittlerweile von Programmierern mehrfach realisiert, sieht
die Nutzung interner autorisierter Funktionalitäten und Befehle vor, wie sie in ihrer
auch schädlichen Funktion noch von kaum von einer Firewall überprüft werden können.
Dabei kann es sich beispielsweise um ActiveX-Steuerbefehle handeln, die in
bestimmten *.dll Dateien (dynamische Bibliotheken) vom Programmierer kodiert
werden, nach der Freigabe vom Browser aufgerufen werden und sich ebenso in für den
autorisierten
lassen
sich
Prozess
zum
vorgesehenen
Beispiel
Speicherbereich/aktionssphäre
Keystroke
Logger
befinden.
Somit
(Tastaturanschlag-Protokollierer)
realisieren, die die Aktivität an Tastatur oder Maus registrieren und übertragen können.
Obwohl für die Realisierung solcher Angriffe noch einiges mehr an Programmiersprachenkenntnisse erforderlich sind, werden in nächster Zeit wohl verstärkt solche
Angriffe zu registrieren sein.
Seite 76
SN-LABOR – VERSUCH 1 - Viren
Aufgabenstellung im Versuch
Nachdem in den vorhergehenden Kapiteln Grundlagen zur sogenannten Malware, zu Techniken
zum Schutz und die Funktionsweise der Programme erläutert wurden, werdet ihr während des
Laborversuchs mit dem Virenscanner der Firma Kaspersky Labs und McAfee experimentieren,
mit dem Anti-Trojaner-Programm Anti-Trojan, dem Scanner CIS V.5.0 und der Firewall
ZoneAlarm bekannt gemacht und arbeiten. Ziel ist es, die zuvor gezeigten Sicherheitskonzepte
und -mittel im Versuch umzusetzen. Im Laufe des Labors sollen folgende Aufgaben gelöst
werden:
1. Einstellungen am System gemäß Sicherheitskonzept treffen
2. Installieren des Virenscanners
3. Einstellen des Virenscanners
4. Scannen von Dateien / Untersuchung auf Infektionen
5. Isolieren von Viren
6. Suchen von Informationen über gefundenen Viren und Gefahreneinschätzung
7. Updaten der Virendefinitionen
8. Einstellen und scannen mit einem Trojaner-Suchprogramm
9. Untersuchen von Dateien mit doppelter Dateiendung
10. Scannen eines Nachbarrechners mit dem Programm CIS, bevor die Firewall installiert ist.
11. Installieren und Einstellen der Firewall
12. Scannen eines Nachbarrechners mit dem Programm CIS, nachdem die Firewall installiert
ist. Welche Informationen sind nun noch abrufbar?
13. Anpingen des Rechners anhand seiner IP-Nummer über einen anderen Rechner
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Literatur – Quellen
[1]
Cohen, F. B.: Computer Viruses: theory and Experiments.
In: Short Courses on Computer Courses. Pittsburgh: ASP Press, 1990.
[2]
MessageLabs: www.messagelabs.com
[3]
c't 2001, Heft 2, Seite 101
[4]
Schäpers, A.: Kampfansage, Bibliotheksroutinen zur virenabweisenden
Programmierung. c't 1992, Heft 7, Seite 146
[5]
Ision: www.ision.de
[6]
Brauch, P.: E-Mail, aber sicher, Der richtige Umgang mit elektronischer Post.
c't 2000, Heft 20, Seite 116
[7]
Antiviren-Seiten von c't: www.heise.de/ct/antivirus
[8]
Information zu Falschmeldungen sind zu finden unter: www.hoax-info.de
[9]
Kossakowski, K.P.: Klassifikation und Abwehr von Computer-Würmern in
Netzwerken. Hamburg: Diplomarbeit, Universität Hamburg, Fachbereich
Informatik, 1992. Unter: www.cert.dfn.de/tutorial/wuermer/ ist ein
gleichnamiger Online-Tutorial zu finden.
[10]
Der FAZ-Artikel vom 13.08.2001 ist zu finden unter:
www.asp-group.at/presse/2000/FAZ13.08.2001Sc.htm
[11]
Unter der McAfee Virus Information Library: vil.nai.com/vil/default.asp
ist eine große Menge (z. Z. über 58.000) an Vireninformationen zu finden
[12]
Unter vil.nai.com/vil/content/v_98910.htm sind Information zum Wurm
W32/BleBla.b@MM (auch Romeo&Juliet und W32/Verona) aufgeführt
[13]
Anderson, J. P.. Hanscom AFB, Mass.: Computer Security Technology
Planning Study. In: Air Force Electronic Systems Division, 1972. – Technical
Report ESD-TR-73-51, vols. 1 and 2.
Seite 78
SI-LABOR – G. Varvelli
[14]
c't 2002, Heft 4, Seite 196
[15]
c't 2001, Heft 2, Seite 102
[16]
Martin, F.: Virus Report ’98.
Versuch 1 – Viren
Feldkirchen: Franzis Verlag, 1997
[17]
Anonymous: Der neue Hacker’s Guide.
München: Verlag Markt+Technik, 2001
[18]
Informationen zum verstekten Trojaner ANTS ist zu finden unter:
w ww.unitrade.ch/uportal/uportal.archiv0103.htm
w ww.rp-online.de/news/multimedia/software/2510_trojaner.html
[19]
Kremer, K.: Rechnernetzwerke.
Friedberg: Skript zur Vorlesung, Fachhochschule Geissen-Friedberg, 1999.
[20]
Ein ausführlicher englischsprachiger Tutorial zur TCP/IP-Technik ist zu finden
auf einer Seite der Universität von Las Palmas unter:
w ww4.ulpgc.es/tutoriales/tcpip/pru/3376fm.htm
[21]
Ausführliche Beschreibungen zu genutzten TCP/IP-Ports sind zu finden unter
der Website von Robert Akerman:
w ww.chebucto.ns.ca/~rakerman/port-table.html
und von bekannten Trojanern genutzte Ports (siehe auch Anhang):
w ww.chebucto.ns.ca/~rakerman/trojan-port-table.html
[22]
Port-Tabellen mit der Zuordnung sind zu finden unter:
w ww.linux-firewall-tools.com/linux/ports.html
w ww.networkice.com/advice/Exploits/Ports/
w ww.simovits.com/nyheter9902.html
[23]
c't 2001, Heft 23, Seite 174
[24]
c't 2001, Heft 21, Seite 152
[25]
c't 2001, Heft 2, Seiten 98 bis 101 sowie Seiten 116 bis 119
Seite 79
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Weiterführende URLs zum Thema
w ww.bsi.de
w ww.sciam.com/askexpert/computers/computers15/"
citeseer.nj.nec.com/context/69586/0
w ww.cdt.org/security/dos/000223senate/cohen.html
w ww.bocklabs.wisc.edu/~janda/sladehis.html
w ww.symantec.de/region/de/avcenter/vwutp.html
w ww.chip.de/news_stories/news_stories_212858.html
w ww.cert.org/tech_tips/home_networks.html/
Information zu dieser Ausarbeitung
Diese Ausarbeitung wurde im Februar 2002 unter Verwendung der in der Literaturliste
aufgeführten Quellen zum Zweck der Ausbildung der Studenten der Medieninformatik
im Labor ‚Sicherheit in der Informationstechnik’ an der Fachhochschule GießenFriedberg von G. Varvelli im Auftrag fertiggestellt. Zitierte Passagen sind nicht explizit
gekennzeichnet.
Seite 80
SI-LABOR – G. Varvelli
Versuch 1 – Viren
Anhang
Tabelle der von einigen Trojanern für Angriffe benutzten Ports, nach Ports geordnet.
Trojaner-Name
Port
Trojaner-Name
Port
FTP Open Server
Bonk (DOS Exploit)
BO jammerkillah
Hackers Paradise
Phase 0
Silencer
Doly trojan 1.35
Doly trojan 1.5
NetSpy
GateCrasher.b
WinGate
SubSeven 2.0
Vodo
Back-Orifice.FTP
Shiv
SpySender
BackDoor
BackDoor.201
BackDoor.203
PassRipper
The Invasor
Striker
Wincrash2
FileNale
Blazer 5
BackConstruction.1.2
The Thing
DeltaSource
Gatecrasher
NetMonitor
Portal of Doom
Coma
Senna Spy Trojans
Progenic Trojan
Giamer
Priotrity
Millenium
NetBus Pro
Girl Friend
NetSphere
Tiny telnet Server
Remote Windows Shutdown
21
53
121
456
555
1001
1010
1015
1033
1047
1080
1234
1245
1492
1600
1807
1999
1999,1003
1999,5598
2023
2140
2565
2583
4567
5000
5400
6400
6883
6969
7306
9872
10607
11000
11223
12076
16969
20000
20034
21554
30100
34324
53001
Masters Paradise
Executor 1.0a
Win Nuke
Stealth Spy
Attack FTP
WebEx
Doly trojan
NetSpy.698
Blah 1.1
GateCrasher.c
Streaming Audio
Maveric's Matrix
FTP99CMP
ShockRave
BackDoor.200
BackDoor.202
TrojanCow
Pass Ripper
Ivasor
Rat
Phineas
icqTrojan
ojen
FireHotcker
BladeRunner
xtcp
RoboHack
Wincrash
Devil 1.03
Vampire
Deep Throath
ICQKiller
INIKiller
NetBus 1.x
Prosiak 0.47
Whack Job
SubSeven 2.1
Socket23
Kuang
Back Orifice
Fore, Schwindler
Telecommando
31
80
139
555
666
1001
1011
1024,1025
1042
1047
1170
1269
1492
1981
1999,1003
1999,1003
2001
2023
2140,3150
2283
2801
4950
4950
5321
5400
5550
5569
5742
6500
6669
6670
7789
9989
12346
22222
23456
27374
30303
30999
31337
50766
61466
Seite 81