von Severin Wischmann

Dies ist der erste Teil einer mehrteiligen Reihe über Malware und wie sie untersucht werden kann.

Im folgenden Artikel wird auf die Grundlagen von Malware eingegangen. In weiteren Artikeln dieser Reihe werden dann verschiedene Facetten der Analyse beleuchtet.

Malware ist mittlerweile ein gängiges Wort, das von Otto Normalverbrauchern verstanden wird. Ob in den Medien, durch Mitmenschen oder weil die eigene Anti-Virus-Software einen Alarm auslöst: Der Begriff wird regelmässig wieder ins Bewusstsein gerufen. Passiert dies im Geschäftsumfeld, ist die Situation sofort kritischer. Malware verursacht schnell hohe Kosten, die durch Schäden, zusätzlich zu leistende Arbeitsstunden oder Strafen entstehen können. Dabei kommt es auf die Art der Malware an, welche Schäden zu befürchten sind und auch, auf welche Art die Malware wieder aus dem eigenen Netzwerk entfernt werden kann. Wird der Malware-Alarm von der verwendeten «Endpoint Protection»-Lösung ausgelöst, steht darin meist gleich eine Klassifizierung. Damit kann man grösstenteils sicher sein, dass die Malware auf allen Geräten, auf denen diese Anti-Viren-Software installiert ist, entfernt wird. Da Anti-Viren-Programme jedoch weiterhin vor allem bereits bekannte Malware erkennen, muss im Falle einer unbekannten, gefundenen Malware eine Analyse der Funktionalität durchgeführt werden, um das Ausmass des Schadens abschätzen zu können.

Definition

Malware steht für «Malicious Software» (auf Deutsch: Schadsoftware) und ist ein reguläres Computer-Programm, das jedoch entwickelt wurde, um Schaden anzurichten. Dies ist eine klare Trennung zu fehlerhafter Software, die auch Schaden anrichten kann, aber nicht dafür entwickelt wurde. Beispielsweise war das Steuerungsprogramm der Ariane 5, das zur Explosion der Rakete und zum Tod der Astronauten führte [1], keine Malware, sondern fehlerhafte Software.

Wie für alle Programme gilt, dass die Malware zur Laufzeit in einer Form zu einem Prozess gehört und im Arbeitsspeicher vorzufinden ist und dass sie einen Neustart des Systems nur überlebt, wenn sie zuvor – zumindest in einer Minimalform – in persistentem Speicher abgelegt ist. Somit kann, zumindest in der Theorie, mit Malware interagiert werden wie mit anderen Programmen auch.

Malware als Werkzeug

Schaut man sich die «Intrusion Kill Chain» [2] von Lockheed Martin oder die «Unified Kill Chain» [3] an, wird schnell klar, wozu Malware verwendet wird: Sie ist ein Mittel, um das eigentliche Ziel zu erreichen. Eine Malware auf einem Computer in der Zielfirma auszuführen ist somit nur Teil eines ganzen Angriffs, der theoretisch beliebig oft wiederholt werden kann, bis die Verteidigung überlistet wurde.

Falls eine Schadsoftware erfolgreich auf einem Zielsystem ausgeführt wurde, können darüber weitere Aktionen durchgeführt werden. Ob dies die Exfiltration von Daten, die Nutzung der dazugewonnenen Rechenleistung oder Erpressung ist, hängt ganz von der Art der Malware ab. Wird eine Malware zu irgendeinem Zeitpunkt im Netzwerk gefunden, kann somit nicht unbedingt bestimmt werden, was denn das Ziel des Angriffs war. Schliesslich kann eine Ransomware auch zur Verschleierung von Spuren genutzt werden, da in vielen Fällen bei einer solchen Infektion einfach die Daten vom Backup wiederhergestellt werden.

Arten von Malware

Um sich über ein Thema unterhalten zu können, ist oft eine Kategorisierung der Materie sinnvoll. Bei Malware werden oft Äpfel und Birnen in einen Topf geworfen, indem die Gruppierungen der Verbreitungsart mit den Gruppierungen der Fähigkeiten vermischt werden.

Kategorisierung nach Verbreitungsart

Wird Malware nach Verbreitungsart kategorisiert, werden drei Begriffe verwendet: Virus, Trojaner und Wurm.

Ein Virus infiziert ein anderes Programm, so dass dieses Programm fortan auch den Code des Schädlings enthält. Solange das infizierte Programm ausgeführt wird oder, falls eine ausführbare Datei oder ein Skript befallen wurde, die Datei geöffnet wird, wird der Virus weiter ausgeführt und kann sich eine neue passende Zieldatei oder eine neue Instanz des laufenden Zielprograms suchen, um die Infektion fortzusetzen. Wird beispielsweise eine Office-Datei wie eine Excel-Tabelle zur Budgetverwaltung mit einem nicht signierten Makro auf einem zentralen Netzlaufwerk vorgefunden, könnte das Makro mit dem böswilligen Code des Viruses erweitert worden sein. Der nächste Mitarbeiter, der diese Datei öffnet, wird allfällige Warnhinweise ignorieren, da das Dokument ja aus einer vertrauten Quelle kommt.

Ein Wurm ist eine sich selbst verbreitende Schadsoftware, die, im Gegensatz zum Virus, kein zusätzliches Trägerprogramm und keine zusätzliche Trägerdatei für die Weiterverbreitung benötigt. Erlangt ein Wurm beispielsweise administrative Rechte auf einem zweiten System, kann er sich auf die Festplatte dieses Systems kopieren und dort starten.

Ein Trojaner ist – abgeleitet von der Sage der Griechen, die sich in ihrem als Geschenk präsentierten, hölzernen Pferd versteckten, um in die Stadt Troja einzudringen – eine Schadsoftware, die sich als legitimes Programm tarnt. So soll ein allfälliges Opfer dazu gebracht werden, der legitim aussehenden Hülle zu vertrauen und das darin verborgene Schadprogramm auszuführen. Im Gegensatz zu den anderen beiden hier vorgestellten Kategorien wird sich ein Trojaner nicht selbst weiterverbreiten.

Kategorisierung nach Fähigkeiten

Wird Malware nach ihren Fähigkeiten kategorisiert, dann wird die Liste der möglichen Gruppen erheblich länger.

Begriffe wie Ransomware, Crypto-Miner und Keylogger sind immer wieder in den Medien zu finden. Ein «Remote Access Trojan» (RAT) oder eine «Backdoor» bietet der kontrollierenden Person Zugriff auf den infizierten Computer und alle angeschlossenen Ressourcen. Ein «Stager» hat meistens lediglich die Fähigkeit zu prüfen, ob es sicher ist, weitere Malware nachzuladen, und dies dann auch zu tun. Ein «Bootkit» oder «Rootkit» wird sich tief im System verstecken – ersteres im BIOS oder im «Bootloader» des Computers, letzteres im Betriebssystem selbst –, so dass es möglichst nicht entdeckt und nicht einfach entfernt werden kann. Dies ist bei weitem keine abschliessende Liste, denn schon nur leichte Abwandlungen vom hier beschriebenen Verhalten führen zur Schaffung von neuen Namen.

Kategorisierung von realer Malware

Die eben beschriebenen Kategorisierungen lassen sich leider nicht so einfach auf reale Angriffe anwenden.

Der Einsatz von Stagern war vor mehr als zehn Jahren nur bei Malware anzutreffen, die von «Advanced Persistent Threats» (APT) eingesetzt wurde, ist jedoch heute in bei fast jeder Kampagne eingesetzt. So wird beispielsweise ein legitim aussehendes Word-Dokument mit Makros an ein potentielles Opfer gesendet, das beim Öffnen die eigentliche Malware nachlädt: Dies kann ein Trojaner sein, der als Stager agiert und beispielsweise eine Ransomware nachlädt. Eine solche Ransomware kann sich potentiell selbst weiterverbreiten. «WannaCry» [4] war eine solche Ransomware, die sich Virus-artig über die Schwachstelle MS17-010 (EternalBlue) [5] weiterverbreiten konnte oder aber, falls die Malware administrative Zugangsdaten ergaunert hatte, Wurm-artig mit dem administrativen Programm «psexec» [6].

Somit muss mit einfachen Kategorisierungen vorsichtig umgegangen werden. Eine differenzierte Betrachtung erlaubt, genauer zu definieren, welchen potentiellen Schaden eine Malware im Unternehmen anrichten kann.

Trägerformate

Wie eingangs beschrieben, ist Malware auch einfach ein Programm. Jedoch werden je nach Malware-Art andere Mechanismen verwendet, um ein Opfer zu infizieren. Früher wurde oft versucht, reguläre ausführbare Dateien, wie .EXE oder .SCR – eine Endung für Bildschirmschoner, die jedoch in Windows einfach Programme sind wie .EXE auch – an die Opfer zu senden. Heute sind Angreifer dazu übergegangen ihre Schadsoftware in zum Teil verschlüsselte Dateiarchive zu verpacken, beispielsweise .ZIP-Dateien, um sie an Filtern vorbeizuschmuggeln. Dabei vertrauen Angreifer oft darauf, dass eine kluge Benennung der Datei das potentielle Opfer überlistet. Dateinamen wie «Mahnung_190221.pdf.exe» sollen den Benutzer dazu bringen, die angebliche Rechnung zu öffnen, weil er wahrscheinlich die Dateiendung .EXE nicht sieht, da diese standardmässig von Windows versteckt wird.

Da Windows diverse Skriptsprachen nativ unterstützt, haben Angreifer begonnen, ihre Malware in JavaScript und VBScript zu schreiben. In diesen beiden Skriptsprachen geschriebene Programme werden über die Dateiendung .JS und .VBS identifiziert und sind auch in Windows ausführbar. Klickt ein Benutzer auf eine solche Datei, wird wie bei einer .EXE-Datei das Programm direkt auf dem Computer ausgeführt.

Solche direkten Angriffe werden mittlerweile von Windows gut abgefangen, da Programmdateien aus dem Internet vom Betriebssystem als heruntergeladen markiert werden. Versucht ein Benutzer eine solche Datei auszuführen, wird vom Betriebssystem zumindest nachgefragt, ob man dieser Datei denn wirklich vertraue. Deshalb setzen Angreifer vermehrt darauf, Skriptumgebungen in anderen Programmen zu missbrauchen.

Alle Office-Programme unterstützen Makros, die dazu gedacht sind, regelmässige Aufgaben zu automatisieren. Diese können von einem Angreifer jedoch auch zum Ausführen von böswilligen Aktionen benutzt werden. Somit kann eine Word-, Excel- oder PowerPoint-Datei auch Schadcode enthalten. Gleiches gilt für PDFs: Der Adobe Acrobat Reader unterstützt JavaScript in PDFs und kann somit zur Ausführung von Schadcode oder für ausgeklügelte Phishing-Angriffen missbraucht werden.

Diese Auflistung ist nicht abschliessend, da im Prinzip jede Datei einen Fehler im dazugehörigen Programm ausnützen könnte. So kann ein Virus beispielsweise Microsoft Paint infizieren, wenn darin ein passender Programmfehler gefunden wird und der Benutzer damit ein Bild mit Schadcode öffnet.

Wegen all dieser Möglichkeiten Malware auf einem System auszuführen und zu tarnen, raten Sicherheitsexperten davon ab, Dateien und Links zu öffnen, die aus einer nicht vertrauenswürdigen Quelle stammen.

Threat Actors

Nachdem die verschiedenen Malware-Arten, mögliche Infektionswege und der Anwendungszweck von Malware erörtert wurde, sind die Personengruppen hinter der Schadsoftware noch unbekannt.

Malware wird immer mehr zu einem Gebrauchsgut: etwas, das man bei Bedarf kauft und in der Regel nicht mehr selbst entwickelt. Es existiert eine Nachfrage nach Malware, die von einem entsprechenden Angebot befriedigt wird [7]. So wird die Malware, die in regulären Phishing-Kampagnen verteilt wird, in Umlauf gebracht: Eine Gruppe von kompetenten Leuten schreibt die entsprechende Malware und bietet sie feil. Personen, die denken, über solche Malware einen Gewinn zu erzielen – sei dieser finanziell, beispielsweise durch eine Ransomware, oder psychologisch, wenn beispielsweise Hacktivisten eine Organisation hacken – kaufen sie und senden sie und an ihre ausgewählten Ziele. Dies deckt den grössten Teil der Malware ab, die im Umlauf ist und wenige Stunden nach der ersten Infektion von den «Endpoint Protection»-Programmen erkannt wird, da sie oft in Massen verteilt wird. Sie wird meist von Einzeltätern oder kleineren Gruppen verwendet, die nicht über das entsprechende Wissen verfügen und oft nur den angestrebten Gewinn bei möglichst wenig Aufwand maximieren möchten.

Der kleinste Teil der Malware im Umlauf wird im Rahmen eines APT-Angriffs spezifisch für ein Ziel entwickelt oder zumindest daran angepasst. Da diese Malware nicht auf vielen Computern ausgeführt wird, ist die Chance, dass eine «Endpoint Protection»-Lösung sie erkennt, entsprechend geringer. Zudem setzen Angreifer hier öfter das «Living off the Land»-Paradigma ein: Dies beschreibt die Verwendung von bereits vorhandenen oder zumindest von vertrauten Anbietern signierten Programmen, um darüber Schadsoftware auszuführen. Beispiele hierfür sind die Verwendung von «powershell.exe», «rundll32.exe» oder das schon erwähnte «psexec.exe». Diese drei Programme werden mittlerweile auch von regulärer Malware verwendet; inzwischen sind viele weitere Programme identifiziert worden, die für solche Zwecke verwendet werden können [8]. Da die Identifizierung von solch geeigneten Programmen, die Entwicklung von dazu passenden Werkzeugen und die Erforschung guter Verschleierungsmethoden viel Zeit und somit Geld kostet, sind diese Angriffe meist von Geheimdiensten initiiert oder gesponsert. Die möglichen Ziele für solche Angriffe gehören entsprechend einem kleinen Kreis an.

Die dritte Kategorie von Angreifern ist potentiell die eigene Konkurrenz [9]. Da die «Time to Market» und der Kostendruck immer grösser werden, lohnt es sich schnell, wertvolle Daten bei einem Marktbegleiter zu holen. Dies kann auf legale Art geschehen, indem beispielsweise ein wichtiger Mitarbeiter abgeworben wird – jedoch auch über illegale Methoden wie eine Infektion mit Malware. Vor allem, wenn viel Geld zu gewinnen ist, können grössere Summen in einen solchen Angriff investiert werden, so dass diese relativ gefährlich sind.

Zusammenfassung

In diesem Artikel wurde auf die die Grundbegriffe von Malware eingegangen. Beim Austausch über Malware sollte immer das passende Vokabular verwendet werden, sodass keine Missverständnisse entstehen. Dies hilft bei der Wiederherstellung des «Business as usual», da die möglichen Auswirkungen eines Malware-Befalls in wenigen Worten beschrieben werden können.

Beim Erstellen eines firmeninternen Threat Models hilft das Betrachten der Threat Actors. Je nach Gruppe, vor der man sich schützen möchte, muss eine andere Verteidigungsstrategie gewählt werden. Ist man lediglich an gewöhnlichen Angreifern interessiert, die ihre Malware grösstenteils einkaufen, reicht es, die grundlegenden Massnahmen umzusetzen, wie sie beispielsweise in diesem Advisory von Oneconsult vorgestellt werden: https://www.oneconsult.com/de/fight-common-threats/

Ist man jedoch ein potentielles Ziel einer APT-Gruppe, dann muss ein viel höheres Schutzniveau anvisiert werden.

Die vorgestellten Trägerformate sollen aufzeigen, wie Malware in ihrer Zielumgebung ausgeführt wird. Dies kann dabei helfen, E-Mail- und Proxy-Filter einzustellen und soll beim Training von Mitarbeitern in Betracht gezogen werden.

Im nächsten Artikel dieser Reihe werden die Grundlagen der statischen und dynamischen Analyse von Malware vorgestellt und wie diese Techniken im Unternehmen genutzt werden können.

Über den Autor

Severin Wischmann studierte Informatik an der ETH Zürich und verbrachte ein Austauschsemester an der Lund University in Schweden. Während seines Masters spezialisierte er sich auf IT-Sicherheit und schrieb seine Masterarbeit zum Thema Hardware Security. Severin Wischmann hat als wissenschaftlicher Mitarbeiter an der ETH Programmiervorlesungen mitbetreut und als Software Engineer bei einem E-Commerce Unternehmen im Bereich Web Application Development gearbeitet. Seit Oktober 2014 ist er bei der Oneconsult als Penetration Tester und IT-Forensik Spezialist tätig, seit April 2017 als Senior Penetration Tester. Severin Wischmann ist Offensive Security Certified Professional (OSCP), GIAC Exploit Researcher and Advanced Penetration Tester (GXPN), verfügt über das GIAC Reverse Engineering Malware (GREM) Zertifikat, ist zertifizierter OSSTMM Professional Security Tester (OPST) und OSSTMM Professional Security Analyst (OPSA).

Über Oneconsult

Die Oneconsult-Unternehmensgruppe ist seit 2003 Ihr renommierter Schweizer Cyber Security Services Partner mit Büros in der Schweiz und Deutschland und 1600+ weltweit durchgeführten Security-Projekten.

Erhalten Sie kompetente Beratung vom inhabergeführten und herstellerunabhängigen Cyber Security-Spezialisten mit 40+ hochqualifizierten Cyber Security Experten, darunter zertifizierte Ethical Hacker / Penetration Tester (OPST, OPSA, OSCP, OSCE, GXPN), IT-Forensiker (GCFA, GCFE, GREM), ISO Security Auditoren (ISO 27001 Lead Auditor, ISO 27005 Risk Manager, ISO 27035 Incident Manager) und dedizierte IT Security Researcher, um auch Ihre anspruchsvollsten Herausforderungen im Informationssicherheitsbereich zu bewältigen. Gemeinsam gehen wir Ihre externen und internen Bedrohungen wie Malware-Infektionen, Hacker-Attacken und APT sowie digitalen Betrug und Datenverlust mit Kerndienstleistungen wie Penetration Tests / Ethical Hacking, APT Tests unter Realbedingungen und ISO 27001 Security Audits an. Bei Notfällen können Sie rund um die Uhr (24 h x 365 Tage) auf die Unterstützung des Incident Response & IT Forensics Expertenteams von Oneconsult zählen.

www.oneconsult.com