systemadmin.es > LAMP y web > Como eliminar la información sobre versiones de los headers HTTP

Como eliminar la información sobre versiones de los headers HTTP

Tal como vimos ayer, mediante curt, wget o HEAD (que nos indicó funky como comentario) podemos obtener la información de los headers HTTP, entre ellos suele aparecer información sobre el sistema. Veremos como quitar esa información de un Apache con PHP.

En el caso de Apache no podemos indicar al servidor que “firma” queremos, pero podemos indicar que lo reduzca mediante la directiva ServerTokens.

Server: Apache/1.3.34 (Unix) PHP/5.1.2 mod_chroot/0.5

Este parámetro acepta varios niveles, para reducir solamente a “Apache” se debe definir a “Prod“. En el caso de Apache 2 podemos modificar en el fichero extra/httpd-default.conf:

ServerTokens Prod

Su resultado sería:

Server: Apache

En el mismo fichero podemos configurar la firma que incluye en las páginas generadas por el servidor, por ejemplo:

Apache/1.3.34 Server at www.ejemplo.es Port 80

En este caso sería mediante la directiva ServerSignature. Permite tres parámetros: On, Off y EMail, por lo que lo dejaríamos en Off:

ServerSignature Off

Por lo que respeta PHP, incluye por defecto en los headers lo siguiente:

X-Powered-By: PHP/5.2.4-2ubuntu5.4

Para eliminar esta información debemos editar el fichero php.ini (normalmente en /etc/php.ini) modificando la directiva expose_php a Off:

expose_php = Off

En mi opinión especificar las versiones que se usan en los headers NO es un problema de seguridad. Un sistema, si esta bien mantenido, debería poder decir exactamente que versión de software ejecuta, aunque si es cierto que como menos pistas demos más difícil lo van a tener los atacantes, por lo que no esta de más ocultar las versiones.

Deja un comentario:

XHTML - Tags permitidos:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>