Foto: wk1003mike – shutterstock.com
Der Begriff „Payload“ hat seinen Ursprung im Transportwesen. Dort beschreibt „Nutzlast“ die Menge an Fracht, die ein Transportmittel aufnehmen kann, bis die maximal zulässige Gesamtmasse erreicht ist. Später wurde der Begriff auch für die Telekommunikation übernommen, um den Teil der übertragenen Daten zu benennen, der die eigentlich zu übermittelnde Nachricht darstellt. Also die Nutzerdaten eines Datenpakets ohne Steuer- oder Protokollinformationen.
Was bedeutet Payload im Security-Umfeld?
Analog dazu beschreibt Payload, im Zusammenhang mit Cyberattacken als „böswillige Nutzlast“, die Softwarekomponente des Angriffs, die den tatsächlichen Schaden verursacht. Stellen Sie sich hier zu ein Trojanisches Pferd vor: Das Holztier ist erst einmal nur das Transportmittel und wird deshalb in die Stadt eingelassen. Die akute Bedrohung geht von den Soldaten aus, die sich im Inneren verstecken und einen günstigen Moment abwarten, um zuzuschlagen. Payloads gibt es dabei in unterschiedlichen Formen und Ausprägungen, die auf verschiedene Systeme und Datenbanken abzielen – Stichwort SQL-Injection.
Welche Arten von Payloads gibt es?
Angriffsvektoren wie Malware, aber auch E-Mail-Anhänge, infizierte Speichermedien oder Links können böswillige Payload enthalten. Wie genau der Schaden aussieht, hängt dabei von der Art der Malware ab, ob es sich also zum Beispiel um Viren, Würmer, Ransomware, Spyware, Trojaner oder eine andere Variante handelt. Zu den Schäden, die durch entsprechende Angriffe entstehen, gehören unter anderem
-
Datendiebstähle,
-
die Überwachung zur Industriespionage,
-
das Starten nicht autorisierter Hintergrundprozesse,
-
die Manipulation von Daten und
-
das Sperren oder beschädigen von Systemen oder ganzen IT-Infrastrukturen.
Lesetipp: Cyberangriffe in Deutschland – Diese Unternehmen hat’s schon erwischt
Besonders tückisch ist, dass Angreifer versuchen, die maliziösen Payloads zu verstecken oder zu tarnen, um eine Detektion zu verhindern. Das gilt für Netzwerk-Angriffe genauso wie für Malware. So infiltriert Malware möglicherweise weitere Unternehmenssysteme, sammelt Daten oder ändert Sicherheitskonfigurationen, bevor der eigentliche Schaden ausgeführt wird. Um eine Erkennung durch Antivirus-Systeme zu vermeiden, ist heutige Schadsoftware „obfuscated“ und polymorph.
Das Vorgehen der Angreifer beim Einschleusen von Payloads ist häufig recht simpel. Beliebt sind beispielsweise Social-Engineering-Angriffe per E-Mail. Hier kann die Payload oder Malware in einem als Text markierten Bereich einer Nachricht oder im Anhang versteckt werden.
Wichtig ist jedoch bei jeder Form von Payload, dass es immer eine Person braucht oder ein IT-System mit einem Trigger, um die maliziösen Anweisungen ausführen.
So wie die Soldaten erst aus dem Trojanischen Pferd springen, wenn sie sich in der Stadt befinden, werden der Malware-Download und die Installation erst durch das Klicken auf den E-Mail-Anhang aktiviert. Der Trigger ist hier, den Nutzer dazu zu bewegen, die Datei auszuführen. Und wie bereits erwähnt: Die Ausführung der Payload muss nicht gleich erkennbar schadhaft sein. Raffiniert sind hier sogenannte Logikbomben, die man auch als schlummernde Malware bezeichnet. Die Logikbombe wird erst „gezündet“, wenn bestimmte Bedingungen zur Ausführung der Schadsoftware erfüllt sind. Das können beispielsweise das Erreichen eines Datums oder das Ausführen durch einen bestimmten User sein.
SQL-Injections: Angriffe auf Datenbanken
Eine weitere beliebte Methode zum Einschleusen von Payloads sind sogenannte SQL-Injections, bei denen SQL-Datenbanken wie Microsoft SQL Server, Db2 oder MySQL angegriffen werden. Bei diesen Attacken nutzen die Angreifer Sicherheitslücken und Programmierfehler im Quellcode der Software aus, die auf die Datenbank zugreift. Dort binden die Hacker eigene Befehle oder Schadcode in Programme ein, um Daten auszuspähen, zu verändern oder ganz zu löschen. Dies kann zum Beispiel durch eine Eingabemaske auf der Website eines Webshops oder in einem Artikelarchiv einer Online-Publikation erfolgen.
Im Falle der SQL-Injection liegt der Programmierfehler darin, dass das Anwendungsprogramm die Eingabedaten nicht als reine Daten an die Datenbank weiterreicht, sondern diese Eingaben als Datenbankbefehle interpretiert. So können Angreifer gezielt Abfragen oder Änderungen in der Datenbank vornehmen. Ein einfaches Beispiel: Die Eingabe von „Drop Database“ könnte so dazu führen, dass die Datenbank komplett gelöscht wird. Raffiniert ist bei diesem Vorgehen, dass die Angreifer sich valider Datenbank-Befehle bedienen können, um ihre Aktionen durchzuführen.
Um zu verhindern, dass der Payload ausgeführt wird, gibt es verschiedene Möglichkeiten: Eine Option wäre, dass die Datenbank bestimmte Befehle, wie „Drop Database“, nicht mehr annimmt. Dann hätten die Angreifer jedoch noch immer die Möglichkeit, mit alternativen Befehlen wie „Drop Table“ vorzugehen. Besser ist eine generelle Sanitization des Inputs. Das heißt, dass der Input so enkodiert wird, dass der Datenbankserver diesen nicht als Befehl ausführt, sondern immer als Text interpretiert. Dies wird jedoch insbesondere bei einfachen Webapplikationen häufig vergessen.
Wie kann man Payloads erkennen?
Das Ziel eines jeden Security-Tools ist es, Payloads zu erkennen. Je nach Angriffsvektor braucht es dafür jedoch unterschiedliche Sicherheitslösungen:
-
Virenscanner suchen nach Payloads in Dateien,
-
Intrusion-Detection-Systeme (IDS) suchen auf Netzwerkebene nach bekannten Schadmustern
-
und Endpoint Detection and Response Lösungen (EDR) analysieren Geräte und deren Programmverhalten.
Lesetipp: Die besten DAST- & SAST-Tools
Die große Schwierigkeit besteht darin, dass Payloads regelrechte Gestaltwandler sind und ähnlich wie Viren ihr Erscheinungsbild verändern. Man spricht in diesem Zusammenhang von Polymorphie. Obwohl die Payloads auf der Instruktionsebene noch dasselbe tun, sehen sie immer wieder anders aus. Das hat vor allem praktische Gründe für die Angreifer: Die Aktionen werden mit kleinen Abweichungen lediglich unterschiedlich enkodiert, und der entwickelte Schadcode kann so mit geringem Aufwand so oft wie möglich wiederverwendet werden.
So könnten Angreifer ihre Ransomware beispielsweise erst in einer E-Mail verstecken, die aussieht, als käme sie von einem Online-Händler, dann von der Post und schließlich vom Telekommunikationsanbieter. Die Instruktionen bleiben jedoch gleich. Gut umgesetzte Malware verändert sich zum Beispiel bei jedem Reproduktionsschritt selbst ein kleines bisschen, so dass eine einfache Wiedererkennung von bekannt schadhaften Dateien oder Prozessen erschwert wird. Ferner ist heutige Malware grundsätzlich „obfuscated“. Das bedeutet, dass die schadhaften Aktionen in der Malware so getarnt werden, dass sie zum Beispiel nicht einfach von Antivirus-Software durch Programm-Analyse erkannt werden können und bei der Prüfung harmlos aussehen.
Hilfe können sich die Angreifer dabei im Darkweb holen. Dort bieten Cyberkriminelle gegen Bezahlung sogenannte „Obfuscation Services“ an, bei denen sie die Payload derart verändern, dass Security-Tools sie nicht mehr erkennen. Doch auch im Clearweb gibt es Angebote zur Veränderung und „Verschleierung“ von Payload. Sogenannte Shellcode-Generatoren sind zum Beispiel frei auf Github verfügbar. Diese Tools verändern die Payload auf der Ebene des Maschinencodes und erschweren so deren Erkennung.
Dieses Vorgehen geht immer so lange gut, bis Detection-Tools diese neuen Muster erkannt haben und Alarm schlagen. Es gibt also ein „Hase-und-Igel“-Spiel zwischen den Angreifern und den Entwicklern von Security-Tools.
Weil die Beobachtung von bestimmten Mustern und Codesequenzen nicht ausreicht, werten viele Tools auch das Nutzerverhalten aus und suchen nach verdächtigem Verhalten im ein- und ausgehenden Datenverkehr von Netzwerken. Bei Aktivitäten wie dem Herunterladen großer Datenmengen oder dem Löschen ganzer Datenbanken blocken entsprechende Tools die Aktion sofort. Bei anderen Ereignissen schlagen sie lediglich Alarm. Dann kann ein Security-Analyst überprüfen, ob es sich zum Beispiel bei der ungewöhnlichen Anzahl oder Reihenfolge an API-Calls um eine maliziöse Cloud-Aktivität handelt.
Payload erkannt – was nun?
Schlägt eine Detection-Software Alarm, gilt es herauszufinden, ob und wenn ja um welche Payload es sich handelt beziehungsweise was die Payload macht. Das ist nicht immer sofort ersichtlich, denn Payloads sind häufig sehr kompliziert geschrieben, verwenden Kombinationen aus Pufferüberläufen, Instruktionen und nutzen Verwundbarkeiten aus, die sich tief in den Systemen verbergen. Allerdings kann Payload nicht nur durch technische Vulnerabilities ausgenutzt werden, sondern auch durch Menschen/User getriggert werden, also zum Beispiel durch eine Phishing-Mail mit den Instruktionen für den User: „Öffne den Anhang oder klicke auf den Link“.
Security-Analysten können technische Payloads in einer sicheren Umgebung (Sandbox) analysieren. Diese führt die Payload (Malware, Office-Dokument, PDF etc.) aus und analysiert und protokolliert alle ausgeführten Aktionen. Dadurch kann ein Security-Analyst erkennen, was der Payload tatsächlich bewirkt und damit zum Beispiel die „Ziele“ der Malware identifizieren und ermitteln wie man sie erkennen oder stoppen kann. Dabei ist Expertise und teilweise auch Geduld gefragt. Denn viele Payloads starten, wie bereits beschrieben, ihre Aktivitäten nicht sofort, um den logischen Zusammenhang zwischen den Ereignissen (Angriff und Folgen) zu verschleiern.
Wenn die Heuristiken der Security-Tools weniger geschärft sind und es zu vielen „False Positives“ kommt, bedeutet das zudem eine Flut von Alerts sowie viel Arbeit für Security-Teams. Externe Security-Operations-Partner können hier mit ihrer Expertise und zusätzlichen Ressourcen bei der Erkennung und – im Angriffsfall – bei der Planung und Durchführung von Gegenmaßnahmen unterstützen.
Wie können Unternehmen sich vor Payloads schützen?
Neben der Nutzung einer Kombination unterschiedlicher Security-Tools zur Erkennung von Payloads sollten Unternehmen folgende Tipps beachten, um das Risiko Opfer eines Angriffs zu werden, deutlich zu minimieren:
Regelmäßiges Patchen und Aktualisieren der Software: Wenn Angreifer Payloads einsetzen, dann, weil sie davon ausgehen, dass es eine Verwundbarkeit vorhanden ist. Daher ist es oberstes Gebot, Software, Betriebssysteme und Netzwerkkomponenten immer sofort zu patchen, wenn eine neue Schwachstelle bekannt wird. Angreifer können dann zwar noch immer eine Payload schicken, diese wird jedoch nicht mehr ausgeführt. Patching ist häufig ein operatives Problem in Unternehmen. Das liegt daran, dass es einerseits zu Downtime der Systeme und damit möglicherweise zu Produktivitätsverlusten führt und andererseits, weil die meisten Unternehmen mit riesigen Softwarekonglomeraten arbeiten. Dabei kann es passieren, dass Version 2 von Anwendung A nach dem Patchen nicht mehr mit Version 1 von Anwendung B funktioniert. Dennoch sollte Patching allerhöchste Priorität haben, um die Angriffsfläche für Attacken effektiv zu verkleinern.
Konfigurationen anpassen: Alle Systeme und Software verfügen über bestimmte Standardeinstellungen. Doch diese sind nicht unbedingt die besten und sichersten Einstellungen für das eigene Unternehmen. Sie sollten überprüft und wenn nötig an die speziellen Sicherheitsanforderungen angepasst werden.
Regelmäßige Backups erstellen: Regelmäßige Datensicherungen sind für jede IT-Sicherheitsstrategie unerlässlich. Im Falle eines Angriffs mit Payload, zum Beispiel Ransomware, kann ein Unternehmen seine Daten dann aus den Backups wiederherstellen und den Schaden minimieren.
Security Awareness schaffen: Mitarbeitende sind oft das schwächste Glied in der IT-Sicherheit. Sie können unwissentlich E-Mail-Anhänge öffnen oder auf Links klicken, die Payloads enthalten. Unternehmen sollten daher ihre Mitarbeitenden regelmäßig darin schulen, wie sie Payloads erkennen oder zur Überprüfung melden.
Lesetipp: Security Awareness in der Praxis – So begeistern Sie für IT-Sicherheit
Payloads stellen eine erhebliche Bedrohung für die IT-Sicherheit dar. Sie können finanziellen Schaden verursachen, Systeme und Netzwerke empfindlich stören und sensible Daten stehlen. Unternehmen schützen sich am besten, indem sie Software mit Updates und Patches auf dem neuesten Stand halten, eine Kombination unterschiedlicher Detection-Software einsetzen, ihre Mitarbeitenden schulen, regelmäßig Backups durchführen und sich bei knappen IT-Ressourcen externe Unterstützung von Security-Partnern holen. So können sie das Risiko eines Payload-Angriffs minimieren und sensible Daten und Infrastrukturen schützen. (bw)