Misure temporanee incomplete

Solo la patch completa affronta le varianti. Configurazioni possono incidere su upload, prestazioni e disponibilità. Applicare prima del parsing amministrativamente e riavviare tutti i worker. Leggere entrambi gli avvisi. CDN e WAF non provano la correzione.

Attenzione alla memoria

memory_limit=-1 elimina alcuni OOM controllabili di PHP, non gli errori di allocazione OS. Servono limiti indipendenti di container o cgroup. Non usare RLIMIT_AS o RLIMIT_DATA. Limitare dimensioni decodificate, header multipart, parti e annidamento; post_max_size non basta.

Upload e backtrace

Impostare session.upload_progress.enabled=0 prima del parsing e riavviare. In PHP 8.5 fatal_error_backtraces=0 blocca solo il percorso confermato. Eliminare override INI errati che generano diagnostica precoce. display_errors, error_reporting e @ non impediscono il difetto. Nessuna impostazione copre tutto.

Misure temporanee per percorso

Prima la patch. Nel frattempo imponi session.upload_progress.enabled=0 amministrativamente prima del parsing e riavvia. In PHP 8.5, fatal_error_backtraces=0 riduce un altro percorso. Limita presto dimensione decodificata, parti/header multipart e profondità. Prova gli upload. Nascondere errori o spegnere i log non elimina il percorso diagnostico.

Strumenti PHP2Shell →

Limiti di memoria e riciclo

memory_limit=-1 amministrativo elimina solo parte dei percorsi OOM; servono contenimento cgroup/container indipendente, divieto di limiti finiti applicativi e riavvio. Mai RLIMIT_AS o RLIMIT_DATA: fallimenti dell’allocatore possono attivare il percorso vulnerabile. pm.max_requests=1 riduce parte dello stato tra richieste con costo elevato. Nessuna sostituzione delle due patch.

Strumenti PHP2Shell →

Esempio di comando / PHP INI

php.ini
; Temporary measures only. Follow both PHP advisories.
; Apply administratively BEFORE request parsing, then restart workers.
session.upload_progress.enabled = 0
; PHP 8.5 only:
fatal_error_backtraces = 0

; memory_limit = -1 is NOT a complete fix.
; It needs independent OS/container resource containment.
; Never substitute RLIMIT_AS or RLIMIT_DATA.

Fonti primarie e approfondimenti

PHP security teamSecurity advisory · 21 Oct 2026
CVE-2026-109618GHSA-w8hw-w9fx-j79w · OOM corruption
CVE-2026-109619GHSA-6wmf-4rv5-p3rp · Stale global state
Passo successivo3. Riavviare e verificare ovunque ↗