Fehlerbehebung bei der Rotation von Verschlüsselungsschlüsseln: CVE-2024-34102
Dieser Artikel soll Händlern bei der Fehlerbehebung bei der Rotation von Verschlüsselungsschlüsseln helfen, nachdem sie die in diesem -ArtikelCVE-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:
Wie wird der isolierte Patch angewendet, um den neuen Befehl auszuführen
Entpacken Sie die Datei und Sie in unserer SupportWissensdatenbank die Anleitung „So wenden Sie einen von Adobe bereitgestellten Composer-Patch 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-Benutzeroberfläche ä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-Benutzeroberfläche 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.
Beschreibung description
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
Auflösung resolution
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-Befehl.
Trigger Hinweis: Dieser neue CLI-Befehl löscht den Cache bei der Ausführung.
- 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.
- Es sollte folgende Ausgabe angezeigt werden:
- Ä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
app/etc/env.php
Datenschlüsselcrypt/key
.
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
versehen sind. So generieren Sie einen neuen Schlüssel:
-
Generieren Sie mit dem Tool Ihrer Wahl 32 zufällige Datenbytes, die mit base64 kodiert sind. Beispielsweise können Sie mit der 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 deropenssl
-Befehl ABC123 ausgibt, 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:
code language-none base64HelloWorld base64ABC123
Verschlüsselungsschlüssel in 2.4.6x und früheren Versionen sind 16 Byte zufällige Daten in einem hexadezimal-kodierten Format. So generieren Sie einen neuen Schlüssel:
-
Generieren Sie mit dem Tool Ihrer Wahl 16 zufällige Datenbytes. Beispielsweise können Sie mit der 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 aussehen:
abc123
456def
Hinzufügen einer neuen Umgebungsvariablen
Verwenden Sie die Cloud-Konsole oder die Magento-CloudCLI, um die env:MAGENTO_DC_CRYPT__KEY
Umgebungsvariable aufneuen Wert festzulegen.
Hinweis: Wenn Sie die Variable als sensibel“ markieren, Sie möglicherweise eine externe Sicherung dieses Werts speichern, da er in allen Benutzeroberflächen ausgeblendet und nur für die Anwendung sichtbar ist.
Beim Speichern der Variablen wird automatisch eine erneute Bereitstellung ausgelöst, wodurch der Wert angewendet wird.
Sicherheitsaktualisierungen
Verwandte Sicherheitsaktualisierungen sind für Adobe Commerce verfügbar: