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 überfenster.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.

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.

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:
- Aktivieren Sie Sichere Links und sichere Anhänge zum Schutz von URL und Anhängen.
- erstellen. Anti-Phishing-Strategien und blockieren bestimmte Domänen
- Aktivieren Sie Automatische Null-Stunden-Reinigung (ZAP) für die Erkennung von Phishing nach der Auslieferung.
- Auf der Phishing-Schwelle und Schutz konfigurieren Sie die folgenden Einstellungen (Standard/Aggressiv)- Konfigurieren Sie Anti-Phishing-Richtlinien in Microsoft Defender für Office 365 - 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
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.



