Falha de segurança em servidores na internet

Publicado por Marcelo Ferreira em 01/11/2009

[ Hits: 10.258 ]

 


Falha de segurança em servidores na internet



A internet permite muitas possibilidades, desde o acesso rápido a notícias, encontrar amigos de infância em sites de relacionamento, pagar contas e assistir vídeos. Mas a internet não é só cercada de maravilhas fornecidas através da tecnologia, há também crackers (hackers do mal), furto ou desvio de informações, golpes, assédios e invasões a redes.

O objetivo desta dica é alertar aos administradores como detectar se sua rede está aberta ao público da internet e possui falhas de segurança em seus serviços. Esta dica será descrita para o sistemas operacionais baseados no Debian, como Ubuntu, Xubuntu e muitos outros.

Instalação dos programas

Devemos instalar algumas ferramentas no seu sistema operacional Linux (dig e nessus). Todos os comandos nesta dica serão executados como root:

# aptitude update
# aptitude install dig nessus nessusd


O Nessus é um aplicativo cliente/servidor. Precisamos inicializar o Nessus como servidor (nessusd):

# nessusd -D

No Nessus faz-se necessário criar um usuário para logar no nessusd (servidor Nessus):

# nessus-adduser

O programa pedirá os dados do novo usuário, tais como login, senha, senha em texto plano (padrão) ou encriptada.

Será necessário registrar e atualizar o seu Nessus, acesse o site do Nessus e faça o registro como "HomeFeed". Será enviado para o seu e-mail o código de ativação:

# nessus-fetch --register 7042-E401-2288-C2D6-2269
# nessus-fetch --check
# nessus-fetch --plugins


Consultando servidores DNS na internet

Algumas empresas não configuram seus servidores DNS corretamente, permitindo realizar a consulta a zonas DNS inteiras, revelando assim a lista dos computadores cadastrados no serviço de consultas de nomes da empresa.

Vamos agora tentar descobrir o nome e o endereço de rede IP do servidor DNS de um domínio. Execute o comando abaixo:

# dig -t soa 3cta.eb.mil.br

O comando acima retornará como resposta o nome do SOA, isto é, Start Of Authority, que é o responsável pelo domínio consultado. Agora com o nome do SOA vamos descobrir o seu endereço de rede IP.

# dig -t a dns1.eb.mil.br

O comando retornará o endereço de rede IP. Agora com as informações coletadas vamos a transferência completa da zona DNS.

# dig -t axfr 3cta.eb.mil.br @200.199.248.5

Que ótimo, esta zona está bem configurada e não permitiu a transferência!

Agora vamos executar novamente a sequência de comandos mas em outra zona. Vamos detectar se o DNS realizará a transferência completa da zona.

# dig -t soa dominioalvo.com.br
# dig -t a apolo.planetsys.com.br
# dig -t axfr dominioalvo.com.br @200.155.11.74


Pronto, identificamos um DNS mal configurado, agora temos informações de máquinas que pertencem ao domínio. Temos uma lista com os respectivos nomes e endereços de rede IP. E vale uma dica nunca atribuir o nome da máquina com o serviço, por exemplo, um servidor de e-mails com o nome mail.dominioalvo.com.br e outro servidor ftp com o nome ftp.dominioalvo.com.br.

Testando balanceamento de endereços IPs dos servidores

Vamos confirmar os IPs e verificar se não há balanceamento do ip no servidores. Vamos executar o dig 4 vezes para cada endereço, analisando se o endereço de rede ip será sempre o mesmo. (alguns sites utilizam balanceamento de ip, exemplo www.uol.com.br e www.google.com):

# dig -t a ftp.dominioalvo.com.br; dig -t a ftp.dominioalvo.com.br; dig -t a ftp.dominioalvo.com.br; dig -t a ftp.dominioalvo.com.br
# dig -t a mail.dominioalvo.com.br; dig -t a mail.dominioalvo.com.br; dig -t a mail.dominioalvo.com.br; dig -t a mail.dominioalvo.com.br
# dig -t a mysql.dominioalvo.com.br; dig -t a mysql.dominioalvo.com.br; dig -t a mysql.dominioalvo.com.br; dig -t a mysql.dominioalvo.com.br
# dig -t a www.dominioalvo.com.br; dig -t a www.dominioalvo.com.br; dig -t a www.dominioalvo.com.br; dig -t a www.dominioalvo.com.br


Identificamos que os nomes não respondem por vários endereços de rede IP, eles respondem por um único endereço IP.

Testando falhas de segurança nos endereços IPs dos servidores

O teste será realizado diretamente pelo endereço de rede IP dos servidores, poupando assim a resolução do nome.

Não será demonstrado como utilizar a ferramenta gráfica do Nessus, no VOL a vários artigos sobre o assunto. Vamos gerar o arquivo que conterá os endereços IP a serem testados:

# host ftp.dominioalvo.com.br | awk '{print $4}' > /tmp/ips_alvo.txt
# host mail.dominioalvo.com.br | awk '{print $4}' >> /tmp/ips_alvo.txt
# host mysql.dominioalvo.com.br | awk '{print $4}' >> /tmp/ips_alvo.txt
# host www.dominioalvo.com.br | awk '{print $4}' >> /tmp/ips_alvo.txt


Agora vamos verificar as falhas de segurança através da ferramenta Nessus via console:

# nessus -T html -q 127.0.0.1 1241 <Usuário_do_Nessus> <senha_do_usuário_do_Nessus> /tmp/ips_alvo.txt /tmp/alvo.html -V

Conclusão

Agora abra o arquivo /tmp/alvo.html no seu browser e verifique o resultado dos testes! Você poderá encontrar falhas simples de serem corrigidas, como também algumas que deverão ter seus programas atualizados. Prepare-se, afinal como verificamos neste artigo a internet disponibiliza seus servidores e serviços a todos, muitas vezes com falhas e brechas de segurança e você não estava ciente.

Viva a liberdade...

Outras dicas deste autor

Impressão através do sistema de emulação 3270 SIAFI/HOD para Debian Linux

Instalação de template para monitoramento do Samba no CACTI (Debian)

Instalação de programa de sensores (Gkrellm)

Configuração do Mozilla e Firefox para acesso ao site da Serpro

Nessus como ferramenta para verificação de vulnerabilidades (Debian)

Leitura recomendada

Instalação do MetaTrader 5 em Linux Mint - Robots Localização - Vídeo Nr 21

Sincronizando relógios dos micros na rede sem NTP

Backup e restore das regras de ACLs

Comandos ARP

Pfstat no OpenBSD 4.x

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts