Am 10.10.2023 wurde ein kritischer Sicherheitspatch für Magento 2 veröffentlicht. Dieser schließt eine Sicherheitslücke, die es Angreifern ermöglicht, Kundendaten auszulesen und zu verändern. Der Patch ist für alle noch unterstützten Magento-2-Versionen verfügbar und sollte sofort installiert werden.
Welche Versionen sind betroffen?
Adobe Commerce | 2.4.7-beta1 und älter |
2.4.6-p2 und älter | |
2.4.5-p4 und älter | |
2.4.4-p5 und älter | |
Magento Open Source | 2.4.7-beta1 und älter |
2.4.6-p2 und älter | |
2.4.5-p4 und älter | |
2.4.4-p5 und älter |
Man kann also sagen, das aktuell alle getaggten Versionen von Magento 2 betroffen sind und der Patch installiert werden sollte.
Was ist eigentlich los ?
Die Schwachstelle mit der höchsten CVSS-Punktzahl von 8.8 (CVE-2023-38218) besagt, dass es sich um eine nicht authentifizierte Privilegienerweiterung aufgrund einer unsachgemäßen Eingabevalidierung handelt.
Dies bedeutet, dass ein Angreifer, über das REST-API von Magento 2 die Daten eines Kunden auslesen oder auch ändern kann. Dies kann neben dem Verlust von Kundendaten auch zu Bestellungen mit beim Kunden hinterlegten Zahlungsmethoden führen.
Dazu benötigt ein Angreifer zwei Informationen, um einen Angriff durchzuführen:
- Kunden ID
- E-Mail-Adresse
Die Notwendigkeit der genauen Kenntnis der Kunden-ID kann umgangen werden, indem jede ID zwischen 1 und [Vom Angreifer erzeugte Kunden ID - 1] ausprobiert wird, bis eine 200er-Antwort empfangen wird. Je nach Anzahl der Kunden in der Datenbank kann das zwischen einigen Sekunden und einigen Minuten dauern.
Wie kann ich mich schützen?
Es gibt 2 Optionen, die Sicherheitslücke zu schließen:
Update
Das Magento Open Source System kann auf eine der folgenden Versionen aktualisiert werden:
- 2.4.6-p3
- 2.4.5-p5
- 2.4.4-p6
Patch
Alterantiv zum Update kann die Sicherheitslücke durch das einspielen eines Patches über z.B. composer geschlossen werden. Dazu kann folgendes Patch angewendet werden:
CVE-2023-38218.patch
composer.json
Weitere Maßnahmen
Da in den wenigsten Themes und Shops der verwendete Endpunkt
PUT /V1/customers/me
genutzt wird, gibt es alterantive Möglichkeiten die Sicherheitslücke kurzfristig zu schließen:
Sperren der Route /V1/customers/me
über die Webserver-Konfiguration
nginx Beispiel
location ~ /rest/([^/]*/)?V1/customers/me {
deny all;
}
Entfernen oder Auskommentieren der Route in der vendor/magento/module-customer/etc/webapi.xml
Unsere Empfehlung ist klar das Anwenden des Patches oder das Update auf eine der oben genannten Versionen.
Du brauchst Unterstützung beim Einspielen oder der Prüfung, ob dein Shop betroffen ist? Dann melde dich gerne bei uns.