Rotatie coderingssleutel voor probleemoplossing: CVE-2024-34102
Dit artikel is bedoeld om handelaren te helpen encryptie zeer belangrijke omwenteling problemen oplossen nadat zij reeds de stappen hebben gevolgd die in dit artikel op CVE-2024-34102 worden geschetst.
Als u de stappen in het bovenstaande artikel al hebt uitgevoerd en problemen hebt met het roteren van uw coderingssleutels, hebben we een geïsoleerde patch om mogelijke problemen op te lossen.
Om de stappen te illustreren die eerder zijn meegedeeld en hierboven zijn samengevat, om tegen CVE-2024-34102, evenals de extra hieronder gevonden het oplossen van problemen te beschermen, kunt u dit stroomdiagram ook gebruiken:
hoe te om het geïsoleerde flard toe te passen om het nieuwe bevel in werking te stellen
Pak het dossier uit en zie hoe te om een componentenflard toe te passen die door Adobe in onze basis van steunkennis voor instructies wordt verstrekt.
Toevoegend een nieuwe encryptiesleutel zonder milieuvariabelen te gebruiken
Standaard wordt de coderingssleutel in het app/etc/env.php
-bestand opgeslagen.
De stappen die in de documentatie worden geschetst beschrijven hoe te om deze sleutel binnen dat dossier te veranderen gebruikend de interface Admin.
Met de stappen en de geïsoleerde patch in deze sectie kunt u de waarde in dat bestand gemakkelijk wijzigen en kunt u de problemen die u ondervindt, oplossen via de beheerinterface.
De eenvoudigste en veiligste manier om de coderingssleutel te beheren is echter het gebruik van omgevingsvariabelen. Als u reeds milieuvariabelen gebruikt, of in het gebruiken van hen geinteresseerd bent om deze sleutel in plaats daarvan te beheren, is er een afzonderlijke sectie die die stappen beschrijft.
Beschrijving description
Betrokken producten en versies
Adobe Commerce op Cloud, Adobe Commerce op locatie en Magento Open Source:
- 2.4.7-p1 en lager
- 2.4.6-p6 en eerdere versies
- 2.4.5-p8 en eerder
- 2.4.4-p9 en eerder
Resolutie resolution
Geïsoleerde patch voor het oplossen van problemen met rotatiedetails van coderingssleutels
Gebruik de volgende bijgevoegde patches, afhankelijk van uw Adobe Commerce/Magento Open Source-versie:
Voor versie 2.4.7, 2.4.7-p1:
Voor versie 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:
Voor versie 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:
Voor versie 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:
Nadat u het geïsoleerde flard installeert, verander de actieve encryptiesleutel met het nieuwe CLI bevel.
Nota : Dit nieuwe bevel CLI zal een geheim voorgeheugen op uitvoering teweegbrengen.
- Deze nieuwe opdracht moet worden uitgevoerd in de omgeving die het
app/etc/env.php
-bestand bevat voor de sleutel die u wilt bijwerken. - Bevestig dat de nieuwe opdracht bestaat:
bin/magento list | grep encryption:key:change
- U zou de volgende output moeten zien:
encryption:key:change Change the encryption key inside the env.php file.
- U zou de volgende output moeten zien:
- Verander de encryptiesleutel:
bin/magento encryption:key:change
- Als u dit bevel op uw productiesysteem hebt uitgevoerd, zou geen verdere actie moeten worden vereist. Als u dit op een ontwikkelingssysteem in werking hebt gesteld, moet u deze verandering in uw productiesysteem krijgen aangezien u normaal gevoelige configuratiemontages zou opstellen.
De coderingssleutel bijwerken met omgevingsvariabelen in plaats van de geïsoleerde patch te gebruiken
Als alternatief voor de bovenstaande sectie kunt u met deze stappen een nieuwe coderingssleutel toevoegen terwijl de bestaande gecodeerde gegevens behouden blijven, zelfs als u momenteel de standaard app/etc/env.php
gebruikt. deze sectie is op Adobe Commerce op Cloud en de Starter van de Wolk van toepassing, maar is ook op Adobe Commerce op-gebouw van toepassing, hoewel de nauwkeurige stappen en de plaatsen van de variabelen van uw infrastructuur afhankelijk zullen zijn.
Verzamel uw huidige waarde
- Als u reeds uw sleutels met omgevingsvariabelen beheert, kan het in verscheidene mogelijke plaatsen zijn, maar het zal zeer waarschijnlijk in de
CRYPT_KEY
variabele zijn zoals die in de documentatie wordt beschreven. - Als u geen variabelen gebruikt, bevindt de coderingssleutel zich in
app/etc/env.php
binnen de gegevenssleutel vancrypt/key
.
In beide gevallen kan het een waarde met meerdere regels zijn en meerdere willekeurige gegevenslijnen bevatten.
Een nieuwe waarde genereren voor 2,4,7 x versies
Coderingssleutels zijn 32 bytes van willekeurige gegevens die zijn gecodeerd met base64 en vooraf zijn ingesteld op base64
. Een nieuwe sleutel genereren:
-
Met het gereedschap van uw keuze genereert u 32 willekeurige bytes met gegevens die zijn gecodeerd met base64. Met de OpenSSL CLI kunt u bijvoorbeeld
openssl rand -base64 32
uitvoeren, maar elk betrouwbaar cryptografisch willekeurig generatiehulpmiddel kan worden gebruikt. -
Plaats een voorvoegsel voor die waarde in
base64
. Bijvoorbeeld, als deopenssl
beveloutput ABC123, de waarde zou worden: base64ABC123 -
Voeg de gegenereerde waarde toe aan de bestaande waarde die u hierboven hebt verzameld. Bijvoorbeeld, als uw bestaande waarde base64HelloWorld is, zou uw nieuwe waarde worden:
code language-none base64HelloWorld base64ABC123
Coderingssleutels op 2.4.6x en eerdere versies bestaan uit 16 bytes aan willekeurige gegevens in een hexadecimale indeling. Een nieuwe sleutel genereren:
-
Met het gereedschap van uw keuze genereert u 16 willekeurige gegevensbytes. Met de OpenSSL CLI kunt u bijvoorbeeld
openssl rand -hex 16
uitvoeren, maar elk betrouwbaar cryptografisch willekeurig generatiehulpmiddel kan worden gebruikt. -
Voeg de gegenereerde waarde toe aan de bestaande waarde die u hierboven hebt verzameld. Bijvoorbeeld, als uw bestaande waarde abc123 is, en uw willekeurige waarde van de vorige stap is 456def, zou uw nieuwe waarde worden:
abc123
456def
Een nieuwe omgevingsvariabele toevoegen
Gebruik de Console of magento-wolk CLI van de Wolk om de env:MAGENTO_DC_CRYPT__KEY
milieuvariabele aan deze nieuwe waarde te plaatsen.
Nota : wordt geadviseerd dat als u verkiest om de variabele als gevoelig te merken, u een externe steun van deze waarde kunt willen bewaren, aangezien het van alle interfaces en slechts zichtbaar aan de toepassing zal worden verborgen.
Op het bewaren van de variabele, zal een herplaatsing automatisch teweeggebracht worden die de waarde zal veroorzaken om worden toegepast.
Beveiligingsupdates
Gerelateerde beveiligingsupdates beschikbaar voor Adobe Commerce: