Oggi è il 6 giugno e il mondo occidentale celebra il D-Day.
Tuttavia, buona parte del mondo dell’e-commerce si sta preparando per l’11 giugno, un altro M-Day, quando l’ultima patch di sicurezza di Magento sbarcherà sulle nostre spiagge digitali.
Il piano di battaglia di Adobe per mettere in sicurezza il fronte Magento prevede il rilascio di patch ogni due mesi. In questa tornata saranno rilasciate patch per le seguenti versioni: 2.4.7-p1, 2.4.6-p6, 2.4.5-p8, 2.4.4-p9.
Potresti chiederti:
Dove posso trovare la versione del mio sito Magento?
La versione di Magento è indicata nell’angolo in basso a destra del pannello di amministrazione.
Se il piè di pagina del pannello di amministrazione è stato personalizzato e non mostra più la versione di Magento, potresti aver bisogno dell’aiuto di uno sviluppatore per determinare quale versione di Magento stai utilizzando.
Un altro “trucco” consiste nel navigare nell’URL del tuo sito web e aggiungere “magento_version”, in questo modo: “http://your_store.com/magento_version”. Questo ti mostrerà il numero di versione ma ma non il numero della patch.
Ad esempio, ad oggi il marketplace ufficiale delle estensioni Adobe si trova su un vecchio Magento 2.4 (Enterprise).
Dove posso trovare la versione della patch di Magento?
La versione della tua patch di sicurezza è indicato nell’angolo in basso a destra del tuo pannello di amministrazione, insieme alla versione di Magento.
Nella schermata “2.4.2” indica la versione di Magento e “-p1” sta per security patch 1.
Se non c’è nulla dopo le tre cifre che indicano la versione di Magento, ad esempio “ver. 1.2.3”, significa che il tuo Magento non è mai stato patchato.
La semantica di Adobe per le sue versioni, ad esempio 2.4.5-p1, può essere un po’ confusa:
MAGGIORE . MINORE . PATCH – PATCH DI SICUREZZA
Versione MAGGIORE – 2 (include modifiche alle API incompatibili)
Rilascio MINORE – 2.4 (aggiunge funzionalità in modo retrocompatibile)
Versione PATCH – 2.4.5 (aggiunge correzioni di bug compatibili con la versione precedente)
Versione PATCH DI SICUREZZA – 2.4.5-p1 (aggiunge la correzione di bug di sicurezza e miglioramenti alla sicurezza)
Nella mia esperienza, “patch” viene utilizzato per indicare le “patch di sicurezza”.
Sapere dove ti trovi è solo il primo passo… la decisione successiva è quella:
Quando devo aggiornare Magento?
In generale, è bene aggiornare frequentemente, a distanza di un paio di settimane dal rilascio di una patch.
Ma c’è una differenza tra il patching e l’aggiornamento della versione, quindi diamo un’occhiata a come stanno le cose.
Patching vs. aggiornamento
- Le patch sono correzioni di bug o vulnerabilità specifiche ma, di solito, non modificano la logica o le funzionalità di un programma. L’aggiornamento di una patch può essere effettuato sul sito web di staging ( non fatelo direttamente sulla produzione, no).
- Gli aggiornamenti sono più completi e complessi e possono migliorare, modificare, aggiungere o rimuovere caratteristiche e funzionalità fondamentali. L’aggiornamento di una versione avviene di solito tramite la creazione di un sito web di sviluppo, un clone del tuo attuale sito web di produzione.
Gli aggiornamenti di versione sono generalmente più impattanti degli aggiornamenti di patch. Gli aggiornamenti di versione potrebbero richiedere l’aggiornamento di alcuni o addirittura di tutti i tuoi moduli ed estensioni. La tua agenzia di sviluppo potrebbe essere in grado di farlo, ma altre volte è più conveniente acquistare nuovamente i moduli che non sono più coperti da un contratto di manutenzione.
Adobe rilascia patch abbastanza frequentemente, mentre gli aggiornamenti sono meno frequenti. Consulta il loro calendario qui: https://experienceleague.adobe.com/en/docs/commerce-operations/release/planning/schedule
Quanto tempo devi aspettare prima di applicare una patch o un aggiornamento, e perché?
Le patch di sicurezza sono di fondamentale importanza e l’aggiornamento frequente di Magento è senza dubbio la strategia migliore e più economica.
Tuttavia, avendo lavorato con alcuni dei migliori sviluppatori del settore, sono ora convinto delle loro argomentazioni per non applicare immediatamente le patch o gli aggiornamenti.
Gli early adopters di un aggiornamento o di una patch spesso finiscono per fare da cavie involontarie. Questi early adopters, soprattutto quelli che utilizzano le tue stesse estensioni, probabilmente scopriranno e segnaleranno i problemi agli sviluppatori delle rispettive estensioni, che provvederanno a correggerli. Per questo motivo potrebbe valere la pena aspettare un paio di settimane prima di aggiornare.
Tuttavia, non rimandare più di tanto. Se il tuo sito web è complesso o se sei indietro di qualche versione, le cose possono degenerare.
La spirale del rinvio
Più la tua versione di Magento è in ritardo rispetto all’ultima release, più sarà difficile aggiornarla. Potrebbe essere necessario acquistare nuovamente i moduli, aggiornare lo stack tecnologico (PHP, database, ecc.) e condurre test più approfonditi.
Questo è particolarmente vero se continui a utilizzare la tua versione di Magento oltre la data di fine vita (EOL). Anche se il tuo sito web non sarà offline, le patch ufficiali non saranno più disponibili.
Di conseguenza, il tuo sito diventerà sempre più vulnerabile agli attacchi. I black-hat hacker diventeranno più abili nel trovare e sfruttare i siti obsoleti.
Se non aggiornerai, dovrai spendere risorse per “rattoppare” il tuo sito web, ad esempio aggiungendo livelli di sicurezza che costano e hanno un impatto sulle prestazioni, incidendo potenzialmente sulle conversioni.
A questo punto, ti ritroverai ad avere a che fare costantemente con problemi di sicurezza, il che ti renderà ancora meno propenso a intraprendere un aggiornamento della versione principale.
Le migliori pratiche
- Pianificare l’aggiornamento delle patch dopo circa due settimane dal rilascio di una nuova patch.Se non hai lavori in corso sullo staging, chiedi ai tuoi sviluppatori di allineare il sito web di staging con quello di produzione. Questo semplificherà i test pre-deploy (UAT). Tieni presente che il lavoro pre-esistente sullo staging andrà perso.
- Prendi nota di quando scade il supporto per le estensioni e i moduli.Chiedi ai tuoi sviluppatori di aggiornare questi moduli prima della scadenza del supporto. Gestire gli aggiornamenti di molti moduli può essere impegnativo perché spesso gli aggiornamenti vengono rilasciati in modo incrementale.
- Pianifica l’aggiornamento della versione prima che la tua versione raggiunga la fine del suo ciclo di vita. La prossima versione a non essere più supportata è la 2.4.4, con fine supporto ad aprile 2025 (meno di un anno mentre scrivo). Puoi vedere il calendario della fine del supporto qui: https://experienceleague.adobe.com/en/docs/commerce-operations/release/planning/lifecycle-policy Se fossi in te, pianificherei un aggiornamento della versione entro un anno dall’EOL perché, con i lavori più importanti, scoprirai che:
- la tua agenzia potrebbe aver bisogno di tempo per pianificare il lavoro di aggiornamento – non possono iniziare i lavori immediatamente
- potresti essere ritardato da problemi inattesi e importanti
- potresti non avere il tempo di testare
- ecc.
- Quando aggiorni le versioni, fai delle ricerche e discuti con il tuo partner tecnologico se è meglio passare alla versione più recente che è già stata sottoposta a patch di sicurezza. Ad esempio, la versione 2.4.7-p2 piuttosto che la 2.4.8. Questo è un indicatore approssimativo del fatto che la versione è stata adottata dall’ecosistema Magento e che i moduli, le estensioni e le integrazioni dovrebbero funzionare.