Muchos analizadores de seguridad automáticos han incorporado reglas que alertan sobre la presencia de una versión de software, y en muchas listas de seguridad, la exposición a una persona arbitraria que accede al sistema se menciona como uno de los problemas de seguridad.
Entonces, mi pregunta es: ¿es un problema real y está ocultando que la versión agrega algo real a la seguridad?
Los argumentos a favor de él dicen que ocultar la versión hace que sea más difícil utilizar explotaciones dirigidas, sin embargo, la mayoría de los atacantes ahora tienen kits de explotación automatizados que no toman tiempo para ejecutar cientos de intentos de explotación contra el objetivo, por lo que la diferencia es casi nula para un informado agresor. Y uno que no esté informado no sabrá cómo usar la información de la versión. La ocultación de las versiones también dificulta la autoexploración de las instalaciones vulnerables que se quedan atrás.
También veo que esta práctica es ampliamente ignorada, por ejemplo, la página OWASP que describe esto como técnica de seguridad muestra abiertamente las versiones del software del servidor (OS, Apache, PHP) y el software Wiki. Pero incluso si trata de ocultarlo, la mayoría de las aplicaciones web, especialmente las complejas, se versionan fácilmente mediante huellas dactilares de los diversos contenidos que generan.
¿Vale la pena ocultar la versión para una aplicación web? ¿O para cualquier aplicación / sistema operativo / plataforma?