7 Minuten lesen
Veröffentlicht am 30. April 2025

Verschleierung: Gut zu schützen, schwer zu erkennen

Obfuskation erklärt von Harald Beutlhauser - Exeon Blog

Harald Beutlhauser

Autor

Diesen Beitrag teilen

Inhaltsübersicht

Heute abonnieren

Erhalten Sie monatlich die neuesten Blogs in Ihren Posteingang - unser Cyber Flash.

Indem Sie auf Anmelden klicken, bestätigen Sie, dass Sie mit unseren Nutzungsbedingungen einverstanden sind.

Was ist Verschleierung?

Die Verschleierung ist eine wichtige Technik zum Schutz von Software, birgt aber auch Risiken, insbesondere wenn sie von Malware-Autoren eingesetzt wird. Wir haben uns das genauer angesehen:

Obfuscation (Verschleierung) bezeichnet die Technik, Informationen absichtlich schwer verständlich zu machen, insbesondere im Bereich des Computercodes. Ein wichtiger Bereich der Obfuskation ist die Datenverschleierung, bei der sensible Daten verschleiert werden, um sie vor unbefugtem Zugriff zu schützen. Dabei kommen verschiedene Methoden zum Einsatz. Zum Beispiel können einige Daten durch Platzhalter ersetzt werden - oft werden nur die letzten vier Ziffern einer Kreditkartennummer angezeigt, während die anderen durch X oder Sternchen ersetzt werden. Bei der Verschlüsselung hingegen werden die Daten in eine unlesbare Form gebracht, die nur mit einem speziellen Schlüssel entschlüsselt werden kann.

Bei der Verschleierung von Computercode werden eine komplexe Sprache und redundante Logik verwendet, um den Code schwer verständlich zu machen. Ziel ist es, sowohl menschliche Leser als auch Programme wie Decompiler zu täuschen. Dazu werden Teile des Codes verschlüsselt, Metadaten entfernt oder sinnvolle Namen durch sinnlose ersetzt.

Das Einfügen von ungenutztem oder sinnlosem Code ist ebenfalls eine gängige Praxis, um den eigentlichen Code zu verschleiern. Ein als Obfuscator bekanntes Werkzeug kann diese Prozesse automatisieren und den Quellcode so verändern, dass er zwar noch funktioniert, aber schwerer zu verstehen ist.

Andere Methoden der Verschleierung umfassen die Komprimierung des gesamten Programms, die Unlesbarkeit des Codes und die Veränderung des Kontrollflusses, um eine unstrukturierte, schwer zu wartende Logik zu schaffen. Auch das Einfügen von Dummy-Code, der die Logik oder das Ergebnis des Programms nicht beeinflusst, ist üblich. Oft werden mehrere Techniken kombiniert, um einen mehrschichtigen Effekt zu erzielen und die Sicherheit zu erhöhen.

Endpoint Detection and Response (EDR) -Systeme arbeiten oft mit verschleiertem Code, um weniger angreifbar zu sein. Exeon.NDR hingegen, als KI-basiertes Network Detection and Response (NDR)als KI-basiertes Network Detection and Response (NDR) völlig unsichtbar im Netzwerk und sendet selbst keinen Netzwerkverkehr, so dass Hacker die Lösung kaum erkennen oder manipulieren können und die Lösung nicht verschleiern muss.

Alles hat zwei Seiten

Leider ist die Verschleierung ein zweischneidiges Schwert - sie bietet Schutz, stellt aber auch eine Herausforderung dar, da sie nicht nur von legitimen Softwareentwicklern, sondern auch von Autoren bösartiger Software verwendet wird.

Ein bekanntes Beispiel ist der SolarWinds-Angriff aus dem Jahr 2020, bei dem die Hacker eine Verschleierung verwendeten, um die Verteidigungsmaßnahmen zu umgehen und ihre Angriffe zu verbergen.

Verschleierung und das Beispiel Solarwinds - Exeon Blog

(Bildquelle: Brookings)

Ziel der Verschleierung ist die Anonymisierung von Cyberangreifern, die Verringerung des Entdeckungsrisikos und das Verbergen von Malware durch Veränderung der Gesamtsignatur und des Fingerabdrucks des bösartigen Codes, selbst wenn die Nutzlast eine bekannte Bedrohung darstellt.

Die Signatur ist ein Hash, eine eindeutige alphanumerische Darstellung eines Malware-Elements. Signaturen sind sehr oft Hashes, können aber auch eine andere kurze Darstellung eines eindeutigen Codes innerhalb eines Malware-Elements sein.

Anstatt zu versuchen, eine neue Signatur zu erstellen, indem die Malware selbst modifiziert wird, konzentriert sich die Verschleierung auf Verbreitungsmechanismen, um Antivirenlösungen zu täuschen, die sich auf Signaturen verlassen (vergleichen Sie dies mit dem Einsatz von maschinellem Lernen, prädiktiver Analytik und KI zur Stärkung der Abwehr).

Wie bei der guten Obfuskation können auch bei der schlechten Obfuskation verschiedene Techniken kombiniert werden, um Malware zu verbergen, so dass mehrere Ebenen der Obfuskation entstehen. Zu diesen Techniken gehören Packer, d. h. Softwarepakete, die Malware-Programme komprimieren, um ihr Vorhandensein zu verbergen und den Originalcode unlesbar zu machen. Krypter können Malware-Programme oder Teile von Software verschlüsseln, um den Zugriff auf Code zu beschränken, der ein Antivirenprodukt durch bekannte Signaturen alarmieren könnte. Eine weitere Technik ist das Einfügen von totem Code, bei dem unwirksamer, nutzloser Code zu Malware hinzugefügt wird, um das Erscheinungsbild eines Programms zu verschleiern. Angreifer können auch die Befehlsmodifikation nutzen, bei der die Befehlscodes in Malware-Programmen gegenüber den ursprünglichen Mustern verändert werden, was zwar das Aussehen des Codes, nicht aber sein Verhalten ändert und die Reihenfolge und Abfolge der Skripte verändert. Die Exklusiv-ODER-Verknüpfung (XOR) ist eine gängige Verschleierungsmethode, bei der Daten so versteckt werden, dass sie nur von denjenigen gelesen werden können, die XOR-Werte von 0x55 auf den Code anwenden. ROT13 schließlich ist ein ASM-Befehl für "rotate", der zufällige Buchstaben durch Code ersetzt.

Die Verschleierung des Codes ist jedoch nur der erste Schritt: Egal, wie viel Arbeit der Hacker in die Verschleierung des Codes zur Umgehung von EDR steckt, die Malware muss innerhalb des Netzwerks und nach außen kommunizieren, um "erfolgreich" zu sein. Das bedeutet, dass auch die Kommunikation verschleiert werden muss. Im Gegensatz zu früher, als Netzwerke möglichst schnell gescannt wurden und sofort versucht wurde, Daten im größtmöglichen Terabyte-Bereich auf einmal zu extrahieren, kommunizieren Angreifer heute leiser, damit die Sensoren und Schalter für die Überwachungstools nicht zuschlagen. Das Ziel, IP-Adressen über Scanning zu erhalten, wird beispielsweise langsam verfolgt, um unter dem Radar zu bleiben. Auch die Erkundung, bei der die Bedrohungsakteure versuchen, erste Schwachstellen über ihre anvisierten Opfer, z. B. deren Netzwerkarchitektur, zu erfahren, wird langsamer und weniger transparent.

Alles über Verschleierung - Exeon cybersecurity blog

Fallstudien: Verschleierte Angriffe

PowerShell

Ein "interessantes" Beispiel für Verschleierung ist ein Microsoft Windows-Tool namens PowerShell, das von Angreifern missbraucht wird. Malware, die PowerShell missbraucht, verschleiert ihre Aktivitäten durch Techniken wie String-Kodierung, Befehlsverschleierung, dynamische Codeausführung, Umgebungserkennung, polyglottes Scripting und dateilosen Betrieb. Diese Methoden verbergen die wahre Absicht und Struktur der Malware und erschweren es den Sicherheitssystemen, sie zu erkennen und zu analysieren.

XLS.HTML

Bei einem kürzlich erfolgten Cyberangriff verwendete eine Gruppe von Hackern ausgeklügelte Verschleierungstechniken, um ihre bösartigen Aktivitäten zu verbergen. Sie zielten auf eine Phishing-Kampagne namens XLS.HTML ab und änderten ihre Verschlüsselungsmethoden innerhalb eines Jahres mindestens 10 Mal, um nicht entdeckt zu werden. Zu ihren Taktiken gehörte die Verwendung von Klartext, Escape-Kodierung, Base64-Kodierung und sogar Morsecode. Dieser ständig wechselnde Ansatz zeigt, dass die Angreifer wissen, dass sie ihre Methoden ständig ändern müssen, um die Sicherheitsmaßnahmen zu überlisten.

ThinkPHP

ThinkPH ist ein Open-Source-Framework für Webanwendungen, das häufig zur Entwicklung PHP-basierter Webanwendungen verwendet wird. Angreifer nutzten die ThinkPHP-Schwachstellen CVE-2018-20062 und CVE-2019-9082 aus, um Remote-Code auf Servern auszuführen. Sie umgingen typische automatisierte Tools, indem sie eine verschleierte Web-Shell namens "Dama" von einem entfernten Server installierten, die permanenten Zugriff und weitere Angriffe ermöglichte. Diese fortgeschrittene Verschleierung zeigt einen ausgeklügelten Ansatz für Cyberangriffe.

Warum Sie Unterschriften nicht vertrauen sollten (nur)

Die signaturbasierte Erkennung ist bei bekannten Bedrohungen wirksam, kann aber weder Zero-Day-Schwachstellen noch verschleierte Angriffe erkennen. Das ist der Grund:

  • Variabilität der Verschleierung: Malware-Autoren verwenden unterschiedliche Techniken, um ihre Malware zu verschleiern. Dies kann es schwierig machen, zuverlässige Signaturen zu erstellen. Selbst kleine Änderungen im Code können dazu führen, dass die Signatur fehlschlägt.
  • Polymorphe Malware: Polymorphe Malware ändert ständig ihre Struktur, um nicht entdeckt zu werden. Jedes Mal, wenn sie ausgeführt wird, sieht der Code anders aus, was die Erstellung statischer Signaturen unmöglich macht.
  • Metamorphe Malware: Metamorphe Malware passt sich während der Ausführung an und ändert ihren Code dynamisch. Dies macht es noch schwieriger, statische Signaturen zu erstellen.
  • Zero-Day-Exploits: Signaturbasierte Lösungen basieren auf bekannten Bedrohungen. Sie versagen bei Zero-Day-Exploits, die neu und unbekannt sind.
  • Falsch positive Ergebnisse: Wenn eine signaturbasierte Lösung zu viele Fehlalarme liefert, kann sie ineffizient sein. False Positives können die Ressourcen des Sicherheitsteams belasten.
Wie man sich vor Verschleierung und Cyber-Bedrohungen schützt und verteidigt - Exeon

Es könnte eine Antwort geben...

Anomalie-basierte IDS-Lösungen hingegen erstellen ein Modell des normalen Systemverhaltens und erkennen ungewöhnliche Aktivitäten.

NDR-Tools wie Exeon.NDR passen sich kontinuierlich an, um der sich ständig weiterentwickelnden Cyber-Bedrohungslandschaft voraus zu sein. Sie spielen eine entscheidende Rolle bei der Erkennung von Malware und Command-and-Control (C&C)-Kanälen, selbst wenn diese Techniken zur Verschleierung verwenden. Und so machen sie es:

Verhaltensanalyse:

Exeon.NDR überwacht das Verhalten des Netzwerkverkehrs. Es identifiziert ungewöhnliche Muster, die auf C&C-Kommunikation hindeuten könnten, wie z. B. äußere, periodische Datenübertragungen. Es untersucht HTTP-Anfragen, DNS-Verkehr und andere Protokolle, um unregelmäßiges oder verdächtiges Verhalten oder Kommunikation zu erkennen, die möglicherweise mit (verschleiertem) bösartigem Verhalten verbunden ist.

Erkennung von Anomalien auf Metadatenebene und KI-Analyse:

Exeon.NDR analysiert Metadaten, um ungewöhnliche Muster zu erkennen, die auf verdächtige Aktivitäten hindeuten. Modelle des maschinellen Lernens sind in der Lage, zu lernen, typische Verschleierungstechniken zu erkennen, die durch verdächtiges Verhalten im Netzwerkverkehr sichtbar werden, z. B. die Ausführung atypischer Kommunikation, die mit verschleiertem Code in Verbindung gebracht werden könnte.

Da Malware sowohl innerhalb des Netzes als auch nach außen kommunizieren muss, um erfolgreich zu sein, wird sie dies auch in maskierter Form tun. Angreifer operieren heute eher leise und langsam, um unentdeckt zu bleiben: Exeon.NDR arbeitet deshalb mit einer langfristigen Kommunikationsüberwachung und betrachtet neben der Fähigkeit, Batch-Läufe innerhalb von Minuten durchzuführen, auch längere Zeiträume, z.B. 3 Tage, um Vergleichswerte zu haben, Regelmäßigkeiten zu lernen und daraus Unregelmäßigkeiten zu erkennen.

Echtzeitwarnungen würden hier zu einer großen Anzahl von Warnungen führen, wenn z. B. jede Minute ein Ping-Scan entdeckt wird, der eine Warnung auslöst, aber nicht unbedingt etwas Böses sein muss.

Exeon.NDR tauscht Bedrohungsdaten mit anderen Sicherheitslösungen aus und ermöglicht so eine schnellere Erkennung von bekannten Verschleierungstechniken und verdächtigem Verhalten.

Durch die Integration mit EDR-Lösungen korreliert Exeon.NDR verdächtige Aktivitäten, die auf Endgeräten erkannt werden, mit dem Netzwerkverkehr. Dieser umfassende Ansatz verbessert die Sicherheitsanalyse erheblich.

Fall gelöst

Die Log4j-Schwachstelle, auch bekannt als CVE-2021-44228 oder Log4Shell, ermöglicht es Angreifern, aus der Ferne die Kontrolle über anfällige Systeme zu übernehmen. Dies geschieht, weil die Log4j-Bibliothek bestimmte Eingaben nicht richtig verarbeitet. Angreifer können eine speziell gestaltete Anfrage senden, um diese Schwachstelle auszulösen, so dass sie bösartigen Code auf dem Zielsystem ausführen können. Diese Sicherheitslücke wurde bereits in großem Umfang ausgenutzt, indem Angreifer Trojaner und Krypto-Miner auf den betroffenen Systemen installierten. Um nicht entdeckt zu werden, versteckt die Malware ihre Funktionen und Dateinamen durch Verschleierung.

Exeon.NDR verwendet Metadaten, um den Netzwerkverkehr zu analysieren, und nutzt dabei KI-Einsichten zusammen mit Mitre und Zeek Threat Intelligence. So können wir schnell effektive Abfragen erstellen, um alle verfügbaren Netzwerkdaten zu untersuchen. Wir können alle Verbindungen, die während eines Angriffs hergestellt wurden, einsehen und auf Anzeichen eines erfolgreichen Eindringens prüfen. Wir suchen auch nach gängigen Kommunikationsmethoden wie LDAP, LDAPS und RMI, die häufig mit Log4j verwendet werden, und suchen nach anderen Indikatoren für Kontrollkommunikation, indem wir bestimmte Java-Klassen untersuchen, die bekanntermaßen bei solchen Angriffen verwendet werden. Bei der Untersuchung der Log4j-Schwachstelle können wir schnell Anzeichen für Angriffsversuche auf mit dem Internet verbundene Server erkennen und bösartige Aktivitäten aufdecken.

Möchten Sie sehen, wie Exeon.NDR in Ihrem System und Ihrem Unternehmen funktioniert? Sehen Sie sich diese aufgezeichnete Demo einer fortgeschrittenen Bedrohung an, um mehr zu erfahren!

Sehen Sie, wie Exeon.NDR fortgeschrittene Bedrohungen erkennt

Holen Sie sich den Cyber Flash

Bleiben Sie auf dem Laufenden mit unserem monatlichen Newsletter, der Sie über fortschrittliche Netzwerksicherheit, Updates zur Einhaltung von Vorschriften und die neuesten Veranstaltungen und Webinare zum Thema Cybersicherheit informiert.