SEGURANÇA
Técnicas
de hacking atuais (Parte I)
Por
Nelson Murilo (nelson@pangeia.com.br)
Este
artigo (dividido em algumas partes) tem por objetivo
discutir as técnicas utilizadas nos ataques mais comuns
na Internet atual, levando em conta o uso percentual
de cada um deles e não a sua complexidade ou difusão,
para efeito do presente trabalho não foram considerados
ataques específicos e postos em prática por hackers
profissionais, a preocupação aqui é com o arsenal
atual do atacante médio.
Os
ataques a seguir estão divididos por categoria, independente
do sistema operacional.
Ataques
a servidores Web
São
basicamente ataques que procuram explorar falhas em
CGI's, buscando alguma funcionalidade que permita
ler e/ou executar algum arquivo no servidor, sem ter
acesso direto ao mesmo. Os mais comuns são:
phf - o mais antigo cgi vulnerável conhecido,
o problema foi descoberto em meados de 1996, seu uso
hoje é restrito a servidores muito antigos e sem nenhuma
manutenção. Com a sintaxe adequada, torna possível
ler e executar qualquer programa no servidor que seja
permitido ao usuário dono do serviço HTTP (Web).
test.cgi - Também bastante antigo, permite
visualizar o conteúdo de um diretório, tornando possível
identificar outros programas vulneráveis ou a localização
de determinados arquivos.
win-c-sample.exe - Acompanha versões antigas
do O'Reilly WebSite Server, permite executar remotamente
comandos no servidor.
Vulnerabilidade em ASP - Permite examinar o
código fonte em ASP, que podem ter, por exemplo senha
para acessar uma base SQL. Prevenção: IIS hotfix ou
SP4.
Vulnerabilidade em Lotus Notes- Permite examinar
arquivos e informações não públicas. Prevenção: Atualização
de versão De uma maneira geral, todo cgi que acompanha
o servidor httpd(Web) pode ser removido, como e' o
caso dos exemplos acima, inclusive.
Ataques
a DNS e NFS
Os
ataques a DNS são notadamente de três tipos, listagem
de mapas, contaminação de cache, acesso remoto não
autorizado. No primeiro caso permite ao atacante ter
uma visão das máquinas e da rede da vítima, tornando
possível então definir a melhor estratégia, as máquinas
mais vulneráveis e/ou com informações privilegiadas.
Já a contaminação remota de cache se dá em servidores
DNS anteriores as versões 4.9.6 e 8.2.2P5, e BIND
nativo do NT, sem o SP6a instalado.
Configurações
que permitem qualquer máquina remota montar sistemas
de arquivos são utilizados facilmente para ter acesso
a áreas do disco da vítima e por vezes é a única ação
necessária para a invasão definitiva. A prevenção
para ataques via NFS e contaminação de cache passam
pela correta configuração desses servicos.
Negação
de serviço
Um ataque deste tipo tem por objetivo não permitir
que um determinado serviço ou servidor responda a
requisições e/ou trave. É muito comum uma guerra de
flood entre desafetos em canais de irc (chat) fazendo
com que um determinado usuário seja desconectado por
não responder ao servidor de irc. A razão é que este
último está demasiado ocupado tentando tratar os milhares
de pacotes que chegam até ele. Existindo uma disputa,
levará vantagem o que conseguir enviar o maior número
de pacotes para um seu oponente. Pode então fazer
parte desse ataque uma invasão a um site ligado a
um link veloz que permita enviar maior quantidade
de pacotes ao inimigo. Nesse caso o tem se visto então
é a ocorrência de vários ataques a backbones com o
imediato objetivo de ter maior poder de fogo que o
adversário. Alguns desses ataques consomem grande
parte da banda de um backbone ocasionando um transtorno
e aos seus usuários naquele período.
Já ataques a servidores têm se valido de vulnerabilidades
com o "Ping of Death", variações de syn flood e ultimamente
um ataque mais difícil de ser rastreado, o "Smurf
Attack". Porém tem-se visto ataques mais simples com
os fontes facilmente localizáveis na Internet, como
"Land" e "Teardrop" e suas variações. Esses ataques
podem ser facilmente evitados atualizando os patches
dos sistemas operacionais e equipamentos, e no caso
do "Smurf attack" filtragem nos roteadores para impedir
pacotes falsificados. Com essas mesmas precauções
também podem ser evitados os ataques a serviços, com
objetivo de consumir todo o processamento da CPU (CPU
100%), que tem se tornado bastante comum em servidores
usando Windows NT.
Exploits
Locais e Remotos
Exploits
são vulnerabilidades descobertas basicamente em programas
escritos sem preocupação com a segurança, e de uma
maneira geral exploram o estouro de pilha de um programa
em execução. Percebeu-se um aumento significativo
deste tipo de ataque quando em outubro de 1996 foi
publicado pelo e-Zine PHRACK, um artigo chamado "Smashing
The Stack For Fun And Profit", detalhando como funciona
e como corromper uma pilha de um programa. Desde então
os exploits têm se avolumado.
Ultimamente
os exploits remotos mais populares são: statd (rcp.statd),
imap, inn, routd, qpop3 e bind.
Novamente a prevenção passa por uma constante atualização
de patches dos fabricantes.
Ataques
a Correio Eletrônico
Sem
dúvida alguma o padrão de ataque mais popular, com
os problemas do 'sendmail' ficando agora mais raros,
são os que tentam explorar uma combinação de serviços.
O ataque consiste em descobrir usuários válidos em
um determinado servidor, usando um dicionário de nomes
comuns e combinando, quando possível, com consultas
ao sendmail. De posse de um nome, as variações mais
comuns são, tentar o próprio nome como senha (o método
é bem mais risível, mas o índice de acerto é preocupante)
e variações de senhas mais comuns. O ponto de autenticação
para os usuários descobertos normalmente é o serviço
de pop3, mas pode ter variações como telnet, rlogin
e ftp. Uma análise dos logs alerta para ataques deste
tipo.
Ataques
a Páginas Web
São
consequências de uma invasão ou vulnerabilidade encontrada
em um programa que atualiza página remotamente (Front
Page, por exemplo). As mudanças de páginas vem crescendo
ultimamente não só para marcar um ataque a um determinado
site, mas existem variações de caráter político e
também alguma inconformidade com a segurança frágil
de um determinado site, que teoricamente teria que
possuir uma segurança melhor, por exemplo sites militares
e provedores de backbone.
Conclusão
Este documento visou a traçar um perfil dos ataques
mais comuns e atualmente usados. Como pode ser visto,
medidas simples podem prevenir todos eles e garantir
uma segurança contra ataques medianos, que são aproximadamente
85% de todos os que ocorrem na Internet.
|