📖
Introducao à segurança digital
  • Introdução à Segurança Digital
  • Introdução a Linux
  • Criptografia
    • Introdução
    • Definições e Objetivos
    • Criptografia Clássica
    • Criptografia Moderna
    • Guia de Python para criptografia
  • Redes
    • Ataques
      • Arp Cache Poisoning
      • DNS Cache Poisoning
      • Slow Loris
      • Syn Flood
      • WPA Cracking
      • Deauth
    • Ferramentas
      • Resumo das Ferramentas
      • Suíte Aircrack
      • Wireshark
      • Netcat
      • Nmap
      • Netstat
      • Kathará
    • Pacote & Protocolo
    • Camada de Rede
    • Camada de Transporte
    • IANA
    • Three-way Handshake
    • DHCP
    • DNS
    • NAT
    • Pentest
      • FTP
      • SMB
      • SSH
      • VPN
    • Avançado
  • Web
    • Semana 1
      • Introdução à Web
      • Entendendo as URLs
      • Introdução ao HTML e ao CSS
      • Directory Traversal
      • Introdução ao Javascript
      • Cross Site Scripting (XSS)
      • Cookies e sessões
      • Protocolo HTTP
      • Protocolo HTTPS
      • 2020 - XML External Entities (XML) Injection
    • Semana 2
      • Servidores Web
      • PHP (Programação server-side)
      • Command Injection
      • Cookie Poisoning
      • Bancos de Dados
      • SQL Injection
      • Insecure Direct Object Reference (IDOR)
      • 2020 - Portas e Serviços
      • 2020 - API's e Serviços Rest
  • CTF
  • Engenharia Reversa
    • Arquivos
    • Registradores e tipos de dados
    • Hello World em x86
    • Pilha
    • GDB
    • Ghidra
  • Pwning
    • Integer Overflow
    • Buffer Overflow
    • Pwntools
    • Shellcode
    • Proteções
  • Hardware
    • Introdução ao Hardware Hacking
    • Introdução ao Infravermelho
Powered by GitBook
On this page
  • Relembrando o DNS
  • Fazendo uma resolução DNS manual
  • Como funciona o DNS Cache Poisoning
  • Referências

Was this helpful?

  1. Redes
  2. Ataques

DNS Cache Poisoning

PreviousArp Cache PoisoningNextSlow Loris

Last updated 3 years ago

Was this helpful?

Relembrando o DNS

Quando a gente acessa, por exemplo, o , o nosso navegador precisa saber, na verdade, o endereço IP do site que estamos tentando acessar. Para isso, ele manda uma requisição para o DNS Server - que faz um match da URL com o IP. Com isso em mãos, o resultado fica guardado temporariamente na DNS Cache do navegador, ou até do sistema operacional, para que o IP daquele domínio fique salvo e possa ser reutilizado.

Resolução do domínio pelo DNS Server.

Fazendo uma resolução DNS manual

O dig é um comando do Linux utilizado para coletar informações de DNS: ele faz pesquisas de domínio e retorna os IPs dos nomes consultados.

spider@ganesh:~$ dig google.com.br

; <<>> DiG 9.11.5-P4-5.1+deb10u3-Debian <<>> google.com.br
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 9066
;; flags: qr rd ad; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; WARNING: recursion requested but not available

;; QUESTION SECTION:
;google.com.br.                 IN      A

;; ANSWER SECTION:
google.com.br.          0       IN      A       216.58.202.195

;; Query time: 18 msec
;; SERVER: 172.17.27.241#53(172.17.27.241)
;; WHEN: Thu Mar 25 15:58:54 -03 2021
;; MSG SIZE  rcvd: 60

Observe que no campo QUESTION está o domínio do qual queremos saber o IP e no campo ANSWER temos o próprio IP do domínio que estamos consultando.

Como funciona o DNS Cache Poisoning

Uma breve intuição de como funciona

PARABÉNS!! Você acabou de passar na faculdade :). No seu primeiro dia, você pisa no ICMC e precisa ir para a sala 5-001 ter aula de Cálculo. Mas onde ela fica???

Para se achar lá dentro, você abre o Guia dos Bixos e vai rever como funciona a numeração das salas. Chegando lá, você vê tudo vazio e volta pra casa sem entender nada. A questão é: quem te falou que a aula seria nessa sala foi um veterano chatão que só quer ver fogo no parquinho e falou qualquer número.

O DNS Cache Poisoning funciona mais ou menos dessa forma. O atacante (veterano chatão) "envenena" o DNS Cache (nesse caso, a informação que você recebe), podendo redirecionar a vítima para qualquer site que ele quiser, normalmente malicioso.

Como envenenam o DNS Cache

Quando um usuário acessa um site, o navegador precisa realizar toda resolução do endereço IP. Ele faz o request, com um Transaction ID específico (um inteiro de 16 bits aleatório) utilizado para validar a resposta daquele request (só é aceita uma resposta com o mesmo ID). Essa requisição chega até o DNS Server que responde com o respectivo endereço IP utilizando o mesmo Transaction ID.

O atacante, então, precisa estabelecer um Man-In-The-Middle (MITM) para que ele possa interceptar os requests de resolução de domínio, verificar o Transaction ID, forjar uma response maliciosa (válida) e enviar para a vítima.

A vítima salva essa resposta em sua DNS Cache, até que ela expire depois de um tempo definido pelo time-to-live. Então, o domínio precisa ser resolvido novamente.

Referências

DNS as Fast As Possible
O que é envenenamento do cache de DNS?
DNS Cache Poisoning - Computerphile
https://ganesh.icmc.usp.br/