Seguranca_003_FATEC_2012

Download Report

Transcript Seguranca_003_FATEC_2012

Roteiro
•
•
•
•
Ataques
Motivação para o hacking
Planejamento de um ataque
Tipos de Ataques
–
–
–
–
–
–
–
–
–
–
–
Engenharia social
Trashing
Packet Sniffer
Port Scanning
Spoofing
DDoS - Distributed Denial of Service
Syn Flooding
Smurf
Buffer Overflow
Bombas Lógicas
Password Crackers
Ataques
Ataque é toda ação realizada com o objetivo ou não
de causar danos.
Pode ser ativo, tendo por resultado a alteração dos dados.
Pode ser passivo, tendo por resultado a obtenção da
informação (escuta oculta de transmissões): liberação de
conteúdos de mensagens, análise de tráfico)
Conjunto de informações que são comprometidos:
Confidencialidade: Obtenção não autorizada de informação.
Integridade: modificação não autorizada de informação.
Disponibilidade: inacessibilidade de um recurso ou
informação.
Ataque típico a uma Rede
Planejamento de um ataque
 Primeiro Passo
– Obtenção de informações sobre o
sistema-alvo
 Segundo Passo
– Ataque ao sistema
Planejamento de um ataque
 Primeiro passo: obter informações sobre o
sistema a ser atacado;
 Footprinting : descobrir todas as informações
relacionadas a tecnologias de Internet,
Intranet, acesso remoto, e extranet.
– A partir do resultado do Footprint o ataque
pode ser bem planejado e executado.
Objetivos comuns de Footprint
 Levantamento de Informações de Domínios:
– Nomes de domínios.
– Responsáveis pelos domínios
– Servidores de domínios.
 Identificação do SO de máquina-alvo
(Fingerprint )
 Descobrir sub-redes.
 Serviços TCP e UDP disponíveis.
 Topologia da rede.
Objetivos comuns de Footprint
 Contas de Email, FTP e outros serviços.
 Nomes de usuários e de grupos.
 Banners que identificam versões de
serviços.
 Identificação de roteador e Tabelas de
roteamento.
 Servidores ocultos por NAT (Network
Address Translator) .
 Endereços de e-mails.
Técnicas e ferramentas para Footprinting
 Levantamento de Informações do Alvo
 Dumpest diving ou trashing
 Engenharia Social
 Ataques físicos
 Packet sniffing
 Port Scanning
 Scanning de Vulnerabilidades
 IP Spoofing
Levantamento de Informações do alvo
Consulta na Base Whois (Internic).
whois <dominio>
whois <ip/dominio>@registro.br
fwhois <dominio>
xwhois <dominio> (ferramenta Linux)
 Procura na FAPESP (base do país)
https://registro.br/cgi-bin/whois/?c
 O domínio procurado está num provedor
ou numa estação da própria empresa ?
Levantamento de Informações do alvo
Outros comandos empregados :
Consultando toda a base DNS:
>host –l –v –t any <empresa>.com.br
Descobrindo qual é o servidor de e-mail:
>host –t mx <empresa>.com.br
Descobrindo os IPs de servidores DNS:
>host –t ns <empresa>.com.br
Buscando informações sobre o servidor DNS:
>dig –t ns <empresa>.com.br
Levantamento de Informações do alvo
Varredura nas informações de um domínio
(consultando CNAME)
CNAME = nomes canônicos
>nslookup
Set type=cname
www.<empresa>.com.br
Levantamento de rotas de pacotes numa redes
(quais servidores e roteadores existem, a
topologia da rede e identificar a estrutura de
segurança), através do utilitário traceroute (Linux,
Unix) ou tracert (Windows)
>traceroute www.fatecguaratingueta.edu.br
Dumpster Diving ou Trashing
 Trashing = vasculhar lixo
 Também chamada de dumper diver (mergulhador
de lixo), é uma técnica utilizada para conseguir
informações privilegiadas que potencializam as
tentativas de quebra de senha e invasões.
 É legal, pois as informações não são roubadas.
 Verificação do lixo, à procura de informações
 Nomes de contas, senhas;
 Informações pessoais e confidenciais;
 Dica :Todos os papéis com informações
importantes devem ser inutilizados (fragmentador
de papéis);
Engenharia Social
 Técnica que explora fraquezas humanas e sociais,
em vez de explorar a tecnologia;
 Uso de falsa identidade;
 Explora boa vontade e boa fé das pessoas;
 Uso de psicologia e de técnicas de intimidação;
 O famoso hacker Kevin Mitnick, utilizava
intensivamente técnicas de engenharia social.
 Certa vez, se fazendo passar por um alto executivo
da Pacific Bell, conseguiu acesso a um memorando
interno apenas pedindo à secretária do autor do
memorando que enviasse uma cópia via fax.
Engenharia Social - Exemplos
 Se fazer passar por um alto funcionário;
 Analisar documentos em cima da mesa ou do





computador de pessoas distraídas;
Entrar pela porta dos fundos ou garagem;
Namorar alguém da organização;
Se disfarçar de técnico ou entregador de flores ou
pizzas;
Inserir bugs de propósito para, ao corrigir, ter
acesso aos computadores;
E-mails falsos pedindo dados em nome do banco;
Pergunta : Como proteger a rede deste tipo de ataque?
Ataques físicos
 Ataque em que são roubados equipamentos,
software ou fitas magnéticas, constitui um método
menos comum utilizado em um ataque.
 Com o acesso direto ao sistema, além do roubo de
equipamentos, é possível executar uma série de
ações maliciosas, como:
 copiar documentos confidenciais,
 ler e-mails e modificar arquivos importantes,
 implantar bombas lógicas,
 alterar configurações,

aumentar privilégios de usuários.
Sniffer (Farejador)
Packet Sniffing
 Farejamento de pacotes (packet sniffing)
 Também conhecido como passive





eavesdropping (escuta passiva);
Captura dos pacotes diretamente da rede;
Originalmente, são softwares de resolução de
problemas de rede;
Seu acesso é o segmento de rede;
Faz uso de filtros (IPs, serviços, conteúdos);
Senhas de FTP, Telnet e POP podem ser
capturadas;
Packet Sniffing
 Fácil, em redes baseadas em Hubs.
 Não é possível capturar dados em redes
com switches, com sniffers “simples”.
 Porém, existe a possibilidade através de
“ArpSpoofing”.
 Exemplos de sniffers : tcpdump, wireshark
(antigo ethereal).
TCPDump – Capturando tráfego
• Toda a rede:
>tcpdump –s 1518 –vv –l –n –w /tmp/teste
• Tráfego de FTP:
>tcpdump –s 1518 –vv –l –n port 21 –w /tmp/ftp.log
• Tráfego de SMTP:
>tcpdump –s 1518 –vv –l –n port 25 –w
/tmp/smtp.log
Tráfego de POP:
>tcpdump –s 1518 –vv –l –n port 110
–w /tmp/pop.log
Contramedidas - Sniffer
 Ataques de sniffers podem ser evitados se a





empresa tiver uma política quanto ao uso de suas
máquinas de trabalho.
Políticas rígidas estendem-se a atividades via
emails e Web com impossibilidade de download.
Utilizar switches no lugar de hubs, o que dificulta
sniffers e melhora o desempenho da rede.
Uso de protocolos que empregam a criptografia,
como o SSH.
Uso de criptografia em informações confidenciais
que trafegam na rede, como em e-mails.
Criação de VLANs (LANs Virtuais)
Port Scanning
 Exame de porta (port scanning)
 Port scanners são ferramentas utilizadas
para levantar quais serviços estão
disponíveis por meio do mapeamento de
portas TCP e UDP;
 Pesquisam faixas de endereços IP.
 Descobrem portas abertas (que têm
serviços rodando) .
 Informações sobre o Sistema Operacional
de uma máquina alvo (Fingerprint ) .
Port Scanning
 Exemplo: nmap; (www.nmap.org)
• Utilizado para auditoria de firewalls e IDS;
• Pode identificar o sistema operacional e outros
detalhes do nó (stack fingerprint);
• Identifica as portas abertas, filtradas ou fechada;
• Pode ser usado para Footprint e Fingerprint
# /usr/local/nmap –o (nome_domínio)
Scanning de Vulnerabilidades
 Visa identificar as falhas de um determinado
serviço;
 O serviço pode ter sido descoberto no sistema,
por meio do uso de um port scanner
 Alguns dos riscos que podem ser encontrados
incluem :
– Compartilhamentos não protegidos por senha
– Softwares desatualizados
– Configurações de roteadores potencialmente perigosas
– Possibilidade de negação de serviço, ...
 Ferramenta: NESSUS
Spoofing
 Spoofing = enganar
 Técnica que visa aproveitar a indisponibilidade do serviço
causada pelo ataque DOS que o sobrecarrega de
solicitações, fazendo-se passar por ele.
 Mascarar um IP de origem, de forma a não ser
encontrado; É utilizado em ataques de DOS, nos quais
respostas não são necessárias;
 Simulam o serviço original, desviando e capturando todos
os pacotes que deveriam chegar ao site verdadeiro.
 Ex. : O bombardeio à um site o tira do funcionamento,
criando uma janela de tempo para que um site clone tome o
seu lugar e passe a receber todas as informações dos
webusers.
Conexão impostora (Spoofing)
(a) Tela de conexão verdadeira
(b) Tela de conexão impostora
Ataques ao Sistema
 Ataques de negação de serviços
 Ataques coordenados
 Ataques no nível de aplicação
(D)DoS – Distributed Denial of Service
 Denial of Service = negação de serviço
 Técnica de ataque que visa a indisponibilidade
através da sobrecarga de solicitações de serviço
(flood) e não a invasão do alvo.
 Gera grande tráfego de dados (Redes ou Host)
 Causa uma parada de serviço (temporário)
 Difícil detecção e solução
(D)DoS – Distributed Denial of Service
Syn Flooding
 Explora o mecanismo de estabelecimento de
conexões do TCP, baseado em three-way handshake.
 Consiste no envio, pelo atacante, de um grande
número de pedidos de conexão (SYN), de tal maneira
que o Servidor não é capaz de responder a todas
elas.
– Como cada conexão requer alocação de
recursos, que são finitos, o servidor
sobrecarregado nega-se a atender novos pedidos,
mesmo que legítimos
Syn Flooding
Cliente
Servidor
SYN seq=x
SYN seq=y, ACK x+1
1 - O cliente requisita uma conexão
enviando um SYN ao servidor.
2 - O servidor confirma esta requisição
mandando um SYN-ACK de volta ao
cliente.
3 - O cliente por sua vez responde com
um ACK, e a conexão está estabelecida.
 Um atacante pode não mandar esta
ACK y+1
última mensagem ACK. O servidor irá
esperar por isso por um tempo, já que um
simples congestionamento de rede pode
ser a causa do ACK faltante.
 Um ataque de Syn Flood é feito com os
Three-way handshake
ips forjados (spoof), para que o atacante
não receba os ACKs de suas falsas
solicitações
Contramedidas - Syn Flooding
 Comparar as taxas de requisições de novas
conexões e o número de conexões abertas. Com
isso, mensagens de alerta e ações préconfiguradas podem ser utilizadas quando a taxa
chega a um padrão determinado.
 Outra solução é desabilitar ou bloquear
temporariamente todos os pacotes SYN enviados
ao host atacado, após uma determinada taxa de
conexão. Isso mantém o restante do sistema em
funcionamento, ao mesmo tempo que desabilita
novas conexões ao host que está sendo atacado.
Smurf e fraggle
 Ataque do tipo DOS que atua no nível de rede, pelo qual um
grande tráfego de pacotes ping (ICMP echo) é enviado para o
endereço IP de broadcast (difusão) da rede, tendo como
origem o endereço IP da vítima (IP Spoofing).
 Assim, todos os hosts da rede recebem a requisição ICMP
echo, passando todos eles a responderem para o endereço de
origem, que é falsificado.
 A vítima, que teve seu endereço IP falsificado, recebe os
pacotes de todos os hosts, ficando impossibilitada de executar
suas funções normais, sofrendo assim uma negação de
serviço.
 Fraggle é um tipo de ataque parecido com o Smurf, porém
utiliza pacotes UDP Echo, em vez de pacotes ICMP echo.
Smurf e fraggle
Contramedidas - Smurf e fraggle
 Configurar o roteador de modo a não receber ou
deixar passar pacotes para endereços de
broadcast por meio de suas interfaces de rede.
 Os hosts também podem ser configurados de
modo a não responderem a pacotes ICMP echo
para o endereço de broadcast.
 Alguns roteadores possuem mecanismos (Co
mmitted Access Rate (CAR) ) que limitam o
tráfego de determinados pacotes a uma
determinada banda.
Ataques no nível de aplicação
 Exploram falhas em protocolos de aplicação
e nas próprias aplicações
 Alvos potenciais incluem...
– Servidores FTP
– Servidores de e-mail
– Aplicações de usuários, ...
 Formas de ataque incluem...
– Buffer overflow, vírus, cavalos de Tróia,
vermes, password crackers
Buffer Overflow
 Introdução
– Condição onde um programa permite que a área de
memória de um buffer seja utilizada além da área
reservada.
– A causa raiz para o Buffer Overflow é que linguagens tais
como C e C++ são inseguras pois, não fazem verificações
de limites de arrays ou ponteiros.
– Rotinas tais com strcpy, strcat, sprintf, gets e scanf são
inseguras.
 Conseqüências
– Pode afetar disponibilidade, controle de acesso e outros
serviços de segurança (execução de código injetado).
Buffer Overflow
– Plataforma
• Linguagens C, C++, Fortran e Assembly.
• Os sistemas operacionais mais utilizados são
vulneráveis.
– Recursos requeridos
• Não há.
– Severidade
• Muito alta.
– Probabilidade de exploração
• Alta para Muito Alta.
Buffer Overflow
Buffer Overflow
(a) Situação na qual programa principal está executando
(b) Depois que procedimento A foi chamado
(c) Transbordo de buffer mostrado em cinza
Bombas Lógicas
 Código secreto inserido em um programa legítimo,
normalmente desenvolvido e/ou mantido por algum
funcionário da organização;
– Com potencial para causar danos
– Programa funciona bem desde que o funcionário
alimente-o periodicamente com uma senha;
– Se o funcionário for despedido, o programa não
será alimentado com a senha. Com isso, a bomba
Explode.
Bombas Lógicas
 As ações causadas por uma bomba lógica
incluem…
– Apagar todo o disco
– Apagar arquivos aleatoriamente
– Realizar alterações difíceis de serem detectadas em
programas importantes
– Criptografar arquivos essenciais
Password Crackers
 Password Crackers = quebradores de senhas
 Técnica utilizada para conseguir identificar uma senha de
acesso. O êxito desta técnica está diretamente ligado à
complexidade da senha.
Ataque por força bruta :
Para senha de até 8 caracteres teremos cerca
de 253 tentativas.
Ataque com uso de dicionário :
Utilizar palavras do dicionário, como : nomes,
apelidos, datas de nascimento, etc.
Exemplos : SENHA FRACA = 123456
SENHA FORTE = t2D8#u@p
Password Crackers
Poder Computacional
Pentium II 350 Mhz
1 milhão de tentativas por minuto
Senha : H8i$2/%p (complexa com 8 caracteres)
36 anos
Senha : b43#1X (complexa com 6 caracteres)
6 dias
Senha : *9nY (complexa com 4 caracteres)
4 horas
Resultados obtidos em laboratório e associados à descoberta
de todas as senhas possíveis.
Password Crackers
Exemplo de Softwares Password Crackers :
OPHCrack
Cain and Abel
John the Ripper
Aircrack
Airsnort
Unsecure – Dica do Edson
NetKeyView
PPa
Metodologia Microsoft
para análise de riscos
Anatomia de um ataque
Categorias de ataques (Microsoft
STRIDE)
 Spoofing – tentativa de acesso com uma identidade
falsa. Pode ser feito através de uso de credenciais
falsas.
 Tampering – modificação não autorizada de dados.
 Repudiation – capacidade de usuários em negar a
execução de ações.
 Information disclosure – exposição não desejada
de dados.
 Denial of service – tornar um sistema ou aplicação
indisponível.
 Elevation of privilege – usuário, com privilégios
limitados, obtém privilégios menos restritivos.
Contramedidas (Ou controles)
• Para Spoofing
– Usar autenticação forte.
– Não armazenar ou transmitir senhas em texto
plano.
• Para Tampering
– Data hashing.
– Assinaturas digitais.
– Uso de protocolos com controle de
integridade das mensagens.
Contramedidas (Ou controles)
• Contra Repudiation
– Assinatura digital.
– Trilhas para auditoria.
• Contra DoS
– Validar e filtrar entradas.
• Contra Elevation of privilege
– Dar autorização para o menor número de
recursos.