Antes de mais nada, um artigo da Wikipedia sobre Segurança através do Obscurity oferece uma boa visão de porque esconder o número da versão vulnerável em vez de corrigir a vulnerabilidade real não é uma boa ideia.
Escondendo a versão do PostgreSQL. O protocolo PostgreSQL não revela a versão real do servidor para os clientes de conexão na frase de inicialização da conexão (consulte link ). Assim, o scanner deve ser capaz de se conectar e autenticar no servidor PostgreSQL, tornando-o capaz de emitir a consulta SQL SELECT version () (veja link ). Se um scanner pudesse executar este comando, precisaria autenticar.
- ativar a autenticação;
- bloqueia portas TCP do PostgreSQL com um firewall
Escondendo a versão do sistema operacional. Esse é um processo mais complicado, pois vários softwares de servidor podem revelar a versão do sistema operacional em seu protocolo de inicialização. Eu não conheço nenhum servidor que faça isso.
- bloqueia portas TCP desnecessárias com um firewall