Letzte Woche wurden mehrere OXID eShops über eine kritische SQL-Injection-Schwachstelle im Klarna-Modul (tc/tcklarna / fatchip-gmbh/oxid-klarna-6) aktiv angegriffen. Shops wurden dabei bereits beschädigt.
Was genau ist passiert?
Der öffentliche Callback-Endpunkt index.php?cl=KlarnaValidate verarbeitet den reference-Parameter aus eingehenden Klarna-Requests. Ist dieser Wert genau 64 Zeichen lang, wird er in Model/KlarnaArticle.php (Methode klarna_loadByArtNum()) ohne Prepared Statement direkt in eine SQL-Query interpoliert.
Ergebnis: Unauthentifizierte SQL-Injection — ohne Login, ohne Umweg.
Mögliche Auswirkungen: → Massenhaftes Überschreiben oder Löschen von Datenbankinhalten (oxcontents komplett geleert) → Blindes Auslesen von Kundendaten und Datenbankmetadaten → Remote Code Execution über Smarty-Template-Injection via [{php}]-Blöcke
Bin ich betroffen? So prĂĽft ihr es in 3 Minuten:
-
Ist
tc/tcklarnain eurem Shop installiert und aktiv? -
Ist
index.php?cl=KlarnaValidateoderindex.php?cl=klarna_validateöffentlich erreichbar? -
Gibt es in
tcklarna_logs.tcklarna_requestrawEinträge mitUPDATE,SELECT,SLEEPoderCONCAT?
Wenn Punkt 1 und 2 zutreffen: sofort handeln.
SofortmaĂźnahmen bis zum offiziellen Patch:
→ Endpunkt auf WAF- oder Nginx-/Apache-Ebene blocken (beide Varianten: KlarnaValidate und klarna_validate) → Oder: Modul temporär deaktivieren, sofern Klarna nicht aktiv genutzt wird → Logs forensisch prüfen, ob der Shop bereits angegriffen wurde
Was wir bei ScaleCommerce getan haben:
Über unsere Hosting-Infrastruktur smoxy haben wir beide Endpunkte innerhalb von Minuten nach Bekanntwerden der Lücke für alle betroffenen Kunden geblockt — ohne Patch, ohne manuellen Eingriff je Shop.
Wer UnterstĂĽtzung bei der Analyse oder Absicherung braucht: meldet euch gerne direkt bei uns oder kommentiert hier. Wir helfen auch Shops, die nicht bei uns hosten.
Bleibt sicher.
Christian und das ScaleCommerce Team — scale.sc