Fehlerbehebung bei der Rotation von Verschlüsselungsschlüsseln: CVE-2024-34102
- Themen:
- Compliance
Erstellt für:
- Entwickler
Dieser Artikel soll Händlern bei der Fehlerbehebung bei der Rotation von Verschlüsselungsschlüsseln helfen, nachdem sie die in diesem Artikel)CVE-2024-34102 beschriebenen Schritte bereits ausgeführt haben.
Wenn Sie die Schritte im obigen Artikel bereits ausgeführt haben und Probleme beim Drehen Ihrer Verschlüsselungsschlüssel haben, haben wir einen isolierten Patch, der Ihnen bei der Lösung potenzieller Probleme hilft.
Um die zuvor kommunizierten und zusammengefassten Schritte zum Schutz vor CVE-2024-34102 sowie die zusätzliche Fehlerbehebung unten zu veranschaulichen, können Sie auch dieses Flussdiagramm verwenden:
Anwenden des isolierten Patches zum Ausführen des neuen Befehls
Entpacken Sie die Datei und Sie in unserer SupportWissensdatenbank die Anleitung „So wenden Sie einen Composer-Patch von Adobe an“.
Hinzufügen eines neuen Verschlüsselungsschlüssels ohne Verwendung von Umgebungsvariablen
Das Standardverhalten der Anwendung besteht darin, den Verschlüsselungsschlüssel in der app/etc/env.php
-Datei zu speichern.
Die Schritte in der Dokumentation beschreiben, wie Sie diesen Schlüssel in dieser Datei mithilfe der Admin ändern.
Die in diesem Abschnitt bereitgestellten Schritte und isolierten Patches ermöglichen es Ihnen, den Wert in dieser Datei einfach zu ändern, und ermöglichen es Ihnen, die Probleme, die möglicherweise auftreten, über die Admin zu umgehen.
Die einfachste und sicherere Möglichkeit, den Verschlüsselungsschlüssel zu verwalten, besteht jedoch in der Verwendung von Umgebungsvariablen. Wenn Sie bereits Umgebungsvariablen verwenden oder diese stattdessen zur Verwaltung dieses Schlüssels verwenden möchten, gibt es einen separaten Abschnitt , in dem diese Schritte beschrieben werden.
Betroffene Produkte und Versionen
Adobe Commerce on Cloud, Adobe Commerce On-Premise und Magento Open Source:
- 2.4.7-P1 und früher
- 2.4.6-P6 und früher
- 2.4.5-P8 und früher
- 2.4.4-P9 und früher
Isolierter Patch zur Fehlerbehebung bei Rotationsdetails des Verschlüsselungsschlüssels
Verwenden Sie je nach Adobe Commerce-/Magento Open Source-Version die folgenden angehängten Patches:
Für Version 2.4.7, 2.4.7-p1:
Für die Versionen 2.4.6, 2.4.6-p1, 2.4.6-p2, 2.4.6-p3, 2.4.6-p4, 2.4.6-p5, 2.4.6-p6:
Für die Versionen 2.4.5, 2.4.5-p1, 2.4.5-p2, 2.4.5-p3, 2.4.5-p4, 2.4.5-p5, 2.4.5-p6, 2.4.5-p7, 2.4.5-p8:
Für die Versionen 2.4.4, 2.4.4-p1, 2.4.4-p2, 2.4.4-p3, 2.4.4-p4, 2.4.4-p5, 2.4.4-p6, 2.4.4-p7, 2.4.4-p8, 2.4.4-p9:
Ändern Sie nach der Installation des isolierten Patches den aktiven Verschlüsselungsschlüssel mit dem neuen CLI.
-
Dieser neue Befehl sollte in der Umgebung ausgeführt werden, die Ihre
app/etc/env.php
für den Schlüssel enthält, den Sie aktualisieren möchten. -
Bestätigen Sie, dass der neue Befehl vorhanden ist:
bin/magento list | grep encryption:key:change
Es sollte folgende Ausgabe angezeigt werden:
encryption:key:change Change the encryption key inside the env.php file.
-
Ändern des Verschlüsselungsschlüssels:
bin/magento encryption:key:change
-
Wenn Sie diesen Befehl auf Ihrem Produktionssystem ausgeführt haben, sind keine weiteren Maßnahmen erforderlich.
Wenn Sie dies auf einem Entwicklungssystem ausgeführt haben, müssen diese Änderung in Ihr Produktionssystem übertragen, da Sie normalerweise sensible Konfigurationseinstellungen bereitstellen würden.
Aktualisieren Sie den Verschlüsselungsschlüssel mit Umgebungsvariablen, anstatt den isolierten Patch zu verwenden
Als Alternative zum obigen Abschnitt können Sie mit diesen Schritten einen neuen Verschlüsselungsschlüssel hinzufügen und gleichzeitig Ihre vorhandenen verschlüsselten Daten beibehalten, selbst wenn Sie derzeit die app/etc/env.php
verwenden.
Dieser Abschnitt gilt für Adobe Commerce on Cloud und Cloud Starter, aber auch für Adobe Commerce On-Premise obwohl die genauen Schritte und Speicherorte der Variablen von Ihrer Infrastruktur abhängen.
Aktuellen Wert erfassen
- Wenn Sie Ihre Schlüssel bereits mit Umgebungsvariablen verwalten, kann sich diese an mehreren möglichen Stellen befinden, sie befindet sich jedoch höchstwahrscheinlich in der
CRYPT_KEY
, wie in der Dokumentation beschrieben. - Wenn Sie keine Variablen verwenden, ist der Verschlüsselungsschlüssel im
crypt/key
Datenschlüsselapp/etc/env.php
.
In beiden Fällen kann es sich um einen mehrzeiligen Wert handeln, der mehrere zufällige Datenzeilen enthält.
Generieren eines neuen Werts für 2.4.7x-Versionen
Verschlüsselungsschlüssel sind 32 Byte zufälliger Daten, die mit base64 codiert und mit dem Präfix base64
werden.
So generieren Sie einen neuen Schlüssel:
-
Generieren Sie mit dem Tool Ihrer Wahl 32 zufällige Datenbytes, die mit base64 codiert werden sollen. Beispielsweise können Sie mit dem OpenSSL CLI
openssl rand -base64 32
ausführen, es kann jedoch jedes vertrauenswürdige kryptografische Tool zur zufälligen Generierung verwendet werden. -
Stellen Sie diesem Wert das Präfix
base64
voran. Wenn beispielsweise dieopenssl
Befehlsausgabe ABC123, würde der Wert wie folgt lauten: base64ABC123 -
Hängen Sie den generierten Wert an Ihren vorhandenen, oben erfassten Wert an. Wenn Ihr vorhandener Wert beispielsweise "base64HelloWorld" lautet, würde Ihr neuer Wert wie folgt lauten:
base64HelloWorld base64ABC123
Generieren eines neuen Werts für 2.4.6x und frühere Versionen
Verschlüsselungsschlüssel in 2.4.6x und früheren Versionen sind 16 Byte zufällige Daten in einem hex Format.
So generieren Sie einen neuen Schlüssel:
-
Generieren Sie mit dem Tool Ihrer Wahl 16 zufällige Datenbytes. Beispielsweise können Sie mit dem OpenSSL CLI
openssl rand -hex 16
ausführen, es kann jedoch jedes vertrauenswürdige kryptografische Tool zur zufälligen Generierung verwendet werden. -
Hängen Sie den generierten Wert an Ihren vorhandenen, oben erfassten Wert an. Wenn Ihr vorhandener Wert beispielsweise abc123 lautet und Ihr zufälliger Wert aus dem vorherigen Schritt 456def, würde Ihr neuer Wert wie folgt lauten:
abc123 456def
Hinzufügen einer neuen Umgebungsvariablen
Verwenden Sie die Cloud Console oder magento-cloud CLI, um die env:MAGENTO_DC_CRYPT__KEY
Umgebungsvariable aufneuen Wert festzulegen.
Beim Speichern der Variablen wird automatisch eine erneute Bereitstellung ausgelöst, wodurch der Wert angewendet wird.
Sicherheits-Updates
Verwandte Sicherheitsaktualisierungen sind für Adobe Commerce verfügbar: