Blog

SVG-Schmuggel - in Bilder eingebettete JavaScript-Redirect-Angriffe

Einführung

Bedrohungsakteure nutzen zunehmend Scalable Vector Graphics (SVG)-Dateien als Übertragungsvektor für JavaScript-basierte Umleitungsangriffe. SVGs, die gemeinhin als harmlose Bildformate behandelt werden, können eingebettete Skriptelemente enthalten. Bei diesen Kampagnen betten die Angreifer verschleierte JavaScript-Elemente in SVG-Dateien ein, um Browserumleitungen zur Laufzeit zu initiieren.

Bei den endgültigen Umleitungszielen handelt es sich um eine vom Angreifer kontrollierte Infrastruktur mit angehängten Base64-kodierten Zeichenfolgen, die zur Nachverfolgung des Opfers oder zur Korrelation verwendet werden, während die Nutzlast sorgfältig zu Ausweichzwecken strukturiert ist. Die Phishing-Themen variieren zwischen “ToDoList”, “Verpasster Anruf” und “Zahlung”.


Technische Zusammenfassung

  • SVG-Dateien werden verwendet, um die traditionelle dateibasierte Erkennung zu umgehen.
  • Verdecktes JavaScript ist eingebettet in <script><![CDATA[...]]></script> Abschnitte.
  • Die endgültige bösartige URL wird mit atob() und ausgeführt über fenster.standort.href.
  • E-Mail-Spoofing und -Impersonation werden eingesetzt, um die SVGs zu übermitteln und die Wahrscheinlichkeit zu erhöhen, dass der Benutzer sie verwendet.
  • Die Kampagne wurde durch Hinzufügen von Geofencing zu den Landing Sites weiterentwickelt

Technische Gliederung

SVG mit verschleiertem JavaScript

Der Kern der Nutzlast wird über eine .svg-Datei übermittelt, die einen in einem CDATA-Abschnitt versteckten JavaScript-Block enthält. Der eingebettete Code verwendet einen statischen XOR-Schlüssel, um eine sekundäre Nutzlast zur Laufzeit zu entschlüsseln. Dieses entschlüsselte Skript rekonstruiert und führt einen Umleitungsbefehl mit dem Function()-Konstruktor aus. Die Ziel-URL wird mit atob() und enthält eine Base64-kodierte Zeichenfolge, die wahrscheinlich als Tracking-Token oder Opferkennung dient.

Beispiel für einen Nutzdatenausschnitt:

window.location.href = atob(
  'aHR0cHM6Ly93dnJ6LmxmdGt2b2cubmV0L...'
) + "$";

Mechanismus der Zustellung

Der erste Zugriff erfolgt über eine Phishing-Kampagne mit gefälschten oder nachgemachten Absendern. Die Angreifer übermitteln das bösartige SVG entweder als direkten Dateianhang oder über einen Link zu einem extern gehosteten Bild, das harmlos erscheint. Die beobachteten E-Mails verwenden Domänen mit schwachen oder falsch konfigurierten SPF-, DKIM- und DMARC-Einträgen, so dass sie sich erfolgreich als vertrauenswürdige Marken oder Personen ausgeben können.

Alle Opfer haben die folgenden Probleme:

  • Keine DKIM-Einträge gefunden
  • DMARC Quarantäne- und Ablehnungsrichtlinie nicht aktiviert

Darüber hinaus fehlen DMARC-Datensätze bei einigen Zielen völlig.

In mehreren Fällen verwendete der Bedrohungsakteur ähnlich aussehende Domänen, die legitimen Unternehmen sehr ähnlich sind. Die Betreffzeilen und der Inhalt der E-Mails sind minimal und so gestaltet, dass sie keinen Verdacht erregen. Der Benutzer wird durch eine einfache Handlungsaufforderung oder ein Bild aufgefordert, die Datei in einem Browser zu öffnen oder eine Vorschau anzuzeigen. Sobald die SVG gerendert ist, führt sie das eingebettete JavaScript unbemerkt aus.

Eine Webbrowser-Anzeige mit einem Hintergrund mit Farbverlauf und einem blauen Umschlagsymbol in der Mitte. Die URL-Leiste darüber ist teilweise verdeckt, was auf ein Dokument oder eine E-Mail-Schnittstelle hinweist.

Abbildung 1: Die Perspektive des Empfängers

Angreifer Infrastruktur

Es wurden mehrere Domänen als Teil der Kampagneninfrastruktur identifiziert. Gelegentlich folgen die Domänen einer randomisierten oder auf Subdomänen basierenden Struktur, die eine Erkennung durch statische Filterung erschwert. Die Reputation der Domänen ist gering oder unbekannt, und das Hosting-Verhalten lässt auf eine kurzlebige Kampagneninfrastruktur schließen, die möglicherweise regelmäßig gewechselt wird.

Ein Bildschirm zur Passworteingabe in einem Webbrowser mit einem lila Hintergrund mit Farbverlauf. Das Formular fordert den Benutzer zur Eingabe des Passworts auf und enthält eine Schaltfläche mit der Aufschrift 'Anmelden'.

Abbildung 2: Typisches M365 Credential Phishing (bearbeitet, Branding entfernt)


Auswirkungen der Umgehung

Diese Technik zeigt, wie sich die Angreifer von ausführbaren Nutzdaten abwenden und auf Schmuggeltechniken (HTML und jetzt SVG) umstellen. Durch die Einbettung von Skriptlogik in Bildformate und die Verwendung vertrauenswürdiger Browserfunktionen vermeidet die Angriffskette die Auslösung herkömmlicher verhaltens- oder signaturbasierter Warnmeldungen. Die Ausführung von JavaScript erfolgt ohne File-Drops oder Makros, und die Umgehung wird durch die Verteilung der Nutzlast über gefälschte E-Mails, die einfache Anti-Spam-Filter passieren können, weiter verbessert.

Diese Kampagne zeichnet sich dadurch aus, dass sie eine browsernahe Umleitung nutzt, ohne dass eine Benutzerinteraktion oder externe Downloads erforderlich sind. Sie überbrückt die Lücke zwischen traditionellem Phishing und vollständiger Malware-Bereitstellung, was sie unauffällig und effektiv macht.


Vergleichende Analyse mit anderen SVG-Kampagnen

Dieser Angriff ist Teil eines breiteren Trends, bei dem Angreifer unkonventionelle Dateien als Vehikel für bösartiges JavaScript verwenden.

Bei früheren dokumentierten Kampagnen wurden eingebettete Skript-Tags oder gehostete Nutzdaten in Diensten von Drittanbietern wie Google Drive verwendet. Bei diesem Angriff wird XOR-verschlüsseltes JavaScript innerhalb der SVG verwendet, das im Browser mit `Funktion()` und `atob()`. Die abschließende URL-Umleitung enthält eine Base64-Zeichenkette, die zur Verfolgung der Opfer verwendet wird. Im Gegensatz zu Kampagnen, die ausführbare Dateien oder Archive (z. B. ZIP- oder JAR-Dateien) bereitstellen, werden bei dieser Methode keine Dateien abgelegt, wodurch herkömmliche EDR- und AV-Tools umgangen werden können.


Viktimologie

Die beobachteten Ziele dieser Kampagne sind B2B-Dienstleister, einschließlich derer, die regelmäßig mit wertvollen Unternehmensdaten, einschließlich Finanz- und Mitarbeiterdaten, umgehen, sowie Versorgungsunternehmen und Software-as-a-Service-Anbieter, die sich hervorragend für Social Engineering eignen, da sie ein hohes E-Mail-Aufkommen erwarten.

Auch die Zustellung ist gezielter. Der Angreifer sendet die bösartige SVG als Anhang von gefälschten oder ähnlich aussehenden Domänen. Die E-Mail ist in der Regel inhaltslos und verwendet ein minimales Format, um eine Entdeckung zu vermeiden und Neugierde oder Interaktion zu provozieren.


Empfehlungen zur Schadensbegrenzung

  • Microsoft Defender für Office 365:
  • E-Mail-Härtung:
    • Implementieren Sie DMARC-Richtlinien im Durchsetzungsmodus für Ihre Domänen mit SPF/DKIM-Abgleich.
    • Blockieren Sie SVG-Anhänge oder verwenden Sie Content Disarm and Reconstruction (CDR) für eingehende E-Mails.
    • Überwachen Sie den Missbrauch ähnlicher Domains, die sich als Ihre Marke ausgeben.
  • Akteneinsicht:
    • Integrieren Sie eine tiefgehende Inhaltsprüfung in Ihre E-Mail- und Endpunktlösungen.
    • Markieren Sie SVG-Dateien, die Skriptlogik und Kodierungsroutinen enthalten.
  • Sensibilisierung der Endnutzer:
    • Bringen Sie den Benutzern bei, dass sie unaufgeforderte Anhänge, auch Bilder, mit Vorsicht behandeln sollen.
    • Einbeziehung von SVG-basierten Phishing-Simulationen in Programme zur Förderung des Sicherheitsbewusstseins.

Erkennung

Das Ontinue Threat Detection Team hat die folgende, allgemein anwendbare Abfrage zum Auffinden von verdächtigen SVG-Dateien zur Verfügung gestellt:

let lookback = 7d;
let SVGRegex = @"(?i).*\.svg(\..*)?$";
let Browsers = dynamic([ "chrome.exe", "msedge.exe", "firefox.exe", "opera.exe", "brave.exe" ]);
let SuspiciousSVGEmails = materialize(
EmailAttachmentInfo
| wo ZeitGeneriert > vor(Rückblick)
| where FileType == "xml" and FileName matches regex SVGRegex
| join kind=inner (
EmailEvents
| wo ZeitGeneriert > vor(Rückblick)
) auf NetworkMessageId
| extend RecipientEmailAddress = tolower(RecipientEmailAddress)
| Zusammenfassen nach NetworkMessageId, Subject, FileName, RecipientEmailAddress
);
let SuspiciousSVGFileNames = materialize(
VerdächtigeSVGE-Mails
| Zusammenfassen nach Dateiname
);
DeviceProcessEvents
| wo ZeitGeneriert > vor(Rückblick)
| where ProcessCommandLine has_any (SuspiciousSVGFileNames)
| where FolderPath has_any (Browser)
| extend AccountUpn = tolower(AccountUpn)
| extend SvgCLIFileName=extract(@"([^\\]+\.svg(?:\.\w+)*)",1,ProcessCommandLine)
| join kind=inner SuspiciousSVGEmails on $left.AccountUpn == $right.RecipientEmailAddress und $left.SvgCLIFileName == $right.FileName

Indikatoren für Kompromisse

threat-intel-iocs/Public/2025-07-10-IOCs-SVG-Smuggling-Image-Embedded-JavaScript-Redirect-Attacks.md unter main - ontinue-research/threat-intel-iocs


Abschließende Überlegungen

Diese Kampagne zeigt einen kreativen Schwenk in der Methodik der Angreifer, die harmlose Dateiformate verwenden, um bösartige Logik zu verbergen und etablierte Erkennungskontrollen zu umgehen. SVGs bieten ein effektives Übertragungsmedium für clientseitiges JavaScript, und gefälschte E-Mails verringern die für eine erfolgreiche Ausführung erforderlichen Reibungsverluste. Sicherheitsteams sollten der Erkennung von dynamischen Skriptaktivitäten in nicht herkömmlichen Dateitypen Priorität einräumen und ihre Kontrollen für die E-Mail-basierte Dateiübertragung überprüfen.


Brauchen Sie Hilfe?

Ontinue kann Ihnen helfen, Ihre Umgebung vor diesen und anderen Bedrohungen zu schützen.

Teilen

Artikel von

Team für fortgeschrittene Bedrohungsabwehr

Ontinue – ATO

Das Advanced Threat Operations (ATO)-Team von Ontinue nutzt proaktive Methoden zur Identifizierung, Analyse und Abwehr von Bedrohungen, um unseren Kunden die nötige Widerstandsfähigkeit zu verleihen, mit der sie der sich ständig weiterentwickelnden Bedrohungslandschaft begegnen können.

Teammitglied Balazs Greksza Bild

Balazs Greksza
Teammitglied Domenico de Vitto Bild

Domenico de Vitto
Teammitglied Rhys Downing Bild

Rhys Downing
Team-Mitglied Manupriya Sharma Bild

Manupriya Sharma