Visite também: Viva o Linux · Dicas-L · NoticiasLinux · SoftwareLivre.org



» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha

[Dica] Minimizando as informações de assinatura do Apache

Linux user
Publicado por Fábio Berbert de Paula em 24/03/2010

Login: fabio, 11001 pontos Homepage: https://twitter.com/fabiodovol
[ Hits: 2684 ]

Minimizando as informações de assinatura do Apache

Embora existam formas de se descobrir a versão do seu Apache, se você puder mascará-la, melhor. Nesta dica mostro como esconder o máximo de informações possíveis.

Exemplo de um servidor com a assinatura full habilitada (teste local, basta substituir localhost pelo site desejado):

$ telnet localhost 80
Trying ::1...
Connected to localhost.
Escape character is '^]'.
GET / HTTP/1.0

HTTP/1.1 302 Found
Date: Wed, 24 Mar 2010 02:47:38 GMT
Server: Apache/2.2.14 (Fedora) DAV/2 PHP/5.3.1 mod_python/3.3.1 Python/2.6.2 mod_ssl/2.2.14 OpenSSL/1.0.0-fips-beta4 mod_perl/2.0.4 Perl/v5.10.0
...

Opa! Olha que legal, de cara descobrimos que o servidor web consultado roda Apache versão 2.2.14 em Fedora GNU/Linux, isso sem contar com as informações sobre PHP, Python, SSL, Perl e o que diabos a mais seu servidor estiver rodando.

NOTA: Para o exemplo habilitei o máximo de informações possíveis, mas a configuração de fábrica expõe a versão do Apache e o sistema operacional hospedeiro.

Agora o script kiddie vai gastar a semana inteira caçando exploits para as versões dos softwares e módulos habilitados.

Solução:

Desativar essa assinatura é simples, basta editar o seu httpd.conf (ou apache2.conf) e mudar a linha:

ServerTokens OS (ou Full)

Para:

ServerTokens Prod

Reinicie o Apache e teste novamente:

$ telnet localhost 80
Trying ::1...
Connected to localhost.
Escape character is '^]'.
GET / HTTP/1.0

HTTP/1.1 302 Found
Date: Wed, 24 Mar 2010 03:01:22 GMT
Server: Apache
... Agora a única informação disponível é que o servidor roda Apache.

Nas versões do Apache 1.3 ou inferiores, a diretiva que controlava isso era a ServerSignature. Ex.:

ServerSignature Off

A partir do Apache 2 a diretiva acima passou a ser controlada pelo ServerTokens, portanto ela será ignorada pelo servidor.

Outras dicas deste autor

Leitura recomendada
   Dica Linux recomendada JBoss - Configurando senha no jmx-console
   Dica Linux recomendada JBoss - Configurando SSL (habilitando HTTPS)
   Dica Linux recomendada JBoss - Configurando senha no Web Console

Comentários
[1] Comentário enviado por andrezc em 29/03/2010 - 07:16h:

Isso realmente é útil, pois com alguém sabendo a versão do Apache por exemplo, pode ser que o atacante busque ou crie um exploit que explore uma falha. É sempre bom ter uma carta na manga ;)

Boa dica ;)

[2] Comentário enviado por thedrummer em 29/03/2010 - 17:10h:

Boa dica mesmo.

Valeu.


Contribuir com comentário
  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Contribuir com: [ Artigo | Conf | Dica | Notícia ]
Responsáveis pelo site: Fábio Berbert de Paula / OYS Academy
Site hospedado por:

Segurança Linux

Site especializado em conteúdo de segurança para Linux.