Risoluzione dei problemi relativi alla rotazione delle chiavi di crittografia: CVE-2024-34102
Questo articolo ha lo scopo di aiutare gli esercenti a risolvere i problemi relativi alla rotazione delle chiavi di crittografia dopo aver già seguito i passaggi descritti in questo articolo su CVE-2024-34102.
Se hai già seguito i passaggi descritti nell’articolo precedente e riscontri problemi durante la rotazione delle chiavi di crittografia, disponiamo di una patch isolata per risolvere potenziali problemi.
Per illustrare i passaggi precedentemente comunicati e riepilogati in precedenza, per la protezione da CVE-2024-34102, nonché le ulteriori procedure di risoluzione dei problemi riportate di seguito, è inoltre possibile utilizzare questo diagramma di flusso:
Applicare la patch isolata per eseguire il nuovo comando
Decomprimi il file e vedi Come applicare una patch del compositore fornita da Adobe nella Knowledge Base di supporto per le istruzioni.
Aggiunta di una nuova chiave di crittografia senza utilizzare le variabili di ambiente
Il comportamento predefinito dell'applicazione consiste nell'archiviare la chiave di crittografia nel file app/etc/env.php
.
I passaggi descritti nella documentazione descrivono come modificare questa chiave all'interno di tale file utilizzando l'interfaccia di amministrazione.
I passaggi e la patch isolata forniti in questa sezione ti consentono di modificare facilmente il valore in tale file e di risolvere eventuali problemi riscontrati tramite l’interfaccia di amministrazione.
Tuttavia, il modo più semplice e sicuro per gestire la chiave di crittografia consiste nell’utilizzare le variabili di ambiente. Se utilizzi già variabili di ambiente o sei interessato a utilizzarle per gestire questa chiave, è disponibile una sezione separata che descrive tali passaggi.
Descrizione description
Prodotti e versioni interessati
Adobe Commerce su Cloud, Adobe Commerce on-premise e Magento Open Source:
- 2.4.7-p1 e versioni precedenti
- 2.4.6-p6 e versioni precedenti
- 2.4.5-p8 e versioni precedenti
- 2.4.4-p9 e versioni precedenti
Risoluzione resolution
Patch isolata per la risoluzione dei problemi relativi alla rotazione della chiave di crittografia
Utilizza le seguenti patch allegate, a seconda della versione di Adobe Commerce/Magento Open Source in uso:
Per le versioni 2.4.7, 2.4.7-p1:
Per le versioni 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:
Per le versioni 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:
Per le versioni 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:
Dopo aver installato la patch isolata, modificare la chiave di crittografia attiva con il nuovo comando CLI.
Nota: Questo nuovo comando CLI attiverà una pulitura della cache al momento dell'esecuzione.
- Questo nuovo comando deve essere eseguito nell'ambiente che contiene il file
app/etc/env.php
per la chiave da aggiornare. - Verificare che il nuovo comando esista:
bin/magento list | grep encryption:key:change
- Dovresti visualizzare il seguente output:
encryption:key:change Change the encryption key inside the env.php file.
- Dovresti visualizzare il seguente output:
- Cambia la chiave di crittografia:
bin/magento encryption:key:change
- Se hai eseguito questo comando sul sistema di produzione, non è necessario eseguire ulteriori azioni. Se hai eseguito questa operazione su un sistema di sviluppo, devi inserire la modifica nel sistema di produzione, come faresti normalmente con le impostazioni di configurazione riservate.
Aggiorna la chiave di crittografia utilizzando le variabili di ambiente anziché la patch isolata
In alternativa alla sezione precedente, questi passaggi consentiranno di aggiungere una nuova chiave di crittografia mantenendo i dati crittografati esistenti, anche se si sta utilizzando app/etc/env.php
predefinito. Questa sezione si applica ad Adobe Commerce su Cloud e Cloud Starter, ma anche ad Adobe Commerce on-premise, anche se i passaggi e le posizioni esatti delle variabili dipenderanno dall'infrastruttura.
Raccogli il valore corrente
- Se si stanno già gestendo le chiavi con le variabili di ambiente, è possibile che si trovi in diverse posizioni possibili, ma è probabile che si trovi nella variabile
CRYPT_KEY
come descritto nella documentazione. - Se non si utilizzano le variabili, la chiave di crittografia sarà in
app/etc/env.php
all'interno della chiave daticrypt/key
.
In entrambi i casi, può essere un valore su più righe e contenere più righe casuali di dati.
Genera un nuovo valore per le versioni 2.4.7x
Le chiavi di crittografia sono 32 byte di dati casuali codificati con base64 e con prefisso base64
. Per generare una nuova chiave:
-
Con lo strumento desiderato, genera 32 byte casuali di dati codificati con base64. Ad esempio, utilizzando OpenSSL CLI, è possibile eseguire
openssl rand -base64 32
, ma è possibile utilizzare qualsiasi strumento affidabile per la generazione casuale di crittografia. -
Aggiungi al valore il prefisso
base64
. Ad esempio, se il comandoopenssl
genera ABC123, il valore diventerà: base64ABC123 -
Aggiungi il valore generato al valore esistente raccolto in precedenza. Ad esempio, se il valore esistente è base64HelloWorld, il nuovo valore diventerà:
code language-none base64HelloWorld base64ABC123
Le chiavi di crittografia della versione 2.4.6x e delle versioni precedenti sono 16 byte di dati casuali in un formato con codifica esadecimale. Per generare una nuova chiave:
-
Utilizzando lo strumento desiderato, genera 16 byte casuali di dati. Ad esempio, utilizzando OpenSSL CLI, è possibile eseguire
openssl rand -hex 16
, ma è possibile utilizzare qualsiasi strumento affidabile per la generazione casuale di crittografia. -
Aggiungi il valore generato al valore esistente raccolto in precedenza. Ad esempio, se il valore esistente è abc123 e il valore casuale del passaggio precedente è 456def, il nuovo valore diventerà:
abc123
456def
Aggiungi una nuova variabile di ambiente
Utilizzare Cloud Console o Magento-Cloud CLI per impostare la env:MAGENTO_DC_CRYPT__KEY
variabile di ambiente su questo nuovo valore.
Nota: Se scegli di contrassegnare la variabile come sensibile, puoi salvare un backup esterno di questo valore, poiché sarà nascosto da tutte le interfacce e visibile solo all'applicazione.
Al momento del salvataggio della variabile, viene attivata automaticamente una ridistribuzione che determinerà l’applicazione del valore.
Aggiornamenti di sicurezza
Aggiornamenti di sicurezza correlati disponibili per Adobe Commerce: