Inhalt:
Makroviren - eine kurze Beschreibung
Generell benötigt ein Virus für seine schnelle Verbreitung eine geeignete Umgebung und einige Vorbedingungen:
- Er benötigt eine Hard- und Softwarewareumgebung, die von möglichst vielen Anwendern benutzt wird und einen möglichen Träger (Wirt). Der
Wirt sollte möglichst häufig mit anderen Anwendern ausgetauscht werden und
muss einen Transport des Virus erlauben, ohne dass dem Anwender das Vorhandensein des Virus auffällt. In einer
Netzwerkumgebung sollten die Modifikationen von Dateien nicht verhindert werden.
- Weiter ist eine Programmierumgebung (System-API, Makrosprache, Scriptsprache, etc.) erforderlich, die es dem Virus erlaubt, möglichst viel Kontrolle über das System zu erlangen und potentielle
"Opfer" so zu verändern, dass Sie zusätzlich eine Kopie des Virus enthalten. Hierbei sollten
keine Warnmeldungen vom System erzeugt werden. Weiter ist es notwendig,
dass die Programmierumgebung eine Möglichkeit bietet, Programmcode zu speichern, ohne
dass dieser durch das Löschen einer Datei verloren geht.
- Die Möglichkeit, Programmcode ohne große Programmiererfahrung zu erstellen und zu verändern, erleichtert das Schreiben von Viren enorm.
Die meisten Anwendungen (Textverarbeitung, Tabellenkalkulation, Datenbank) großer Office-Pakete (Microsoft Office, StarOffice, etc.) sind inzwischen über eine
äußerst mächtige Makrosprache (im Prinzip eine Programmier-Hochsprache)
automatisier- und programmierbar. Diese Makros ermöglichen z.T. sogar den direkten Zugriff auf das Betriebssystem. Die Programmierung ist einfach, da
sie auch von unbedarften Anwendern ausgeführt werden soll. Die aufgezeichneten Makros werden dabei zusammen mit anderen Daten im Dokument abgespeichert. Weiter werden diese Applikationen sehr oft verwendet und auch die Dokumente immer wieder ausgetauscht. Eine zentrale Dokumentenvorlage ermöglicht das Speichern von häufig benötigten
Makros - sog. Auto-Makros werden beim
Start der Anwendung oder beim Laden eines Dokuments teilweise automatisch ausgeführt.
Microsoft Word für Windows (WinWord), Excel, AmiPro, StarOffice und einige andere Applikationen erfüllen somit alle der oben genannten
Bedingungen. Sie sind für Viren eine nahezu ideale Umgebung; insbesondere dadurch, dass von den meisten Herstellern keine oder nur ungenügende Schutzmechanismen vorgesehen sind. Noch schlimmer ist allerdings,
dass es Makros gibt, die von der Anwendung automatisch ausgeführt werden, sobald ein Dokument geladen oder gespeichert wird. Diese Makros können sogar verändert oder ersetzt werden. Genau hier setzen Makroviren an.
Makroviren sind kleine Programme, die in der Makrosprache einer Anwendung (z.B. WordBasic unter WinWord 6.0) geschrieben sind und sich normalerweise auch nur innerhalb von Dokumenten dieser Anwendung verbreiten können. Sie werden deshalb auch Dokumentviren genannt. Damit
sie aktiv werden, sind sie immer darauf angewiesen, dass die entsprechende Applikation gestartet und eines der infizierten Makros ausgeführt wird. Im Unterschied zu
"normalen" Viren befallen Makroviren also keine ausführbaren Dateien sondern die Dokumente der jeweiligen Wirts-Applikation.
Bis zum Jahr 1995 galt die Aussage, dass Viren sich nur in Programmdateien verbreiten könnten.
Danach mussten dann aber alle alten Aussagen verworfen werden. Was
man bisher nur in der Theorie für möglich hielt, war Wirklichkeit geworden. Der erste Makrovirus
tauchte auf: WW6.Concept. Er zeigt allerdings nur auf,
dass Makroviren generell möglich waren, tat aber ansonsten nichts. Erstmals nistete sich
ein Virus in WinWord-Dokumenten ein. Eine neue Art von Viren war geboren: Makroviren.
Es dauerte nicht lange, bis andere Virenschreiber auf den Zug
aufsprangen. Um sich zu tarnen und die Funktion zu verbergen, speicherten sie die infizierten Dokumente als getarnte Dokumentenvorlagen, in denen die Makros abgelegt sind. Der Anwender bemerkt davon nichts, da das infizierte
WinWord auch für diese verseuchten Dokumentenvorlagen die Dateierweiterung "DOC" verwendet. Excel und das neuere
WinWord 8 können auch in normalen Dokumenten Makros speichern und enthalten zusätzlich noch eine
leistungsfähige Programmiersprache - Visual Basic for Applications 5. Dies vereinfachte die Situation für die Virenschreiberlinge sogar noch weiter.
Die Vielfalt und Anzahl der Makroviren ist inzwischen dramatisch gestiegen: Es gibt polymorphe Makroviren, die ihren eigenen Programmcode bei jeder Infektion verändern und so eine Erkennung erschweren. Durch das Starten
echter Programmcodes können sog. Dropper sogar das System selber mit einem Dateivirus infizieren oder einen Trojaner absetzen. Alles
in dieser Richtung ist möglich, mit weiteren Entwicklungen ist zu rechnen. Heutzutage werden 80% aller
Infektionen durch Makroviren verursacht. Durch unterschiedliche Zählmethoden verschiedener Firmen und Organisationen kann zur Zeit niemand genau sagen,
wie viele Makroviren eigentlich existieren. Nur eines ist sicher: ihre Zahl ist exponentiell steigend.
Viele Firmen - unter anderem auch Microsoft - haben bereits selber verseuchte Dokumente veröffentlicht. Makroviren sind derzeit fast für alle großen, scriptfähigen Applikationen zu finden: WinWord 6,7 und 8, Excel, Access, AmiPro, PowerPoint,
WordPerfect etc. Die Hersteller versuchen zwar durch Warnmeldungen oder Ähnliches vor Infektionen zu schützen, weitergehende
Maßnahmen beeinträchtigen aber oft die gewünschte Funktionalität der Makrosprachen und werden dadurch vom Anwender nicht akzeptiert oder ausgeschaltet.
Es überrascht im übrigen nicht,
dass sich die Makroviren mit rasanter Geschwindigkeit ausbreiten. Die interne und externe Vernetzung vieler Firmen, das
Internet sowie die oben erläuterte Anfälligkeit der entsprechenden Applikationen fördern diese Tendenz. Makroviren sind zur Zeit der "erfolgreichste" Virentyp. Durch Infektion eines einfachen, weitverbreiteten
Dokuments gelangen sie sehr einfach per Email, FTP, HTTP, Diskette, LAN oder WAN zu weiteren Benutzern, die es
ihrerseits weiterleiten. So erklärt sich die lawinenartige Verbreitung. Da man Office-Dokumente
(Word/Excel/WordPerfect etc.) häufig als Anlage (Attachment) zu Emails oder eingebettet in
www-Pages findet, eröffnet sich hier eine weitere Verbreitungsquelle. Häufig
ist das Email-Programm, der News-Reader oder der www-Browser so konfiguriert, dass er auf Doppelklick das passende Anwendungsprogramm, in diesem Fall die
Office-Applikation (Word,
Excel etc.), startet, so dass der Virus eine vollautomatische Verbreitungsmöglichkeit
vorfindet. Der weiteren Verbreitung steht somit - bis auf Antivirenprogramme - nicht sehr viel im Wege.
Funktion eines Makrovirus
Die meisten Makroviren benutzen sog. Auto-Makros, welche beim Öffnen einer Datei automatisch ausgeführt werden. Andere Makroviren benutzen häufig ausgeführte Standardbefehle wie Datei
speichern oder Datei drucken und ersetzen diese Aufrufe durch
Virencodes. Danach führt die Anwendung diesen modifizierten Menübefehl aus, der zur Tarnung zusätzlich noch den Standardbefehl enthält. Durch das einfache Öffnen eines
Dokuments oder durch Ausführen einer bestimmten Aktion (z.B. Drucken) wird der Virus aktiv und kann alle von der entsprechenden Applikation zur Verfügung gestellten Befehle ausführen. Mit den mächtigen Befehlen heutiger Applikationen ist es dann ein leichtes, sich
an ein noch nicht infiziertes Dokument anzuhängen oder irgendwelche
Schadensroutinen auszuführen.
Makronamen, wie auch einige Anweisungs- und Funktionsnamen in WordBasic (Word 6/7), sind weltweit nicht einheitlich: sie wurden in die jeweiligen Landessprachen übersetzt. So heißt etwa die Anweisung unter WinWord 6 zum Speichern eines
Dokuments in der englischen Originalversion File Save As, in der deutschen Version hingegen
Speichern unter. An dieser Stelle sind also die Implementierungen der nationalen Word-Versionen nicht mehr kompatibel. Die ersten Makroviren waren daher auf eine nationale Variante von Word (oder auf einige wenige) beschränkt. Gelegentlich funktionierte in einer nationalen Variante nur ein Teil des Virus, etwa die Infektion der NORMAL.DOT durch das Makro AutoOpen, dessen Name ja in allen Varianten gleich ist.
Die ersten Makroviren waren noch schlecht getarnt und daher von den Anwendern relativ problemlos zu erkennen und zu entfernen. Dies war nur dann problematisch, wenn bereits fast alle auf dem Rechner befindlichen Dokumente der entsprechenden Anwendung infiziert waren, da man jene Viren
einzeln und manuell entfernen musste. Die zwischenzeitlich aktualisierten Antivirenprogramme erleichterten die Sache dann doch noch
erheblich. Inzwischen sind Makroviren - und das unterscheidet sie nicht von
herkömmlichen Viren - wahre Künstler im Versteckspielen mit Anwendern und Antivirenprogrammen.
Zum Seitenanfang
Erkennung von Makroviren
Es gibt einige Indizien, die auf einen Makrovirus schließen lassen:
- Das Laden Ihrer Dokumente dauert wesentlich länger als früher, Sie haben
aber am Rechnersystem nichts verändert.
- Sie haben häufiger Ubchstabenverdreher oder
Ähnliches.
- Rechtschreib-korrigierte Dokumente
weisen plötzlich wieder Schreibfehler auf.
- Der Plattenplatz auf Ihrem System nimmt schnell ab.
- Ungewöhnliche Festplattenaktivitäten.
- Es gelten die üblichen Indizien wie bei normalen Viren.
- Am einfachsten und sichersten lassen sich Makroviren durch ein gutes und aktuelles Antivirenprogramm erkennen!
Zum Seitenanfang
Schutzmechanismen
Gegen Makroviren gibt es keinen 100%-igen Schutz und auch kein Allheilmittel. Sie können
sich und Ihr System jedoch so gut wie möglich schützen:
- WinWord 6/7: Aktivieren Sie unter "Extras, Optionen, Speichern" die "Automatische Anfrage für Speicherung von NORMAL.DOT". Hiermit wird das Speichern der Standard-Dokumentvorlage vorher durch eine Rückfrage abgesichert. Wenn Sie selbst keine Änderung an der NORMAL.DOT vorgenommen haben (z.B. durch "normale" Makros, Änderungen der Format-Vorlage),
haben Sie es eventuell
mit einem Makrovirus zu tun, der versucht, die NORMAL.DOT zu infizieren.
- WinWord 6/7: Schalten Sie - wenn möglich - Auto-Makros ab. Auto-Makros lassen sich leider nicht über das Menü deaktivieren, sondern Sie müssen etwas Handarbeit investieren. Erstellen Sie hierzu über "Extras, Makro, Erstellen" ein Makro mit dem Namen "AutoExec". Im Makro-Bearbeitungsfenster geben Sie als Text zwischen "Sub Main" und "End Sub" die Zeile "AutoMakroUnterdrücken 1" ein. Beenden Sie anschließend
WinWord und bestätigen Sie die Rückfrage der Änderung von NORMAL.DOT (siehe oben).
- WinWord 6/7: Kontrollieren Sie die Makroliste Ihrer NORMAL.DOT. Sie sollten ab und zu nachsehen, ob sich in Ihrer NORMAL.DOT verdächtige Makros befinden, die nicht von Ihnen selber stammen. Rufen Sie hierzu "Extras, Makro" auf, wählen die NORMAL.DOT
aus und überprüfen Sie die Makroliste nach verdächtigen Makros.
- Benennen Sie das Programm "DEBUG.EXE"
in z.B. MYDEBUG.EXE um. Dieses Programm wird von einigen Makroviren - sog. Droppern - benutzt, um den Computer
mit DOS-Viren zu verseuchen. Dies geschieht dadurch, dass DEBUG.EXE im Assembler-Modus mit dem Virencode gefüttert wird, der dann auf die Platte geschrieben und ausgeführt werden kann.
- Sollte ein Makrovirus die Funktion zum Makroansehen sperren (was auch ein Indiz für einen Makrovirus ist), kann man nur die NORMAL.DOT oder die entsprechende Standardvorlage löschen und eine andere auf deren Namen umbenennen, wobei das Risiko besteht,
dass diese Vorlage ebenfalls infiziert ist. Es empfiehlt sich daher, immer eine definitiv virenfreie Version der Standarddokumentvorlage (am besten gleich nach der Installation machen) irgendwo auf einer Diskette gesichert zu haben. Für verschlüsselte Makros ist das gleiche Vorgehen zu empfehlen.
- WinWord 6/7: Beim Automatisieren von Abläufen in Word werden bevorzugt Auto-Makros benutzt. Befindet sich in der Standarddokumentvorlage NORMAL.DOT ein Makro mit Namen
"AutoExec", so wird dieses beim Start von Word automatisch ausgeführt. Analog werden die Makros
"AutoNew" beim Erstellen einer neuen, "AutoOpen" beim Öffnen und
"AutoClose" beim Schließen einer Datei behandelt. Um
zu verhindern, dass WinWord diese Auto-Makros abarbeitet, hält man beim Start von Word die Taste SHIFT gedrückt oder startet
WinWord mit dem Parameter /m. Eine weitere Option ist, beim Laden von Dokumenten die SHIFT-Taste gedrückt zu halten. Leider hilft dieser Trick gegen neuere Viren kaum noch, da sich diese in anderen Makros verstecken.
- Word-Makroviren sind nicht unbedingt auf die Automakros angewiesen. Beinahe jedem Word-Befehl ist ein Makro mit einem bestimmten Namen zugeordnet, das ohne weiteres mit eigenem Inhalt gefüllt werden kann. Existiert ein Makro dieses Namens (global oder im aktuellen Dokument), so bewirkt
die Auswahl des betreffenden Befehls die Ausführung des entsprechenden Makros. Viele Makroviren nützen dies aus, um bestimmte Befehle für sich selber zu nutzen, beispielsweise zur Weiterverbreitung oder für die Schadensroutine. Sehr oft verwendete Befehle, aber auch arglistigerweise die Befehle
"Datei/Dokumentvorlage/Organisieren" und "Extras/Makro", mit denen Sie sonst
ein Dokument nach Makros untersuchen und löschen konnten, werden von den Viren abgefangen, verändert
oder deaktiviert. Auch hier gilt wieder, dass der Virus durch Überschreiben der Standarddokumentenvorlage deaktiviert werden
muss, um an die Makros heranzukommen.
- WinWord 8: Ab Office 97 (WinWord 8) bietet das Programm selber einen einfachen Schutz. Ist in der Registerkarte
"Allgemein" des Dialogfelds "Optionen" die Option "Makrovirus-Schutz" aktiviert, so wird beim Öffnen eines
Dokuments, das Makros enthält, eine Warnung ausgegeben. Diese ermöglicht das Öffnen, ohne
dass die Makros aktiviert werden. Leider wird diese Funktion nur allzu oft von Benutzern deaktiviert, da
sie im Normalfall auf Dauer ziemlich nervt.
- WinWord 8: Um die Übertragung von Makroviren auszuschließen, sollten alle Dokumente bzw. Dokumentvorlagen, die Sie als Anwender nicht selbst erstellt haben oder deren Herkunft zweifelhaft ist, vor der Benutzung durch Öffnen mit aktiviertem Makrovirus-Schutz überprüft werden. Sollte die Warnmeldung erscheinen, kann das Dokument mit der Option
"Makros deaktivieren" geöffnet und auf das Vorhandensein von Makrocodes überprüft werden.
- WinWord 8: Eine weitere Schutzmöglichkeit besteht darin, die Datei NORMAL.DOT vor unbefugten Änderungen zu schützen. Dazu wechselt man über die Tastenkombination Alt F11 in den Visual Basic-Editor und gibt den Befehl "Normal-Eigenschaften..." aus dem Kontextmenü auf dem Eintrag "Normal" im Projekt-Explorer (Fenster "Projekt - Normal"). Im Register "Schutz" des Dialogfeldes "Normal - Projekteigenschaften" aktiviert man die Option "Projekt für die Anzeige sperren" und gibt ein Kennwort ein. Eine Änderung der Datei NORMAL.DOT verlangt jetzt die Eingabe des Kennworts.
- WinWord 6/7: Für Anwender dieser Programme bietet Microsoft ein kostenloses Antiviren-Tool an (MVTOOL40.EXE). Die selbst-extrahierende Datei erzeugt eine Datei
"SCANTOOL.DOT". Nach dem Öffnen mit WinWord installiert dieses eine Reihe von Sicherheitsmechanismen in der Standardvorlage.
- Öffnen Sie .DOC und .DOT - Dateien per WordPad oder WordView, wenn Sie sie nur lesen wollen. Dies verhindert zuverlässig die
Ausführung aller eventuell im Dokument enthaltener Makros.
- Erstellen Sie eine Batch-Datei, die bei jedem Systemstart die NORMAL.DOT von einem schreibgeschützten Original, am besten vom Server, ersetzt. Dies könnte z.B. über die AUTOEXEC.BAT, einen Eintrag im Run-Eintrag der Registry oder über das Login-Script des Servers geschehen.
Beachten Sie bitte bei allen Tipps, dass viele Makroviren in der Lage sind, die hier dargestellten Schutzmaßnahmen zu umgehen. Der beste Schutz ist noch immer ein gutes und vor allem aktuelles Antivirenprogramm!!
Zum Seitenanfang
Entfernen von Makroviren
Ganz einfach: mit einem guten Antivirenprogramm, z.B. AntiVir®
von H+BEDV Datentechnik GmbH!
Weitere Informationen (Links)