HTTP2Shell, la falla di Brotli raggiunge WordPress tramite i pingback

Logo di WordPress, piattaforma esposta alla falla Brotli HTTP2Shell
Immagine: WordPress via Wikimedia Commons (pubblico dominio).

Una falla critica nella libreria di compressione Brotli, ribattezzata in modo non ufficiale HTTP2Shell, può raggiungere anche i siti WordPress. Il team Threat Intelligence di Wordfence ha riprodotto in un laboratorio isolato un’esecuzione di codice remota senza autenticazione sfruttando la funzione di pingback XML-RPC. Il problema, però, non è nel codice di WordPress, dei plugin o dei temi: si trova in un componente del server che va aggiornato separatamente.

Logo di WordPress, piattaforma esposta alla falla Brotli HTTP2Shell
Immagine: WordPress via Wikimedia Commons (pubblico dominio).

HTTP2Shell: cos’è la falla CVE-2026-111497

La vulnerabilità, tracciata come CVE-2026-111497, è stata pubblicata da Google il 22 ottobre 2026, un giorno dopo il rilascio delle versioni corrette di Brotli. Si tratta di una scrittura fuori dai limiti di memoria (out-of-bounds write) nel decoder: un file compresso malevolo può spingere la libreria a scrivere dati fuori dall’area riservata, con possibili crash, fuga di informazioni o esecuzione di codice. Il punteggio CVSS v4.0 è 9,2 su 10. Nonostante il nome HTTP2Shell (circolano anche Node2Shell e Brotli2Shell), il protocollo HTTP/2 non c’entra.

Sono interessate le versioni upstream dalla 1.0.3 alla 1.0.9, la 1.1.0 e la 1.2.0; le prime release corrette sono rispettivamente 1.0.10, 1.1.1 e 1.2.1. Il 27 ottobre la CISA ha inserito la falla nel catalogo Known Exploited Vulnerabilities, senza però indicare quale applicazione sia stata colpita né se WordPress sia coinvolto. Della stessa vulnerabilità ci eravamo già occupati per le build di PHP per Windows e per l’aggiornamento di .NET rilasciato da Microsoft.

Come l’attacco arriva a WordPress attraverso i pingback

Secondo l’analisi di Wordfence, il proof of concept pubblico sfrutta una funzione standard: una richiesta non autenticata al metodo pingback.ping di xmlrpc.php indica un URL controllato dall’attaccante. WordPress contatta quell’indirizzo per verificare il link, il server malevolo risponde con un contenuto dichiarato come compresso in Brotli e il decoder vulnerabile corrompe la memoria. Se l’exploit corrisponde esattamente all’ambiente del server, il codice viene eseguito con i permessi del processo PHP del sito.

Le condizioni sono però numerose: l’endpoint XML-RPC deve essere raggiungibile, il metodo pingback registrato, l’articolo bersaglio deve accettare i ping, il server deve poter effettuare la richiesta in uscita e il client HTTP deve usare il decoder Brotli vulnerabile. Anche Patchstack sottolinea che WordPress non include Brotli, ma può risultare esposto tramite le librerie del sistema.

Cosa ha verificato Wordfence in laboratorio

Wordfence ha riprodotto l’attacco su WordPress 7.1.3 con Debian 13.7, Apache 2.4.69 e PHP 8.3.36, usando il pacchetto libbrotli1 vulnerabile: il codice è stato eseguito. Dopo l’aggiornamento della sola libreria Brotli, la stessa sequenza non ha più funzionato. Contro PHP 8.3.35 il payload non ha eseguito codice e, in un ambiente, ha provocato il crash del processo PHP: secondo i ricercatori l’exploit pubblico non è quindi universale, anche se resta plausibile il riuso contro server che condividono la stessa immagine.

Più aziende di sicurezza hanno osservato tentativi di sfruttamento, ma al 2 novembre Wordfence non ha trovato rapporti pubblici verificabili su compromissioni riuscite in produzione, né attraverso WordPress. La società considera comunque l’aggiornamento urgente.

Cosa fare: aggiornare Brotli sul server, non solo WordPress

  • Chi usa un hosting gestito dovrebbe chiedere al provider se la libreria Brotli usata dal sito è stata corretta per CVE-2026-111497 e se i servizi sono stati riavviati.
  • Chi amministra il server deve installare l’aggiornamento del sistema operativo o della piattaforma, verificare la revisione completa del pacchetto (molte distribuzioni applicano la correzione senza cambiare il numero di versione principale) e riavviare Apache, PHP-FPM o gli altri processi coinvolti.
  • Chi usa container deve ricostruire e ridistribuire le immagini partendo da una base aggiornata: il semplice riavvio non sostituisce i file vulnerabili.
  • Disattivare XML-RPC o i pingback elimina solo il percorso d’attacco dimostrato, non corregge la libreria. Wordfence precisa inoltre che l’opzione che disabilita l’autenticazione XML-RPC non blocca i pingback non autenticati.
  • Conservare i log e cercare segnali anomali, come richieste di pingback inattese, connessioni in uscita insolite o crash di PHP, se l’aggiornamento è arrivato in ritardo.

La vicenda ricorda quanto i siti dipendano da componenti di sistema invisibili dalla bacheca di WordPress, come già visto con PHP2Shell.

Fonti: https://www.wordfence.com/blog/2026/11/http2shell-wordpress-brotli/, https://patchstack.com/articles/wordpress-doesnt-ship-brotli-its-still-exposed-to-cve-2026-111497/, https://fortbridge.co.uk/research/cve-2026-111497-wordpress-pingback-rce-reproduction/, https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2026-111497

"
Sicurezza Informatica
Lo staff di Sicurezza Informatica.