OpenAI encontró los fallos de PHP. Lo importante fueron los dos meses siguientes.

PHP mueve alrededor del setenta por ciento de la web. Este mes, OpenAI dijo que sus modelos, incluido GPT-5.6 Sol, ayudaron a los investigadores a encontrar fallos de seguridad críticos en él. Esa frase es el titular. La siguiente es la historia de verdad: la empresa pasó luego dos meses dentro de una coalición de mantenedores y proveedores de seguridad desarrollando y probando correcciones antes de que nada se hiciera público.
Dos meses de silencio no son un ciclo de prensa. Son la parte del trabajo con vulnerabilidades de la que nadie puede hacer una captura de pantalla.
La divulgación coordinada es el producto
Encontrar bugs con un modelo ya es barato. Un agente decente con una shell, una copia del código y unas horas produce crashes candidatos más rápido de lo que un revisor humano trabaja el mismo código. La mayoría serán basura, y separar la basura de un problema real de seguridad de memoria es donde se movió el coste.
Lo que hizo OpenAI aquí, o al menos lo que dice que hizo, es el tramo intermedio poco glamuroso: formar una coalición, verificar cada candidato, escribir parches, probarlos contra el ecosistema, acordar una fecha de divulgación y solo entonces publicar. Esa secuencia es la razón por la que un fallo de PHP no se convirtió en un fin de semana de exploits contra sitios de WordPress.
También significa que la pregunta que importa no es si un modelo encontró algo. Es si este arreglo se puede repetir. Una coalición funciona cuando una parte con recursos la convoca. No parece escalar a los miles de proyectos de código abierto que cuelgan del mismo grafo de dependencias que PHP y no tienen a nadie que convoque nada.
{{INLINE1}}El verificador es honesto sobre lo que no puede hacer
Junto con la divulgación, OpenAI publicó un verificador de versión de PHP: una skill de Codex y una herramienta de línea de comandos en Node. La apuntas a un sitio, lee las cabeceras HTTP y responde OK, VULNERABLE o UNKNOWN.
El método merece una lectura atenta. Compara la cadena de versión de la cabecera con umbrales de parche conocidos. No verifica nada por su cuenta. Es una decisión de diseño deliberada, y produce una herramienta con tres salidas honestas en lugar de dos deshonestas.
La detección por cabecera tiene un modo de fallo conocido: muchas instalaciones de PHP en producción mienten sobre su versión, porque un proxy inverso reescribe la cabecera, porque la cabecera se elimina, o porque alguien desactivó expose_php hace años y ya nadie lo recuerda. Para eso está UNKNOWN. Una herramienta que dice «no puedo saberlo» es más útil que una que dice «estás bien».
El canal de distribución es el otro detalle interesante. Salió como skill de Codex, no como aplicación web ni como GitHub Action. Es una declaración sobre dónde cree OpenAI que ocurrirá el triaje de seguridad: dentro del mismo agente que ya está leyendo tu repositorio.
Cómo encuentra un modelo un bug de memoria
Vale la pena ser preciso con el mecanismo, porque «la IA encontró vulnerabilidades» se usa para tres cosas distintas.
La primera es fuzzing con un planificador más listo. Los fuzzers guiados por cobertura llevan una década encontrando bugs de PHP; lo que añade un modelo es la capacidad de leer un parche, adivinar qué ruta de código adyacente es ahora alcanzable y escribir el arnés que la ejercita. Es genuinamente útil y no tiene nada de mágico.
La segunda es razonar sobre el código. Dada una función que parsea un prefijo de longitud y luego reserva memoria, un modelo bueno señalará el desbordamiento de entero y propondrá una entrada candidata, sin ejecutar nada. De aquí vienen la mayoría de los falsos positivos, porque el modelo no ve al llamador tres archivos más allá que ya acota el valor.
La tercera es el triaje. Clasificar unos cientos de candidatos en «probablemente real», «probablemente ruido» y «necesita un humano» es el uso menos comentado y probablemente el más valioso, porque es el paso que decide si un equipo de seguridad tiene tiempo de mirar algo.
Solo la tercera escala sin una coalición. Y ese es el problema silencioso de todo este anuncio: el trabajo del modelo lo puede replicar cualquiera con una clave de API, el de coordinación no.
Mil millones de dólares en acceso
OpenAI también comprometió 1.000 millones de dólares en acceso a Daybreak para defensores en primera línea. Hay que leerlo como infraestructura, no como caridad. Las herramientas de detección solo sirven si quien las ejecuta puede permitirse hacerlo al ritmo al que llegan los ataques. Un nivel gratuito hace que el equipo de TI de un hospital compruebe una vez. Mil millones en cómputo comprometido hacen que compruebe de forma continua.
Debajo hay una lógica estratégica que conviene nombrar. Si los proveedores de modelos se convierten en la capa de arriba de las herramientas de seguridad, también se convierten en la parte que decide qué vulnerabilidades se encuentran primero y a quién se le cuenta. Es mucho juicio concentrado en un laboratorio comercial, y el proceso de divulgación de arriba es exactamente lo que determina si ese arreglo merece confianza.
También es un argumento de reclutamiento. Los investigadores de seguridad escasean, y un laboratorio que puede señalar dos meses de corrección coordinada del lenguaje más común de la web tiene mejor historia que uno que publica un benchmark.
Qué significa esto si llevas un sitio
Comprueba tu versión de PHP esta semana, y compruébala desde fuera de tu red, porque eso es lo que ve un atacante. Si la cabecera no te dice nada, tienes trabajo que ningún escáner hará por ti, porque la única respuesta fiable vive en el gestor de paquetes de la máquina.
Después piensa en el patrón, no en el incidente. El modelo no sustituyó al equipo de seguridad. Cambió la proporción: más candidatos, más triaje, el mismo número de personas cualificadas para decidir. Toda organización que adopte estas herramientas tendrá que construir capacidad de triaje en algún sitio, y las que no lo hagan acabarán con un montón de hallazgos sin leer que se parece exactamente a no haber pasado el escaneo.
La parte que se olvidará
Un detalle más que merece atención: lo que salió fue un verificador de versión, no un parcheador. Nadie le dio a los dueños de sitios una corrección de un clic, porque una corrección de un clic desplegada sobre el setenta por ciento de la web es en sí misma una caída. La opción conservadora es la correcta aquí, y también es la que garantiza una cola larga de instalaciones sin parchear, que es de donde vendrá el próximo incidente.
Dentro de seis meses, la conclusión será «la IA encontró bugs de PHP», que es la frase verdadera menos interesante disponible. La lección transferible es más aburrida: el valor estaba en los dos meses de trabajo coordinado, y la contribución del modelo fue hacer más rápida la primera semana de ese proceso.
Sigue siendo enorme. Solo que no es lo que vende el anuncio. El trabajo de seguridad siempre ha sido sobre todo coordinación, y las herramientas que más ayudan son las que abaratan la coordinación, no las que hacen más ruido al encontrar.
Artículos relacionados
225,000 estrellas para un Markdown: Karpathy en cuatro reglas
Sin código, sin compilación, sin benchmark: cuatro principios en un CLAUDE.md atrajeron más atención que la mayoría de los lanzamientos de capacidad del año.
Una firma de trading de agentes LLM: 117.000 estrellas y un aviso
Analistas, toro, oso, operador, equipo de riesgo, gestor de cartera: el organigrama es la arquitectura, y la advertencia del README sobre la no determinación es su línea más importante.
Cloudflare libera su auditor interno: lo importante es que rebate
Seis fases, tres veredictos y una regla que importa: el agente que comprueba un hallazgo nunca es el que lo encontró. Cloudflare además admite que una sola ejecución encuentra más o menos la mitad.
Impeccable: 62 reglas deterministas contra el slop de IA
Inter por todas partes, degradados violetas, tarjetas dentro de tarjetas: 24 comandos y 62 reglas deterministas frenan el slop en CI sin gastar un token.