Máscara de identidad del servidor
Una técnica que a menudo ayuda a ralentizar y confundir a los atacantes es el cambio de identidad del servidor web. Los servidores web suelen enviar su identidad con cada respuesta HTTP en el encabezado del servidor. Apache es particularmente útil aquí, no solo enviando su nombre y versión completa por defecto, sino que también permite que los módulos del servidor agreguen sus versiones también.
Para cambiar la identidad del servidor web Apache, debe ingresar al código fuente, buscar dónde está codificado el nombre "Apache", cambiarlo y volver a compilar el servidor. El mismo efecto se puede lograr usando el
Directiva SecServerSignature:
SecServerSignature "Microsoft-IIS/5.0"
Cabe señalar que, aunque esto funciona bastante bien, los atacantes expertos (y herramientas) pueden utilizar otras técnicas para "huellas digitales" del servidor web. Por ejemplo, los archivos predeterminados, los mensajes de error, el orden de los encabezados salientes, la forma en que el servidor responde a ciertas solicitudes y similares, pueden revelar la verdadera identidad. Buscaré mejorar aún más el soporte para el enmascaramiento de identidad en las futuras versiones de mod_security.
Si cambia la firma de Apache pero le molesta el extraño mensaje en el registro de errores (algunos módulos aún están visibles; esto solo afecta al registro de errores, desde el exterior todavía funciona como se esperaba):
[Fri Jun 11 04:02:28 2004] [notice]
Microsoft-IIS/5.0 mod_ssl/2.8.12
OpenSSL/0.9.6b \ configured --
resuming normal operations
Luego, debe reorganizar el orden de carga de los módulos para permitir que mod_security se ejecute en último lugar, exactamente como se explicó para el chrooting.
Nota
Para que esta directiva funcione, debe dejar / configurar ServerTokens en Full.
Cuando la directiva SecServerSignature se usa para cambiar la firma del servidor público, ModSecurity comenzará a escribir la firma real en el registro de errores, para permitirle identificar el servidor web y los módulos utilizados.