En resumen: Cuántos servidores afecta PHP2Shell solo puede estimarse. Unit 42 contó, según TechTarget, más de 22,6 millones de instancias expuestas, CybelAngel cita unos 2,24 millones de hosts PHP y BleepingComputer informa, citando a VirusTotal, de más de 5,1 millones. Las cifras miden cosas distintas y por eso no se contradicen. Para su empresa cuenta otra cifra: cuántos sistemas PHP propios son accesibles y cuántos de ellos están parcheados de forma acreditada.
El punto de partida: una cifra llega a los titulares
«22 millones de servidores en peligro» figuraba el 21 de octubre de 2026 en muchos titulares. La cifra procede de Unit 42, el departamento de investigación de Palo Alto Networks, y fue recogida, entre otros, por TechTarget. Poco después circularon otras cifras, algunas diez veces menores.
A los lectores les queda la impresión de que nadie sabe nada. En realidad, los proveedores cuentan sencillamente cosas distintas con métodos distintos. Quien lo entiende puede usar las cifras en lugar de dejarse desconcertar por ellas.
¿Cuántos servidores afecta PHP2Shell? Las cifras de un vistazo
| Fuente | Cifra | Qué se contó |
|---|---|---|
| Unit 42 (Palo Alto Networks), según TechTarget | más de 22,6 M | instancias expuestas y potencialmente vulnerables; método no explicado en el informe |
| VirusTotal, según BleepingComputer | más de 5,1 M | hosts PHP accesibles desde internet |
| CybelAngel, a partir de datos de Shodan | unos 2,24 M | hosts que indican PHP en sus identificadores |
| CybelAngel | 59 % de unos 1,5 M | proporción de hosts con versión visible en ramas sin actualización oficial |
| CybelAngel | unos 740 000 | hosts que indican PHP pero ocultan su versión |
Todas las cifras se refieren a la situación en torno al 20 y 21 de octubre. Son instantáneas y cambian con cada actualización aplicada.
Por qué los recuentos están tan separados
Tres efectos explican la mayor parte de las diferencias.
Instancia, host, sitio web. Un host suele ser una dirección IP o un servidor. Una instancia puede ser un servicio individual o un sitio web individual. En un servidor de alojamiento compartido suelen funcionar cientos de sitios web. CybelAngel mismo lo señala: se cuentan hosts, no organizaciones ni sitios web, y el número real de aplicaciones accesibles probablemente sea mayor.
Versiones ocultas. Muchos servidores no revelan su versión de PHP, por ejemplo porque expose_php está desactivado. No aparecen en las estadísticas basadas en versiones. Por qué ocultarla tiene sentido, pero no sustituye una protección, lo explica el artículo sobre indicaciones de versión y expose_php.
Backports. Las distribuciones y los proveedores de alojamiento aplican a veces correcciones sin cambiar el número de versión. Un servidor que muestra hacia fuera un número antiguo puede por tanto estar parcheado. Los recuentos basados en la versión mostrada sobrestiman, por eso, el número de sistemas sin parchear. Cómo comprobar el estado real en su caso figura en Comprobar la versión de PHP y el nivel de parcheo.
Cómo se obtienen estos recuentos
La mayoría de las cifras se basan en servicios de búsqueda que consultan internet continuamente y guardan lo que los servidores comunican sobre sí mismos. Un servidor web suele indicar en sus respuestas el software y la versión, por ejemplo en la cabecera X-Powered-By. CybelAngel se apoya, según su propia exposición, en esos identificadores a partir de datos de Shodan. No se ataca nada: solo se lee lo que de todos modos es visible públicamente.
De ahí se deduce una regla de lectura sencilla para cada cifra nueva en los medios. Pregunte: ¿qué se contó, hosts, instancias o sitios web? ¿Cuándo se midió, antes o después del 21 de octubre? ¿Y cómo se determinó la versión, por el número mostrado o mediante una prueba real? Quien no pueda responder a estas tres preguntas debería tratar la cifra como un orden de magnitud aproximado, no como un valor medido.
«Expuesto» significa accesible y posiblemente vulnerable según rasgos externos. No significa atacado ni comprometido. El BSI (Oficina Federal alemana para la Seguridad de la Información) no conocía inicialmente ataques exitosos confirmados de forma generalizada.
Lo que las cifras muestran de forma fiable a pesar de todo
Aunque la magnitud varíe, los recuentos sostienen tres afirmaciones sólidas:
- La superficie de ataque es enorme. Incluso la cifra más pequeña significa millones de objetivos accesibles. Los atacantes no tienen que buscar, pueden comprobar de forma automatizada.
- Las versiones antiguas están muy extendidas. Según CybelAngel, el 59 por ciento de los hosts con versión visible funcionaba en ramas para las que el proyecto PHP no publica ninguna actualización oficial. Para estos sistemas no ayuda un parche rápido, sino solo un backport, un tercero o una migración. Los riesgos los describe la guía PHP End of Life.
- El problema durará más. Una gran parte de los sistemas accesibles no se actualizará en días. Por eso es previsible que los escaneos y los intentos de ataque sigan activos durante mucho tiempo.
Cómo averiguar su propia cifra
La cifra mundial es un titular. La suya es una tarea. Así se llega a ella:
- Reunir dominios y subdominios: a partir de zonas DNS, certificados y contratos con agencias y proveedores de alojamiento.
- Asignar los servicios accesibles: ¿qué servidor hay detrás de cada dirección y quién lo administra?
- Levantar el estado de PHP por sistema: versión, modo de ejecución, origen de los paquetes, confirmación de backport.
- Valorar el resultado: parcheado y acreditado, parcheado sin justificante, sin parchear, desconocido.
- Cerrar las lagunas: aclarar primero lo desconocido, actuar primero sobre lo que está sin parchear.
Al final queda una lista corta en lugar de una cifra grande. Cómo mantener el inventario de forma permanente lo describe el artículo Inventario de todos los sitios web y servidores.
¿Cómo ayuda PHP SOS en concreto?
- Vista desde fuera: averiguamos cuáles de sus sistemas son accesibles desde internet y cuáles de ellos usan PHP.
- Vista desde dentro: comprobamos el nivel de parcheo y el reinicio en los servidores, no solo la versión mostrada.
- Valoración: usted recibe una lista con el estado de cada sistema y un orden claro.
- Verificación: si lo desea, tras el parche comprobamos desde fuera si la situación ha mejorado como se esperaba.
Cómo se desarrolla una revisión así lo describe Auditoría de seguridad y prueba de penetración.
Conclusión
22,6 millones, 5,1 millones, 2,24 millones: las cifras parecen contradictorias, pero solo miden cosas distintas. Juntas muestran que PHP2Shell afecta a una superficie de ataque muy grande y que hay muchas versiones antiguas en la red. La cifra que decide su riesgo no la ofrece ningún estudio. Solo surge al mirar sus propios sistemas.
Preguntas frecuentes
¿Cuántos servidores afecta PHP2Shell?
Nadie lo sabe con exactitud. Unit 42 de Palo Alto Networks contó, según TechTarget, más de 22,6 millones de instancias expuestas y potencialmente vulnerables. CybelAngel cita unos 2,24 millones de hosts accesibles desde internet que indican usar PHP. Las cifras miden cosas distintas y no son directamente comparables.
¿Por qué difieren tanto las cifras?
Porque se cuentan cosas distintas: instancias, hosts, direcciones IP o servicios. En un host de alojamiento compartido puede haber cientos de sitios web. Además, muchos servidores no muestran su versión de PHP y otros muestran un número antiguo aunque tengan aplicado un backport.
¿Expuesto significa que un servidor ha sido atacado?
No. Expuesto significa solo que un servicio PHP es accesible desde internet y, según rasgos externos, podría ser vulnerable. Estos recuentos no dicen nada sobre ataques reales.
¿Qué cifra es importante para mi empresa?
La cifra de sus propios sistemas PHP accesibles públicamente y cuántos de ellos están parcheados de forma acreditada. Las cifras mundiales muestran la magnitud, pero no sustituyen el inventario propio.