← Todos los checks
SeguridadSeveridad típica: Bajo

Detector de fugas en cabeceras

Detecta cabeceras como X-Powered-By o Server que revelan tu tecnología y versión a posibles atacantes.

Qué comprueba

Este escaner busca cabeceras de respuesta como X-Powered-By o Server que revelan que tecnologia y version usa tu web. Detecta cuando el servidor comparte de mas sobre su interior. Es informacion que no aporta nada al visitante pero si a un atacante.

Por qué importa

Conocer tu framework y su version exacta permite a un atacante buscar vulnerabilidades conocidas para justo esa version. Le ahorra trabajo de reconocimiento y hace tu web un objetivo mas facil. No es un fallo grave por si solo, pero suma riesgo innecesario.

Cómo se arregla

Configura tu servidor o framework para eliminar u ocultar estas cabeceras informativas en las respuestas. Muchas plataformas tienen una opcion para desactivar la cabecera de tecnologia con una sola linea. Es un cambio rapido que reduce la superficie de informacion expuesta.

Cómo funciona esta comprobación

Scanaris lee las cabeceras de la respuesta principal de tu página y mira dos en concreto. Si existe X-Powered-By con cualquier valor (por ejemplo Express, PHP/8.2.12 o Next.js), abre un hallazgo de severidad baja. Si existe Server y su valor contiene un número de versión (algo como nginx/1.18.0 o Apache/2.4.57), abre otro. Un Server: nginx o Server: cloudflare a secas no se marca: decir qué servidor usas no es un problema; decir qué versión exacta, sí.

Por qué importa

Ninguna de estas dos cabeceras aporta nada al usuario ni al navegador. Existen por costumbre. Lo que sí hacen es ahorrarle trabajo a quien busca una vulnerabilidad: con PHP/7.4.3 o Apache/2.4.49 en la respuesta, el atacante no tiene que adivinar nada, va directo a la lista de fallos conocidos de esa versión y prueba los que tengan exploit público. Es un hallazgo de severidad baja porque por sí solo no abre ninguna puerta; pero es de los más fáciles de cerrar, y los escáneres masivos filtran sus objetivos exactamente por estas cabeceras.

Cómo quitarlas según tu stack

  • Express: app.disable('x-powered-by') al crear la app, o usa helmet(), que la quita junto con otras mejoras.
  • Next.js: envía X-Powered-By: Next.js por defecto. En next.config.js, poweredByHeader: false.
  • PHP: en php.ini, expose_php = Off. En hosting compartido suele poder cambiarse desde el panel o con un .user.ini.
  • ASP.NET: en web.config, dentro de customHeaders, <remove name="X-Powered-By" />, y en IIS desactiva también la cabecera X-AspNet-Version con enableVersionHeader="false".
  • nginx: server_tokens off; en el bloque http. Sigue diciendo "nginx", pero sin versión.
  • Apache: ServerTokens Prod y ServerSignature Off en la configuración principal. Con Prod la cabecera queda en Apache a secas.
  • Vercel, Netlify, Cloudflare Pages: no envían versión en Server. Si ves X-Powered-By ahí, viene de tu framework (Next.js o Express), no de la plataforma.

Si tienes un proxy o CDN delante (Cloudflare, un balanceador), comprueba la respuesta pública: a veces el proxy sustituye la cabecera Server y el problema desaparece solo, pero X-Powered-By suele pasar intacta.

Comprueba que está arreglado

curl -sI https://tudominio.com | grep -iE "^(server|x-powered-by):"

Lo ideal es que no salga X-Powered-By y que Server, si aparece, no lleve número. Prueba también una ruta de la API o una página de error (una URL que no exista): los errores a veces se generan en otra capa y vuelven a añadir la cabecera.

Preguntas frecuentes

Ocultar la versión no arregla la vulnerabilidad. ¿Para qué sirve?

Para no estar en la primera página de resultados de quien busca víctimas. Tienes razón en que la solución de fondo es actualizar: ocultar la versión es el complemento, no el sustituto. Las dos cosas juntas cuestan cinco minutos.

Mi hosting no me deja tocar la configuración del servidor.

En ese caso, elimina al menos X-Powered-By desde tu código o tu .htaccess (Header unset X-Powered-By) y pide al hosting que oculte la versión. Las otras cabeceras de seguridad, las que sí deberías tener, las repasa la comprobación de cabeceras de seguridad.

¿Por qué no se marca "Server: cloudflare"?

Porque no revela nada aprovechable: ni versión ni software concreto detrás. Lo que se busca aquí es información que acorte el camino a un exploit. Qué cabeceras conviene tener y cuáles sobran lo cuenta cabeceras HTTP explicadas para humanos.

Compruébalo en tu web

Escanea tu web gratis y mira si este y otros 44 checks pasan, con un prompt de arreglo por cada fallo.

Escanear mi web gratis

Checks relacionados