Cómo saber si una web está afectada por la vulnerabilidad de PHP con la herramienta que OpenAI ha publicado

Las dos vulnerabilidades críticas detectadas en PHP han llevado a administradores y organizaciones de distintos países a revisar servidores y aplicar actualizaciones con urgencia. Algunas webs incluso han optado por desconectarse temporalmente mientras se aplican las correcciones o se comprueba que la instalación está protegida. En ese contexto surge una pregunta bastante lógica para cualquiera que gestione una página, pero también para quien simplemente quiera comprobar qué ocurre detrás de una web: ¿cómo saber si está exponiendo una versión de PHP incluida entre las potencialmente afectadas? OpenAI acaba de publicar una herramienta precisamente para hacer esa primera comprobación.

Estamos ante un pequeño checker acompañado de dos skills para Codex. Uno, phpcheck-url, está pensado para cuando solo tenemos la dirección de una web; el otro, phpcheck-server, para cuando contamos con acceso al servidor. Con una URL, la herramienta intenta identificar la versión de PHP que el servidor expone públicamente; con acceso al sistema puede comprobar directamente la instalación y verificar cuál está sirviendo realmente la web. En ningún caso lanza peticiones de explotación: su función es comparar versiones, no demostrar si un sitio ha sido comprometido.

Para seguir este método tenemos que abrir la aplicación de ChatGPT para ordenadores y seleccionar Codex. El cambio se hace desde el selector situado en la parte superior de la aplicación. Una vez dentro, no hace falta crear ningún proyecto PHP ni tener acceso al servidor si solo queremos analizar una URL pública: podemos empezar directamente desde ese espacio de trabajo.

Herramienta De Openai Para Verificar Php Codex1

Con Codex abierto, el siguiente paso es instalar las dos skills que OpenAI ha preparado para este checker. Para hacerlo, basta con copiar y pegar este comando:

$skill-installer install both skills from https://github.com/openai/php2shell-checker

Codex utilizará el repositorio oficial de OpenAI en GitHub como origen y añadirá phpcheck-url y phpcheck-server a su entorno. No estamos instalando PHP ni descargando una aplicación pesada: simplemente incorporamos unas instrucciones y un pequeño script que Codex podrá reutilizar después para realizar las comprobaciones.

Herramienta De Openai Para Verificar Php Codex2

Después de enviar el comando, Codex identificará las dos skills incluidas en el repositorio y nos pedirá permiso para completar la instalación. En nuestra prueba solicitó autorización para conectarse a Internet y escribir los archivos necesarios en su carpeta de skills. Aquí no hay ningún paso oculto: revisamos las acciones que propone y aceptamos si estamos de acuerdo. Cuando termine, phpcheck-url y phpcheck-server estarán disponibles para utilizarlas a partir del siguiente turno.

Herramienta De Openai Para Verificar Php Codex4

Ahora toca elegir qué queremos comprobar. Si solo disponemos de una URL pública, como en nuestra prueba, la skill adecuada es phpcheck-url; phpcheck-server queda reservada para cuando tenemos acceso directo al servidor. Nosotros utilizamos Expasy.org como ejemplo, pero aquí debes sustituir esa dirección por la web que quieras comprobar. En nuestro caso, pegamos este comando en Codex:

$phpcheck-url check https://expasy.org/

¿Qué ocurre cuando pulsamos Enter? El checker no intenta entrar en la web ni explotar el fallo. Primero hace una petición HEAD, una consulta muy básica que permite preguntar al servidor por información sobre la web sin descargar su contenido. Si el servidor responde que ese método no está permitido, puede recurrir a GET, la petición habitual que hacemos al cargar una página, aunque en este caso la herramienta tampoco analiza su contenido. Lo que busca son datos públicos enviados por el servidor, como las cabeceras Server o X-Powered-By, donde algunas webs revelan qué versión de PHP utilizan.

En nuestra prueba, el resultado fue UNKNOWN. Eso no significa que Expasy.org sea vulnerable, pero tampoco que esté protegida: simplemente indica que la web no expone públicamente una versión de PHP que la herramienta pueda identificar. Si esa información está oculta o no aparece en las cabeceras, Codex no puede ir más allá sin acceso al servidor.

Herramienta De Openai Para Verificar Php Codex5

La herramienta puede devolver tres estados. 

  • VULNERABLE indica que la versión detectada entra dentro del rango que el checker considera afectado
  • OK señala que está por encima del umbral incorporado
  • UNKNOWN significa que no dispone de información suficiente para clasificarla. 

Ninguno equivale por sí solo a una auditoría completa. Incluso un OK parte de la versión que el servidor declara públicamente. 

Si la web es nuestra y tenemos acceso al servidor, la comprobación puede ir un paso más allá. En ese caso podemos utilizar phpcheck-server, que empieza comprobando la versión local de PHP y después permite verificar que coincida con la instalación PHP-FPM o Apache que está sirviendo realmente la web. Esa revisión es bastante más sólida que fiarse únicamente de lo que una página expone desde fuera. Aun así, OpenAI recomienda comprobar también el paquete instalado y los avisos del proveedor, porque algunas distribuciones aplican correcciones retroportadas sin modificar la versión principal.

El valor de esta herramienta está en simplificar una comprobación que, de otro modo, exigiría más conocimientos técnicos. Codex puede indicarnos rápidamente si la versión de PHP que una web expone entra o no en los rangos afectados y, cuando no dispone de datos suficientes, evita sacar una conclusión que no puede sostener. El checker sirve, sobre todo, para orientarnos y saber si necesitamos investigar más o actuar sobre una instalación propia.

Imágenes | Xataka