Fehlerbehebung für die Verschlüsselungsschlüssel-Rotation: CVE-2024-34102

Dieser Artikel soll Händlern bei der Fehlerbehebung bei der Verschlüsselungsschlüsselrotation helfen, nachdem sie die in diesem Artikel unter CVE-2024-34102 beschriebenen Schritte bereits ausgeführt haben.

Wenn Sie bereits die Schritte im obigen Artikel ausgeführt haben und Probleme beim Drehen Ihrer Verschlüsselungsschlüssel haben, haben wir einen isolierten Patch, um potenzielle Probleme zu lösen.

Um die Schritte zu veranschaulichen, die zuvor kommuniziert und zusammengefasst wurden, um den Schutz vor CVE-2024-34102 zu gewährleisten, sowie die zusätzliche Fehlerbehebung, die unten gefunden wurde, können Sie auch dieses Flussdiagramm verwenden:

CVE-2024-34102 Protection Flow Chart.jpg {modal="regular"}

Anwenden des isolierten Patches zum Ausführen des neuen Befehls

Entpacken Sie die Datei und finden Sie Anweisungen unter Anwenden eines von Adobe bereitgestellten Composer-Patches in unserer Support-Wissensdatenbank.

Hinzufügen eines neuen Verschlüsselungsschlüssels ohne Verwendung von Umgebungsvariablen

Das Standardverhalten der Anwendung besteht darin, den Verschlüsselungsschlüssel in der Datei app/etc/env.php zu speichern.

Die in der Dokumentation beschriebenen Schritte beschreiben, wie dieser Schlüssel in dieser Datei mithilfe der Admin -Schnittstelle geändert werden kann.

Die Schritte und der isolierte Patch in diesem Abschnitt ermöglichen es Ihnen, den Wert in dieser Datei einfach zu ändern und die Probleme zu umgehen, die möglicherweise über die Admin -Oberfläche auftreten.

Die einfachste und sicherere Methode zur Verwaltung des Verschlüsselungsschlüssels besteht jedoch in der Verwendung von Umgebungsvariablen. Wenn Sie bereits Umgebungsvariablen verwenden oder stattdessen diese zur Verwaltung dieses Schlüssels verwenden möchten, gibt es einen separaten Abschnitt, der diese Schritte beschreibt.

Betroffene Produkte und Versionen

Adobe Commerce on Cloud, Adobe Commerce vor Ort 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 für Details zur Verschlüsselungsschlüsselrotation

Verwenden Sie die folgenden angehängten Patches je nach Adobe Commerce-/Magento Open Source-Version:

Für Version 2.4.7, 2.4.7-p1:

Für 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 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 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:

Für 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:

Nachdem Sie den isolierten Patch installiert haben, ändern Sie den aktiven Verschlüsselungsschlüssel mit dem neuen Befehl CLI .

NOTE
Dieser neue CLI-Befehl Trigger bei der Ausführung einen leeren Cache.
  1. Dieser neue Befehl sollte in der Umgebung ausgeführt werden, die Ihre app/etc/env.php -Datei für den Schlüssel enthält, den Sie aktualisieren möchten.

  2. Vergewissern Sie sich, dass der neue Befehl vorhanden ist:

    code language-none
    bin/magento list | grep encryption:key:change
    

    Die folgende Ausgabe sollte angezeigt werden:

    code language-none
    encryption:key:change Change the encryption key inside the env.php file.
    
  3. Ändern Sie den Verschlüsselungsschlüssel:

    code language-none
    bin/magento encryption:key:change
    
  4. Wenn Sie diesen Befehl auf Ihrem Produktionssystem ausgeführt haben, sollte keine weitere Aktion erforderlich sein.
    Wenn Sie dies auf einem Entwicklungssystem ausgeführt haben, müssen Sie 1} diese Änderung in Ihr Produktionssystem übernehmen, da Sie normalerweise vertrauliche 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 dabei Ihre vorhandenen verschlüsselten Daten beibehalten, selbst wenn Sie derzeit den Standard-Wert app/etc/env.php verwenden.
Dieser Abschnitt gilt für Adobe Commerce on Cloud und Cloud Starter, gilt jedoch auch für Adobe Commerce On-Premise, obwohl die genauen Schritte und Speicherorte der Variablen von Ihrer Infrastruktur abhängig sind.

Aktuellen Wert abrufen

  • Wenn Sie Ihre Schlüssel bereits mit Umgebungsvariablen verwalten, kann sich diese an mehreren möglichen Speicherorten befinden, höchstwahrscheinlich jedoch in der Variablen CRYPT_KEY , wie in der Dokumentation beschrieben.
  • Wenn Sie keine Variablen verwenden, befindet sich der Verschlüsselungsschlüssel im crypt/key -Datenschlüssel in "app/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 kodiert und mit dem Präfix base64 versehen sind.
So generieren Sie einen neuen Schlüssel:

  1. Generieren Sie mithilfe des Tools Ihrer Wahl 32 zufällige Datenbyte, die mit base64 kodiert wurden. Mit dem OpenSSL CLI können Sie beispielsweise openssl rand -base64 32 ausführen, aber es kann jedes vertrauenswürdige kryptographisch zufällige Generierungs-Tool verwendet werden.

  2. Setzen Sie diesem Wert base64 als Präfix voran. Beispiel: Wenn der Befehl openssl die Ausgabe ABC123 ausgibt, würde der Wert zu: base64ABC123

  3. Hängen Sie den generierten Wert an den vorhandenen Wert an, den Sie oben erfasst haben. Wenn Ihr vorhandener Wert beispielsweise base64HelloWorld ist, lautet der neue Wert:

    code language-none
    base64HelloWorld
    base64ABC123
    

Generieren eines neuen Werts für 2.4.6x und frühere Versionen

Verschlüsselungsschlüssel für 2.4.6x und frühere Versionen sind 16 Byte zufälliger Daten in einem hex-kodierten Format.
So generieren Sie einen neuen Schlüssel:

  1. Generieren Sie mit dem Tool Ihrer Wahl 16 zufällige Datenbyte. Mit dem OpenSSL CLI können Sie beispielsweise openssl rand -hex 16 ausführen, aber es kann jedes vertrauenswürdige kryptographisch zufällige Generierungs-Tool verwendet werden.

  2. Hängen Sie den generierten Wert an den vorhandenen Wert an, den Sie oben erfasst haben. Wenn Ihr vorhandener Wert beispielsweise "abc123"lautet und Ihr zufälliger Wert aus dem vorherigen Schritt "456def"lautet, würde der neue Wert "
    "lauten.

    code language-none
    abc123
    456def
    

Neue Umgebungsvariable hinzufügen

Verwenden Sie den Wert Cloud Console oder magento-cloud CLI, um die Umgebungsvariable env:MAGENTO_DC_CRYPT__KEY 5} auf diesen neuen Wert festzulegen.

NOTE
Beachten Sie, dass Sie, wenn Sie die Variable als vertraulich markieren, möglicherweise eine externe Sicherung dieses Werts speichern möchten, da dieser von allen Schnittstellen ausgeblendet und nur für die Anwendung sichtbar ist.

Beim Speichern der Variablen wird automatisch eine Neubereitstellung ausgelöst, die dazu führt, dass der Wert angewendet wird.

Sicherheitsaktualisierungen

Verwandte Sicherheitsaktualisierungen für Adobe Commerce:

recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a