Malware (Teil 2, 2016/17)
Über bösartige Software (Malware) habe ich bereits einen Artikel geschrieben. An dieser Stelle möchte ich einige Aspekte vertiefen oder ergänzen, die sich durch Rückfragen sowie die zwischenzeitliche Entwicklung ergeben haben. Den unmittelbaren Anlass stellt zwar das seit Anfang 2016 gehäufte Aufkommen sogenannter »Erpressungstrojaner« (auch als Ransomware bezeichnet) dar, jedoch sind die folgenden Hinweise nicht auf diese Kategorie begrenzt.
Schutz durch Antiviren-Programme
Zu Beginn stellt sich natürlicherweise die Frage, ob denn durch Antiviren-Programme (AV-Programme) kein völlig hinreichender Schutz möglich ist bzw. – die Antwort vorwegnehmend – warum dieser Schutz nicht erzielt werden kann.
Zunächst einmal ist es so, dass AV-Programme nur bekannte Malware in konkreten Ausfertigungen wirklich sicher erkennen (und damit »bekämpfen«) können. Der Versuch, die Software auch zur Erkennung von Varianten oder sogar der grundsätzlichen Funktionalität von Malware zu befähigen, ist nur in sehr engen Grenzen möglich. AV-Programme können daher vor neuen Bedrohungen in aller Regel nur mit zeitlicher Verzögerung (nach Bereitstellung eines Updates) schützen. 1
Es kommt jedoch noch eine andere Schwierigkeit hinzu: Einige Installationswege können prinzipbedingt gar nicht sicher erkannt – und blockiert – werden, da sie auf Systemkomponenten (Systemprogrammen und ‑diensten) basieren, die auch aus vielen anderen Gründen zum Einsatz kommen.
![]() |
![]() |
![]() |
||||
![]() |
![]() |
![]() |
![]() |
Reales Beispiel: E-Mail enthält ein Word-Dokument mit einem Makro, das startet beim Öffnen – via Befehlszeileninterpreter – die PowerShell mit der Anweisung, ein Script aus dem Internet zu laden und auszuführen. Dieses Script entfaltet dann die schädliche Wirkung (Verschlüsselung der Benutzerdaten).
(Beschreibung und weitere Informationen: heise online Security sowie Carbon Black)
Bei dieser Vorgehensweise kommt keine fremde Programmdatei zum Einsatz. (Zwar stellen sowohl Word-Makro wie PowerShell-Script durchaus Programme im eigentlichen Sinn dar, dies aber nicht in Form ausführbarer Binärcodedateien, die ggfs. neu zum System hinzukommen.) Stattdessen bedient sich solche Malware-Installation vorhandener Komponenten, deren Steuerung durch Anweisungen ja auch gewollt ist. 2
Und die Anweisungen selbst mögen etwas ungewöhnlich erscheinen, ganz unplausibel und damit verdächtig sind sie jedoch nicht. Ohne eine genauere Betrachtung ergeben also weder der Einsatz dieser Systemkomponenten noch die Art der Anweisungen definitive Hinweise auf einen unerwünschten Vorgang. Und eben diese Analyse können AV-Programme nicht automatisiert und zuverlässig leisten.
Es ist durchaus wahrscheinlich, dass Schutzsoftware in dieser Hinsicht noch verbessert wird. Das grundsätzliche Problem, dass zwischen gewollten und ungewollten Vorgängen oft kein prinzipieller, sicher erkennbarer Unterschied besteht, ist damit nicht gelöst. Es bleiben also immer Zweifelsfälle, in denen dann selbstverständlich der Computerbenutzer entscheiden muss.
Schutz durch das System
Dies leitet zur Frage nach Schutzfunktionen des Betriebssystems über. Ist es denn nicht so, dass vor kritischen Vorgängen eine Sicherheitsabfrage erfolgt?
Tatsächlich haben solche Warnhinweise zunehmend Einkehr in die Computersysteme gefunden. Das Dilemma hierbei ist, dass restriktive Schutzfunktionen einer bequemen und flexiblen Benutzung von Computern im Wege stehen. Die Abwägung nach Anforderungen und Interessen ist im Einzelfall zwar möglich, findet bei einem Massenartikel aber meist einseitig zugunsten der einfachen Handhabung statt. Daher sind die Systeme in der Regel »großzügig« (nicht selten leider auch nachlässig) konfiguriert.
Neben der Integration verschiedener Schutzfunktionen wie z. B. Firewall hat sich die Entwicklung vor allem auf die Herkunftsprüfung und ‑kontrolle auszuführender Anwendungsprogramme konzentriert. Soweit nicht schon – wie insb. bei Mobilgeräten – der Installationsweg (Download) auf eine Bezugsquelle festgelegt ist, soll die Herkunft über Herstellersignaturen erkennbar sein, sodass der Benutzer unter sicheren oder zumindest vertrauenswürdigen Programmen wählen kann. Es ist klar, dass wir es hier mit einer idealisierten Situation zu tun haben, die zudem gewisse Einschränkungen mit sich bringt (und auch von kommerziellen Interessen berührt wird). Im praktischen Einsatz von Computersystemen kann es daher gute Gründe für die Verwendung von Software geben, deren Quelle nicht sozusagen offiziell abgesegnet ist.
Leider ist das Missverständnis weit verbreitet, Schutzfunktionen des Betriebssystems könnten die Ausführung schädlicher Programme verhindern. Tatsächlich dienen sie in erster Linie dazu, die Offenheit des Systems zu reduzieren bzw. – in Maßen – zu kontrollieren. Die bekannten Dialogfenster der Benutzerkontensteuerung (User Account Control, UAC) von Windows etwa haben nur den Zweck, dem »normalen« Anwender bedarfsweise höhere Rechte für administrative Aufgaben einzuräumen.
![Abb. Windows UAC-Dialog](mw2p/uac-dlg.png)
Im Übrigen enden die Fähigkeiten eines Betriebssystems (wie eines Schutzprogramms) da, wo es vor »kritischen« Vorgängen warnt. Es obliegt dem Benutzer, die Situation richtig zu beurteilen und über den weiteren Ablauf zu entscheiden.
Eine grundsätzliche Kenntnis des Computersystems und seiner Funktionsweise bietet daher den besten Schutzmechanismus. Das erfordert freilich einiges an Engagement und technischem Interesse. Im Unternehmenseinsatz sind ferner Informationen über die konkreten computergestützten Arbeitsabläufe notwendig. Nicht zufällig richten sich viele Malware-Mails an Firmen, um nach Möglichkeit bei einem Mitarbeiter zu landen, der mit den Details nicht vertraut oder einfach gestresst ist. 3
Achillesferse
Auch ohne Computerkenntnisse kann ein Benutzer ganz wesentlich zum Schutz des Systems beitragen, indem zumindest die kritischen Aspekte verstanden und berücksichtigt werden.
Tatsächlich stellt der Benutzer nämlich sozusagen die hauptsächliche Sicherheitslücke eines Computersystems dar. Obwohl durch die Beschreibung technischer Details leicht der Eindruck entstehen kann, dass Malware stets auf eine ganz raffinierte, undurchschaubare Weise in Computer eindringt, ist es in den meisten Fällen schlichtweg der Benutzer, der diesen Angreifer einlässt. Die bei weitem häufigste Ursache ist der Erhalt einer E-Mail mit einem Anhang. Auch der bloße Link zu einer Download-Adresse hat bereits funktioniert. Der Infektionsweg ist dabei im Grunde gleich: Der arglose Benutzer speichert eine Datei mit Programmcode, und indem er diese Datei öffnet, um ihren Inhalt zu sehen, bringt er den Programmcode zur Ausführung.
Im Mai und Juni 2017 sind Malware-Programme aufgetreten, die sich durch das Ausnutzen einer spezifischen Sicherheitslücke über vernetzte Windows-Systeme verbreiten konnten. Hiermit waren gleich eine ganze Reihe von Besonderheiten verbunden, nicht zuletzt die enormen Auswirkungen. 4 Jedenfalls ermöglichte es die Sicherheitslücke bereits befallenen Computern, andere Systeme zu infizieren. Bei der schließlich »NotPetya« genannten Malware erfolgte die initiale Ausführung sogar über automatische Software-Updates, die ein bestimmter – offenbar heimlich manipulierter – Server bereitstellte. Mit solcher völligen Unabhängigkeit von Benutzeraktionen ist dieser Fall jedoch eine Ausnahme. Ansonsten besteht zumindest der erste Schritt bei einem Malware-Befall in einem Programmaufruf, den der Benutzer veranlasst.
Erkennbarkeit von Malware-Mails
Wenn also Schadprogramme über Mail-Anhänge (oder über Internetadressen in den Mails) verbreitet werden, dann hilft es, solche E-Mails zu erkennen. Allerdings ist diese Aufgabe keineswegs stets so einfach, wie es die Betrachtung der massenweise versendeten, schlichten Spam-Mails vielleicht vermuten lässt. Gerade im Zusammenhang mit der vorbereiteten Verbreitung von Malware wird oft einiger Aufwand zur Täuschung der Mailempfänger betrieben. Und im Posteingang von Unternehmen, die eine hohe Zahl unterschiedlicher Mails erhalten, fallen gut gemachte Täuschungen nicht unbedingt auf.
In vielen Fällen macht es der Betreff einer Mail recht einfach, über Sinnhaftigkeit bzw. Erwünschtheit des Eingangs zu entscheiden. Aber auch das ist nicht immer so und fällt bei größerem Mailaufkommen zunehmend schwer. Dann lassen sich eingehende Mails meist auch nicht mehr einfach nach Absendern selektieren, während es insbesondere Privatpersonen noch leicht haben, Post von Unbekannten auszusortieren. In jedem Fall kann schon die Prüfung der Absenderangabe einen dubiosen Versendungszweck offenbaren.
![Abb. Spam-Mail](mw2p/spammail.png)
Bei dieser Spam-Mail ist nicht nur der Betreff ziemlich einfallslos, die Absenderadresse passt erkennbar nicht zum angegebenen Namen.
Umgekehrt ist eine echt wirkende Absenderadresse natürlich noch kein Beweis für die Echtheit oder Redlichkeit des Absenders. Zu beachten ist ferner, dass selbst eine authentische Mailadresse nicht auf den tatsächlichen Absender (und somit den Versendungszweck) hinweisen muss.
Es kommt sogar vor, dass Spam-Mails reale Daten, wie Namen und Adresse des Empfängers enthalten, um hierdurch Vertrauen zu erzeugen bzw. ein seriöses Anliegen vorzutäuschen. Das mag im ersten Moment verblüffen, findet seine Erklärung aber einfach darin, dass solche Daten im Internet mehr oder weniger leicht zugänglich sind und auch gezielt gesammelt und weitergegeben (verkauft) werden. 8
Achtung Anhang!
Eine E-Mail allein kann durchaus unerwünschten oder unlauteren Zwecken dienen, wirklich schädlich wird sie in aller Regel jedoch erst durch einen Anhang, der in irgendeiner Form ein Programm darstellt, das der Empfänger durch das »Öffnen« aufruft. Ich habe bereits im ersten Teil auf die Ambivalenz dieses Vorgangs hingewiesen. Vielen Computerbenutzern ist nicht klar, dass es dabei eben auch um den Start eines – unter Umständen unbekannten – Programms gehen kann.
Der Mailanhang repräsentiert sich durch eine oder mehrere Datei(en), daher ist die schlichte Kenntnis der Dateitypen, die ausführbare Programme darstellen, natürlich sehr hilfreich. Allerdings wird dies dadurch erschwert, dass es ziemlich viele solcher Dateitypen gibt, wobei der Umfang auch noch vom konkreten Computersystem abhängt. 5 Noch unüberschaubarer ist die Situation, wenn man umgekehrt »nur« solche Dateiformate betrachtet, die keine Programme sind. Zudem ist, wie bereits erklärt, in manchen Fällen keine strikte Trennung möglich, weil einige Dateien sowohl Daten als auch Programmcode enthalten. Dies betrifft gerade so beliebte Dateitypen wie etwa Word- oder PDF-Dokumente. Für diese kann die (automatische) Ausführung von eingebettetem Code durchaus unterbunden werden, jedoch sind die Systeme leider nicht immer schon in dieser Weise konfiguriert. 6 Nach Möglichkeit sollten Sie (wie schon an anderer Stelle erklärt) den PDF-Betrachter so einstellen, dass er kein JavaScript ausführt, bzw. gleich eine Anwendung wählen, die dies nicht unterstützt.
Selbst für die diversen Mediadateien darf keine absolute Entwarnung erfolgen, weil auch in diesem Zusammenhang bereits Sicherheitslücken offenbar wurden. Zwar ist deren Ausnutzung meist technisch ziemlich anspruchsvoll und daher nicht unbedingt zu erwarten. Es lässt sich aber auch nicht ausschließen, dass die Verbreitung von Malware einmal auf solchem Weg probiert wird.
Am häufigsten kommen jedoch weiterhin Programmdateien zum Einsatz, und zwar entweder Scripte oder direkt ausführbare Binärdateien.
Dateityp | Bedeutung, ausführende Komponente |
.exe | Programm, Betriebssystem (Shell) |
.com | DOS-kompatibles Programm, Betriebssystem (Shell) |
.scr | »Bildschirmschoner«-Programm, Betriebssystem (Shell) |
.cmd | Befehlsdatei (Stapelverarbeitung), Systemkonsole (Befehlszeileninterpreter) |
.bat | |
.ps1 | komplexe Befehlsdatei (Script), PowerShell |
.js + .jse | Script-Programm, Script Host (WSH) |
.vbs + .vbe | |
.wsf | |
.msi | Installations- bzw. Update-Datei, Microsoft Installer |
.msu | |
.htm(l) | HTML-Seite bzw. ‑Applikation, Internet Explorer 7 |
.hta | |
.inf | Textdatei mit Installationsanweisungen, Windows Setup bzw. Installer |
.pif | Programminformationsdatei, Betriebssystem (Shell) |
Tabelle ausführbarer Dateitypen – ohne Anspruch auf Vollständigkeit!
Die Auflistung dürfte in etwa die wichtigsten Programmdateien bei einem standardmäßig eingerichteten Windows wiedergeben.
Gerne wird durch entsprechende Benennung ein anderer Dateityp vorgetäuscht, z. B. rechnung-0815.pdf.exe. Wie schon erwähnt, blendet Windows unter Umständen die Typbezeichnung aus, so dass die Datei möglicherweise als rechnung-0815.pdf angezeigt wird. Der Programmierer kann zudem dafür sorgen, dass die Datei auch das typische Symbol (Icon) für eine PDF-Datei aufweist.
Um einer etwaigen Filterung zu entgehen, werden Programmdateien gerne in eine Archivdatei (meistens vom Typ ZIP oder CAB) gepackt. Der Mailanhang präsentiert sich dann beispielsweise als rechnung-0815.zip.
Bei der Betrachtung von Dateitypen ist ferner zu bedenken, dass das Potenzial nicht immer offensichtlich ist. Eine SCR-Datei suggeriert einen schlichten Bildschirmschoner, kann jedoch tatsächlich ein beliebiges Programm darstellen. Noch interessanter ist die PIF-Datei, eigentlich ein Relikt aus der Windows-Frühzeit. Obwohl bloß als eine Art Starthilfe-Info für DOS-Anwendungen konzipiert, wird eine Programmdatei mit dieser Typenbezeichnung unmittelbar ausgeführt. Mehr noch: Die Anzeige des Typs unterbleibt ganz unabhängig von der Explorer-Einstellung.
![Abb. Windows-Explorer mit PIF-Dateien](mw2p/exe_pif.png)
Dreimal dieselbe Programmdatei: Die Anzeige variiert mit der Benennung, eine PIF-Extension wird dabei stets weggelassen (Mitte und rechts).
Ohne profunde Computerkenntnisse sollten Untersuchungen verdächtiger Dateien unterbleiben, selbst wenn leistungsfähige und aktuelle AV-Software installiert ist. Das Risiko ist einfach zu groß. Löschen Sie die Mail oder konsultieren Sie einen Spezialisten.
Das sicherste Verhalten beim Empfang eines Mailanhangs besteht darin, die Echtheit der Mail und die Plausibilität des konkreten Mailanhangs zu prüfen. Wenn die E-Mail weder erwartet wurde (z. B. als Bestätigung einer Online-Bestellung) noch von einem bekannten Absender stammt, sollten Sie den Anhang auf keinen Fall öffnen!
Vor- und Nachsorge
Neben der Störung des Computerbetriebs zielt eine wesentliche Bedrohung durch Malware auf die Manipulation oder gar Löschung der Benutzerdaten. Auch in diesem Zusammenhang ist daher die Datensicherung die wohl allerwichtigste Vorkehrung gegen Datenverluste überhaupt.
Soweit durch Malware Benutzerdateien direkt betroffen sein können, wie es gerade bei den Erpressungstrojanern der Fall ist, sollte der Umfang an aktuell zugänglichen Dateiordnern bei normaler Computerbenutzung möglichst weit eingeschränkt werden, indem bspw. nicht benötigte externe Laufwerke »ausgehängt« (unmounted) oder einfach physisch entfernt werden. Entsprechendes gilt für alle über ein Netzwerk erreichbaren Laufwerke oder Ordner (z. B. Freigaben).
Natürlich ist eine Kopie der Benutzerdateien besser als nichts. Wenn allerdings nur eine einzige Kopie vorhanden ist, besteht die Gefahr, dass diese unbemerkt auch schon die schadhaften oder verschlüsselten Dateien enthält, weil die Sicherung nicht früh genug erfolgte oder weil die älteren »guten« Versionen beim wiederholten Kopiervorgang überschrieben wurden. Bei der Cloud-Speicherung könnte eine solche Verschlechterung auch durch die (automatische) Synchronisierung, also den Abgleich des Datenbestandes erfolgen.
Es ist etwas schwierig, detailierte Ratschläge für den (vermeintlichen) Ernstfall zu geben. Einerseits hat nicht jedes »seltsame« Systemverhalten die Ursache in einer Malware-Infektion. Andererseits kann es bei einer tatsächlichen Infektion von entscheidender Bedeutung sein, den Systembetrieb sofort zu beenden. Wenn Sie also deutliche Hinweise auf installierte oder sogar akut laufende Malware erhalten, sollten Sie das Gerät ausschalten und vollständig von der Stromversorgung sowie etwaigen Netzwerkverbindungen trennen. Ziehen Sie für die weiteren Schritte dann einen Computerspezialisten zurate.
Anmerkungen:
1) Der Aspekt, dass solche Software bisweilen leider auch selbst Probleme bereiten und Sicherheitslücken aufweisen kann, sei hier nicht weiter behandelt.
2) Allerdings stellt sich hier die Frage, ob solche Steuerungsmöglichkeiten wirklich auf jedem System aktiv verfügbar sein müssen.
3) Neben einer angemessenen Information der Firmenmitarbeiter ist in diesem Kontext auch an eine Filterung von potenziell gefährlichen Mails bzw. Mailanhängen zu denken. So wäre es durchaus vermeidbar, dass – wie bei jüngsten Ransomware-Auftritten geschehen – angefügte Programmdateien oder Word-Makros beim Empfänger ausgeführt werden.
4) Wie bekannt wurde, wusste der US-amerikanische Geheimdienst NSA bereits seit Jahren um die Windows-Sicherheitslücke sowie die praktische Möglichkeit (Exploit), diese auszunutzen, informierte den Hersteller Microsoft darüber jedoch erst, nachdem diese Informationen gestohlen worden waren. Aufgrund des hohen Sicherheitsrisikos sah sich Microsoft veranlasst, ein Sicherheitsupdate dann auch für ältere, gleichwohl noch verbreitete Windows-Versionen herauszugeben. Die Auswirkungen dieser Ransomware (genannt »WannaCry«), zum Beispiel die Erpresserbotschaft auf Anzeigebildschirmen der Deutschen Bahn, erzeugten ein großes Medienecho.
5) Etwa im Hinblick auf installierte Script-Hosts, zusätzliche Shells oder Anwendungen, die Programmbefehle/Makros ausführen können.
6) Zudem weisen die betreffenden Anwendungen auch immer wieder Sicherheitslücken auf, die bei älteren Versionen nicht mehr durch Updates behoben werden.
Damit die Deaktivierung von eingebettetem Code (»Makros«) eine Schutzwirkung entfalten kann, muss der Anwender diesen Mechanismus auch verstehen. Malware-Verbreiter versuchen oft, den Empfänger des Mail-Anhangs (z.B. einem Word-Dokument) im Nachrichtentext von der Plausibilität oder Notwendigkeit der Makro-Ausführung zu überzeugen, sodass dieser ausnahmsweise zustimmt.
7) Die vermeintlich schlichten »Webseiten« finden sich deshalb in dieser Tabelle, weil die Einbettung von Programmcode sehr leicht möglich ist. Während HTML-Dateien dabei noch den Sicherheitsbeschränkungen des Web-Browsers unterliegen, werden HTA-Dateien mit weitergehenden Privilegien ausgeführt (cf.: https://en.wikipedia.org/wiki/HTML_Application).
Genau genommen wären an dieser Stelle auch CHM-Dateien (Compiled HTML Help) aufzuführen, die als Dokumentformat – insb. für Hilfedateien – eingesetzt werden, weil sie ebenfalls Scriptcode enthalten können. Hier zeigt sich somit auch der fließende Übergang zu anderen komplexen Dokumentdateien mit ähnlichen Möglichkeiten.
8) Nachtrag 11/2019: Außerdem besteht die Möglichkeit, dass solche Kontaktdaten von bereits befallenen Systemen stammen! Malware kann durchaus in der Lage sein, auf einem infizierten System E-Mails und Adressen auszuwerten. In 2019 wurden sogar Fälle beobachtet, bei denen Malware (»Emotet«) zu den vorgefundenen Kommunikationsdaten passende Mails generierte. Deren Empfänger erhielten dann scheinbar Nachrichten authentischer Kontakte, die auch als vermeintliche Fortsetzungen echter Korrespondenzen wirken konnten. (Hierzu siehe z.B. Heise-Artikel vom 12.04.2019.)