Trece días después del patch de emergencia, el caso PHP2Shell sigue abierto. Y la cuenta que nadie pagó todavía es la de quien piensa que aplicar el 8.5.12 resolvió todo.
Del otro lado, doce días desde que las dos fallas de ejecución remota del ksmbd se volvieron públicas, y la corrección todavía no llegó al árbol estable del kernel. Dos casos, la misma ventana abierta.
Lo que el patch del PHP cubrió y lo que quedó de fuera
Lo que el patch cubrió: las CVEs 2026-109618 y 2026-109619, corregidas en las ramificaciones 8.5, 8.4, 8.3 y 8.2, con backport manual para 7.4, 8.0 y 8.1.
Lo que el patch no cubrió: la CVE-2026-115560, publicada en aviso informacional dos días después, en el mismo subsistema de sesión, con mitigación de una línea y corrección solo en el ciclo regular. Y las reivindicaciones de bypass del patch que circulan desde entonces: parte contestada por el análisis técnico, parte todavía sin parecer definitivo.
Lo que la exploración mostró
La exploración real no esperó el calendario. La AWS detectó tráfico de exploración antes de la divulgación pública, la SecurityWeek reportó operadores del Mirai con bypass de ASLR, y la cobertura técnica de esta semana describe el exploit encadenado con otras fallas hasta root de firewall. El PHP corre en siete de cada diez sites de la web, y el reloj de esos tres vectores no es el mismo.
El retrato del ksmbd, 12 días después
Ningún identificador CVE atribuido, porque el proyecto del kernel solo numera después de que la corrección llega al estable. La corrección de uno de los caminos camina en el ciclo de desarrollo, sin fecha para las distribuciones. El segundo camino sigue sin corrección nombrada. El servidor SMB embutido en el Linux sigue expuesto para quien lo corre.
Qué hacer hoy, en los dos casos
En el PHP, en este orden: confirmar la versión del PHP en cada host, aplicar la línea session.upload_progress.enabled=0 si el ambiente no usa la feature, inventariar quién todavía está en 7.4, 8.0 o 8.1 y acompañar el advisory completo de la 115560.
En el kernel: confirmar con systemctl status ksmbd y lsmod | grep ksmbd; apagar el módulo si el servidor no necesita compartimiento SMB; cerrar el puerto 445 en el firewall; y quien depende del servicio acompaña el árbol estable de cerca.
Conclusión
La lección no es sobre el ksmbd ni sobre el PHP. Es sobre la ventana entre detalle público y corrección disponible, el único período que el atacante necesita, y sobre el inventario que la cierra: host por host, versión por versión, módulo cargado por kernel, mitigación documentada. Los tres artículos de esta serie (PHP2Shell, CVE-2026-115560 y ksmbd) cuentan la misma historia de ángulos diferentes. El inventario de superficie es el capítulo que cierra todas ellas.