(Minghui.org) Nel corso dell’ultima settimana sono state segnalate gravi vulnerabilità di sicurezza nei runtime di PHP, Node.js e Go. Gli amministratori che gestiscono server che utilizzano queste tecnologie, compresi i popolari sistemi di gestione dei contenuti come WordPress, devono intervenire per proteggere i propri servizi da potenziali attacchi.
A partire dal 21 ottobre, le agenzie globali di sicurezza informatica e i canali ufficiali di PHP e Node.js hanno pubblicato bollettini di sicurezza critici relativi a vulnerabilità che consentono ad aggressori non autorizzati di ottenere l’esecuzione remota di codice (RCE) o di innescare un attacco denial-of-service (DoS).
Poiché le vulnerabilità risiedono nel runtime del linguaggio o nelle librerie integrate, il semplice aggiornamento delle applicazioni front-end, come i plugin di WordPress o i pacchetti npm, non è sufficiente a proteggere un server; è necessario aggiornare il runtime del linguaggio stesso.
Vulnerabilità nei principali stack tecnologici
1) PHP (vulnerabilità “PHP2Shell”)
- Vulnerabilità di esecuzione di codice remoto: CVE-2026-109618, CVE-2026-109619 (punteggio CVSS 9,2, rischio critico)- Riepilogo: sono presenti difetti nella gestione della memoria sottostante e nella gestione dello stato globale. Quando viene generato un errore di memoria insufficiente (OOM), ciò può portare a un danneggiamento della memoria o all’utilizzo di uno stato non aggiornato da parte di una richiesta successiva gestita dallo stesso worker.Ambito di impatto: tutti i siti web e i server PHP non aggiornati. Gli aggressori possono sferrare attacchi senza alcuna credenziale o privilegio.
2) Node.js
Le vulnerabilità del decodificatore Brotli e della sicurezza di rete includono CVE-2026-111497 (scrittura fuori dai limiti di memoria in Brotli) e diverse vulnerabilità relative all'autenticazione TLS/DNS.- Riepilogo: il decodificatore integrato per i dati compressi Brotli presenta un difetto di scrittura fuori dai limiti di memoria; inoltre, comporta il rischio di aggirare la verifica delle credenziali e del nome host.- Ambito di impatto: gestione di dati compressi Brotli non attendibili, connessioni di rete esterne e servizi Node.js per server proxy.
3) Linguaggio Go e framework correlati
- Sono state rilasciate patch di sicurezza per i protocolli di rete pertinenti, le librerie standard e i principali framework open source, quali proxy HTTP e interfacce di gestione della rete.- Ambito di impatto: servizi cloud-native che utilizzano versioni specifiche dei moduli Go o che dipendono da essi.
Azioni urgenti per gli amministratori di server
I tradizionali controlli delle dipendenze dei pacchetti (come le scansioni di package.json o composer.json) non sono in grado di rilevare le vulnerabilità nel runtime, è necessario verificare la versione del runtime in esecuzione sul server e/o sui container.
Le versioni precedenti dei runtime dei linguaggi che hanno raggiunto la fine del ciclo di vita (come PHP inferiore alla versione 8.2 o Node.js inferiore alla versione 20) non riceveranno patch ufficiali. Le applicazioni in esecuzione su queste versioni fuori ciclo di vita devono essere aggiornate a una versione supportata e patchata oppure isolate da Internet.
Se le risorse sono limitate, gli amministratori di server possono seguire questi passaggi in sequenza:
1) Inventario rapido delle risorse (verifica della versione)
Accedere a ciascun server o container e verificare se la versione del runtime del linguaggio è interessata dal problema.
- Per PHP, verificare se la versione in esecuzione è precedente a quella aggiornata (vedere l'elenco di seguito). Nota: alcune distribuzioni Linux applicano le patch alle versioni precedenti, pertanto le versioni precedenti alla 8.2 potrebbero comunque ricevere le patch. Controllare gli annunci ufficiali o i log dei pacchetti relativi alla propria distribuzione.
- Per Node.js, verificare se si sta utilizzando una versione 22.x, 24.x o 26.x interessata dal problema.
2) Eseguire immediatamente l’aggiornamento a una versione aggiornata
Aggiornare l’ambiente alla versione aggiornata corrispondente riportata di seguito e riavviare il processo di servizio (ad esempio PHP-FPM o l’applicazione Node) per liberare la memoria residua:
- Versioni PHP corrette:Serie PHP 8.5: aggiorna alla versione 8.5.12 (o successive)Serie PHP 8.4: aggiorna alla versione 8.4.27 (o successive)Serie PHP 8.3: aggiorna alla versione 8.3.36 (o successive)Serie PHP 8.2: aggiorna alla versione 8.2.35 (o successive)
Versioni corrette di Node.js:Node.js 22.x: eseguire l’aggiornamento alla versione 22.23.4 (o successive)Node.js 24.x: eseguire l’aggiornamento alla versione 24.22.1 (o successive)Node.js 26.x: eseguire l’aggiornamento alla versione 26.12.1 (o successive)
Nota: il supporto per Node.js 20 e le versioni precedenti è terminato. È necessario effettuare l’aggiornamento a una versione supportata il prima possibile.
3) Ricompilare container e immagini
Se si utilizza Docker o altri container cloud-native, la semplice modifica del tag non è sufficiente; è necessario ricompilare l’immagine per garantire che il runtime sottostante sia aggiornato e che il servizio venga ridistribuito.
Verificate il firewall dell'applicazione web front-end (WAF) o il bilanciatore di carico per accertarvi che siano attive le regole di protezione contro il traffico POST anomalo e i pacchetti compressi dannosi.
Quanto sopra è solo una panoramica. In casi specifici, il personale tecnico deve identificare e rimuovere con urgenza i rischi in base ai rispettivi ambienti per garantire la sicurezza delle informazioni.
Copyright © 2024 Minghui.org. Tutti i diritti riservati.