← Torna al blog
Aicirca 6 min di lettura

OpenAI ha trovato i bug di PHP. Contano di più i due mesi successivi.

Pubblicato 23 ott 2026
OpenAI ha trovato i bug di PHP. Contano di più i due mesi successivi.

PHP fa girare circa il settanta per cento del web. Questo mese OpenAI ha dichiarato che i suoi modelli, incluso GPT-5.6 Sol, hanno aiutato i ricercatori a trovare falle di sicurezza critiche al suo interno. Quella frase è il titolo. Quella dopo è la storia vera: l'azienda ha poi passato due mesi dentro una coalizione di maintainer e fornitori di sicurezza a sviluppare e testare le correzioni prima che qualsiasi cosa diventasse pubblica.

Due mesi di silenzio non sono un ciclo stampa. Sono la parte del lavoro sulle vulnerabilità di cui nessuno può fare uno screenshot.

La divulgazione coordinata è il prodotto

Trovare bug con un modello ormai costa poco. Un agente decente con una shell, una copia del codice sorgente e qualche ora produce crash candidati più in fretta di un revisore umano sullo stesso codice. La maggior parte sarà spazzatura, e separare la spazzatura da un vero problema di sicurezza della memoria è il punto in cui si è spostato il costo.

Quello che OpenAI ha fatto qui, o almeno quello che dice di aver fatto, è il tratto intermedio poco glamour: formare una coalizione, verificare ogni candidato, scrivere patch, testarle contro l'ecosistema, concordare una data di divulgazione e solo dopo pubblicare. È quella sequenza che ha evitato che una falla di PHP diventasse un fine settimana di exploit contro siti WordPress.

Vuol dire anche che la domanda che conta non è se un modello abbia trovato qualcosa. È se questo assetto si possa ripetere. Una coalizione funziona quando una parte con risorse la convoca. Non è ovvio che scali ai migliaia di progetti open source appesi allo stesso grafo di dipendenze di PHP e senza nessuno che possa convocare niente.

{{INLINE1}}

Il checker è onesto su quello che non sa fare

Insieme alla divulgazione, OpenAI ha rilasciato un checker di versione PHP: una skill di Codex e uno strumento CLI in Node. Lo punti su un sito, legge gli header HTTP e poi risponde OK, VULNERABLE o UNKNOWN.

Il metodo merita una lettura attenta. Confronta la stringa di versione nell'header con soglie di patch note. Non verifica nulla in modo indipendente. È una scelta di progetto deliberata, e produce uno strumento con tre output onesti invece di due disonesti.

Il rilevamento basato su header ha un modo di fallire noto: molte installazioni PHP in produzione mentono sulla versione, perché un reverse proxy riscrive l'header, perché l'header viene rimosso, o perché qualcuno ha disattivato expose_php anni fa e nessuno se lo ricorda. UNKNOWN serve a questo. Uno strumento che dice «non posso saperlo» è più utile di uno che dice «sei a posto».

Il canale di distribuzione è l'altro dettaglio interessante. È uscito come skill di Codex, non come web app né come GitHub Action. È una dichiarazione su dove OpenAI pensa che avverrà il triage di sicurezza: dentro lo stesso agente che sta già leggendo il tuo repository.

Come un modello trova un bug di memoria

Vale la pena essere precisi sul meccanismo, perché «l'AI ha trovato vulnerabilità» viene usato per tre cose diverse.

La prima è il fuzzing con uno scheduler più intelligente. I fuzzer guidati dalla copertura trovano bug di PHP da dieci anni; quello che aggiunge un modello è la capacità di leggere una patch, intuire quale percorso di codice adiacente è ora raggiungibile e scrivere l'harness che lo esercita. È davvero utile e del tutto privo di magia.

La seconda è il ragionamento sul sorgente. Data una funzione che legge un prefisso di lunghezza e poi alloca, un modello forte segnala l'integer overflow e propone un input candidato, senza eseguire nulla. Da qui arriva la maggior parte dei falsi positivi, perché il modello non vede il chiamante tre file più in là che limita già il valore.

La terza è il triage. Ordinare qualche centinaio di candidati tra «probabilmente reale», «probabilmente rumore» e «serve una persona» è l'uso meno discusso e probabilmente il più prezioso, perché è il passo che decide se un team di sicurezza ha il tempo di guardare qualcosa.

Solo il terzo scala senza una coalizione. Ed è il problema silenzioso di tutto questo annuncio: il lavoro sul modello è replicabile da chiunque abbia una chiave API, quello di coordinamento no.

Un miliardo di dollari di accesso

OpenAI ha anche impegnato 1 miliardo di dollari di accesso a Daybreak per i difensori in prima linea. Va letto come infrastruttura, non come beneficenza. Gli strumenti di rilevamento servono solo se chi li usa può permettersi di eseguirli al ritmo con cui arrivano gli attacchi. Un tier gratuito fa controllare una volta il team IT di un ospedale. Un miliardo di calcolo impegnato lo fa controllare di continuo.

Sotto c'è una logica strategica che vale la pena nominare. Se i fornitori di modelli diventano la parte a monte degli strumenti di sicurezza, diventano anche la parte che decide quali vulnerabilità vengono trovate per prime e a chi vengono dette. È molto giudizio concentrato in un laboratorio commerciale, e il processo di divulgazione descritto sopra è esattamente ciò che determina se questo assetto è credibile.

È anche un argomento di reclutamento. I ricercatori di sicurezza scarseggiano, e un laboratorio che può indicare due mesi di correzione coordinata del linguaggio più diffuso del web ha una storia migliore di uno che pubblica un benchmark.

Cosa significa se gestisci un sito

Controlla la tua versione di PHP questa settimana, e controllala da fuori la tua rete, perché è quello che vede un attaccante. Se l'header non ti dice niente, hai del lavoro che nessuno scanner farà per te, perché l'unica risposta affidabile vive nel package manager della macchina.

Poi pensa al pattern, non all'incidente. Il modello non ha sostituito il team di sicurezza. Ha cambiato il rapporto: più candidati, più triage, stesso numero di persone qualificate a decidere. Ogni organizzazione che adotta questi strumenti dovrà costruire capacità di triage da qualche parte, e quelle che non lo faranno si ritroveranno un arretrato di risultati non letti che assomiglia esattamente a non aver mai lanciato la scansione.

La parte che verrà dimenticata

Un'altra cosa da notare: è uscito un checker di versione, non un patcher. Nessuno ha dato ai proprietari dei siti una correzione con un clic, perché una correzione con un clic distribuita sul settanta per cento del web è di per sé un down. La scelta conservativa qui è quella giusta, ed è anche quella che garantisce una lunga coda di installazioni non corrette, ed è da lì che arriva il prossimo incidente.

Fra sei mesi la lezione sarà «l'AI ha trovato i bug di PHP», che è la frase vera meno interessante disponibile. La lezione trasferibile è più noiosa: il valore stava nei due mesi di lavoro coordinato, e il contributo del modello è stato rendere più veloce la prima settimana di quel processo.

Resta comunque un fatto grosso. Solo che non è quello che sta vendendo l'annuncio. Il lavoro di sicurezza è sempre stato soprattutto coordinamento, e gli strumenti che aiutano di più sono quelli che rendono il coordinamento più economico, non quelli che rendono il trovare più rumoroso.

Articoli correlati