I contributor di WordPress hanno lavorato intensamente nelle ultime 24 ore per preparare il rilascio di manutenzione 6.4.1 dopo l’emergere di un bug critico dovuto a una modifica nella libreria Requests, causando problemi con gli aggiornamenti sui server che eseguono versioni più vecchie di cURL.
Le aziende di hosting tra cui la nostra, hanno iniziato a segnalare un impatto diffuso del bug.
#657 interrompe i download da https://api.wordpress.org/ e molti altri siti quando si utilizza Curl 7.29.0 (e forse altre versioni) Errore: RuntimeException: Impossibile ottenere l’URL ‘https://api.wordpress.org/core/version-check/1.7/?locale=en_US‘: errore cURL 28: Operazione interrotta dopo 10000 millisecondi con 807 su -1 byte ricevuti. Causa anche problemi con la REST API in Site Health con l’errore: Risposta REST API: (http_request_failed) Errore cURL 28: Operazione interrotta dopo 10005 millisecondi con XXX su XXX byte ricevuti” Impedisce anche gli aggiornamenti dei plugin e del core di WordPress, fondamentalmente qualsiasi cosa che si basi sul gestore interno Curl in WordPress. Il problema è diventato una priorità massima poiché non era chiaro come sarebbe stato possibile per gli utenti ricevere un aggiornamento.
Anche se risolvete questo problema ora, impedisce qualsiasi futuro aggiornamento automatico a 6.4.1, poiché interrompe le richieste Curl, quindi l’unico modo per le persone di aggiornare sarebbe manualmente, più aspettate, più grande diventerà il problema.
Abbiamo trovato migliaia di siti colpiti dal bug. Il problema era oltre le capacità della maggior parte degli utenti di poterlo correggere manualmente, spingendo gli host a capire come aggiornare i propri clienti.
È stato anche segnalato che il bug stava causando potenziali problemi con l’API di Stripe, WP-Admin e le prestazioni.
Tiffany Bridge, product manager di Liquid Web/Nexcess, ha riassunto come è emerso questo problema:
Sembra che:
- Qualcuno abbia segnalato un bug relativo a un’interazione tra il suo Sistema di Protezione dalle Intrusioni e WordPress.
- Successivamente, hanno inviato una propria patch a WordPress.
- Il responsabile del progetto per quell’area ha chiesto al mittente di scrivere dei test, cosa che non ha fatto.
- Poi hanno comunque unito la PR, nonostante la mancanza di test.
- Nel frattempo, gli host dovranno tutti annullare quella modifica nelle nostre flotte in modo che i nostri clienti possano ancora avere piccole cose come aggiornamenti del core e dei plugin se stiamo eseguendo una versione di cURL interessata. (7.29 confermato, potrebbero essercene altri) I contributor del core di WordPress dovranno arrivare al fondo di come questo bug sia stato permesso, tramite un’analisi post-mortem o un’altra discussione per prevenire che ciò accada su larga scala in futuro.
L’aggiornamento di WordPress 6.4.1 aggiorna la libreria Requests dalla versione 2.0.8 alla 2.0.9 come rilascio di correzione per mitigare il problema. Ripristina la modifica problematica. La versione 6.4.1 include anche correzioni per altri tre problemi separati. Gli aggiornamenti automatici sono stati distribuiti questa sera per chiunque abbia siti che supportano aggiornamenti automatici in background.