Plattform
php
Komponente
craftcms/commerce
Behoben in
5.0.1
5.6.0
CVE-2026-32272 describes a SQL Injection vulnerability discovered in Craft Commerce. This flaw allows an authenticated control panel user to bypass sanitization measures and inject malicious SQL code. The vulnerability impacts versions of Craft Commerce up to 5.5.4, and a fix is available in version 5.6.0.
CVE-2026-32272 in Craft Commerce ermöglicht SQL-Injection aufgrund eines Fehlers bei der Bereinigung der Eigenschaften ProductQuery::hasVariant und VariantQuery::hasProduct. Obwohl eine Blockliste implementiert wurde, um Top-Level-Yii2-Query-Eigenschaften (wie where und orderBy) zu entfernen, werden diese spezifischen Eigenschaften nicht korrekt gefiltert. Dies ermöglicht es einem Angreifer, bösartigen SQL-Code über den Parameter criteria[hasVariant][where] einzuschleusen, der dann ohne ordnungsgemäße Validierung ausgeführt wird, wenn Craft::configure() in einer Subquery aufgerufen wird. Der potenzielle Schaden umfasst die Manipulation von Daten, die Offenlegung sensibler Informationen und in einigen Fällen die Remote-Code-Ausführung, abhängig von den Berechtigungen des Datenbankbenutzers.
Die Schwachstelle kann ausgenutzt werden, indem eine bösartige Anfrage gesendet wird, die eingeschleusten SQL-Code im Parameter criteria[hasVariant][where] oder criteria[hasProduct][where] enthält. Dies kann über Formulare, URL-Query-Parameter oder jeden anderen Eingabepunkt erfolgen, an dem Craft Commerce Benutzerdaten verarbeitet, um Datenbankabfragen zu erstellen. Die Ausnutzung ist wahrscheinlicher in Umgebungen, in denen Benutzer die Möglichkeit haben, den Aufbau von Abfragen zu beeinflussen, z. B. über Administrationspanels oder benutzerdefinierte APIs. Das Fehlen einer ordnungsgemäßen Validierung der Benutzereingabe ermöglicht es, dass der eingeschleuste SQL-Code im Kontext des Craft Commerce-Datenbankbenutzers ausgeführt wird.
Exploit-Status
EPSS
0.03% (10% Perzentil)
CISA SSVC
Die Lösung für diese Schwachstelle besteht darin, auf Craft Commerce Version 5.6.0 oder höher zu aktualisieren. Diese Version enthält eine Korrektur, die die Eigenschaften hasVariant und hasProduct korrekt bereinigt, bevor sie in der Subquery-Konfiguration verwendet werden. In der Zwischenzeit wird als vorübergehende Maßnahme empfohlen, diese Eigenschaften in komplexen Abfragen nicht zu verwenden, insbesondere wenn Daten aus nicht vertrauenswürdigen Quellen empfangen werden. Stellen Sie außerdem sicher, dass der Craft Commerce-Datenbankbenutzer die minimal erforderlichen Berechtigungen hat, um seine Funktionen auszuführen, wodurch potenzielle Schäden im Falle einer erfolgreichen Ausnutzung begrenzt werden.
Actualice a la versión 5.6.0 o posterior de Craft Commerce para mitigar la vulnerabilidad de inyección SQL ciega. Esta actualización corrige la falta de sanitización en las propiedades hasVariant y hasProduct, previniendo la extracción de datos sensibles de la base de datos.
Schwachstellenanalysen und kritische Warnungen direkt in deinen Posteingang.
SQL-Injection ist ein Sicherheitsangriff, der es Angreifern ermöglicht, Datenbankabfragen zu manipulieren, indem sie bösartigen SQL-Code einschleusen.
Wenn Sie Craft Commerce verwenden und nicht aktualisieren, könnte Ihre Website anfällig für Datenmanipulation, Informationslecks oder sogar Remote-Code-Ausführung sein.
Als vorübergehende Maßnahme sollten Sie die Verwendung von hasVariant und hasProduct in komplexen Abfragen vermeiden und die Berechtigungen des Datenbankbenutzers einschränken.
Es gibt keine speziellen Tools, um diese Schwachstelle zu erkennen, aber Penetrationstests und Code-Analyse können helfen, potenzielle Schwächen zu identifizieren.
Sie finden weitere Informationen in der Sicherheitswarnung von Craft CMS: [Link to Craft CMS security advisory]
Lade deine Abhängigkeitsdatei hoch und erfahre sofort, ob dich diese und andere CVEs treffen.