01 - Serviço de Nomes TCP-IP
video: https://youtu.be/... no frontmatter da nota.Serviço de Nomes no TCP/IP
O DNS (Domain Name System) é o serviço de nomes fundamental da suíte de protocolos TCP/IP. Sua função técnica no ecossistema de redes é fornecer um sistema de mapeamento dinâmico que traduz identificadores lógicos baseados em nomes (Hostnames) para endereços numéricos binários (Endereços IP). Sem este serviço, a camada de aplicação do TCP/IP seria impraticável para seres humanos, exigindo o conhecimento exato de cada endereço de rede para a comunicação.
1. Integração com a Pilha TCP/IP
O DNS opera na Camada de Aplicação (Camada 7 do modelo OSI ou Camada 4 do modelo TCP/IP). Ele serve de suporte para praticamente todos os outros serviços da rede, como HTTP, SMTP e SSH.
A Dependência entre Camadas
Antes de um navegador (HTTP) abrir uma conexão TCP com um servidor, ele deve primeiro invocar o serviço de nomes.
- Chamada de Sistema (gethostbyname): A aplicação solicita a tradução ao sistema operacional.
- Encapsulamento DNS: O Resolver gera um pacote DNS (UDP/TCP na Porta 53).
- Resolução: Após obter o IP, a pilha TCP/IP pode finalmente preencher o campo "IP de Destino" no cabeçalho IP e iniciar o roteamento.
Fluxo de Resolução Típico
| Etapa | Componente Envolvido | Resultado |
|---|---|---|
| 1 | Aplicação (ex: browser) | Solicita www.exemplo.com |
| 2 | Biblioteca C (getaddrinfo) |
Verifica cache local (/etc/hosts) |
| 3 | Stub Resolver | Envia query UDP/53 ao resolver configurado |
| 4 | Recursive Resolver | Consulta root, TLD e autoritativo |
| 5 | Camada IP | Recebe IP e monta pacote TCP para o destino |
2. Hostname vs Domain Name: A Estrutura de Nomes
No TCP/IP, a nomenclatura segue uma hierarquia rigorosa.
- Hostname: É o nome de uma máquina individual em uma rede local (ex:
servidor-web). - FQDN (Fully Qualified Domain Name): É o nome completo e único na rede mundial (ex:
servidor-web.empresa.com.br.). - Ponto Final (Trailing Dot): No DNS técnico, o nome completo termina com um ponto, que representa a Raiz da hierarquia global.
Composição Hierárquica
servidor-web . empresa . com . br .
| | | | | |
| | | | | +-- Root (.)
| | | | +-------- TLD (br)
| | | +------------ TLD secundário (com)
| | +--------------------- SLD (empresa)
| +------------------------- Subdomínio
+--------------------------------------- Hostname
| Conceito | Exemplo | Escopo |
|---|---|---|
| Hostname | srv-01 |
Apenas local |
| FQDN | srv-01.lab.empresa.com.br. |
Global |
| Domínio | empresa.com.br |
Zona administrada |
| Subdomínio | lab.empresa.com.br |
Delegação interna |
| Root | . |
Raiz global |
3. Portas Transacionais: UDP e TCP (Porta 53)
O serviço de nomes TCP/IP é único em sua capacidade de transacionar em dois protocolos de transporte simultaneamente.
- UDP na Porta 53: Usado para consultas de resolução rápidas (Queries). O baixo overhead do UDP garante que a latência de resolução não prejudique a experiência do usuário.
- TCP na Porta 53: Mandatório para Transferências de Zona e para consultas cujas respostas excedam o limite de 512 bytes (evitando o truncamento de dados em extensões DNSSEC).
Critérios de Escolha do Transporte
| Situação | Protocolo | Motivo |
|---|---|---|
| Query normal (< 512 bytes) | UDP | Baixo overhead |
| Resposta truncada (flag TC=1) | TCP (retry) | Reconsulta para obter resposta completa |
| Transferência de zona (AXFR/IXFR) | TCP | Confiabilidade e ordenação |
| DNSSEC habilitado | TCP frequente | Tamanho das respostas assinadas |
| DoH (DNS over HTTPS) | TCP/TLS | Privacidade em redes hostis |
| DoT (DNS over TLS) | TCP/TLS | Privacidade no nível de sistema |
4. Tipos de Registros DNS
O serviço de nomes não traduz apenas nomes em IPs. Ele suporta dezenas de tipos de registros para diferentes finalidades.
| Tipo | Função | Exemplo |
|---|---|---|
A |
IPv4 | exemplo.com. IN A 192.0.2.1 |
AAAA |
IPv6 | exemplo.com. IN AAAA 2001:db8::1 |
CNAME |
Alias | www IN CNAME exemplo.com. |
MX |
Mail Exchange | exemplo.com. IN MX 10 mail.exemplo.com. |
TXT |
Texto arbitrário | SPF, DKIM, DMARC, verificação |
NS |
Name Server | Indica servidor autoritativo |
SOA |
Start of Authority | Metadados da zona |
PTR |
Reverse DNS | 1.2.0.192.in-addr.arpa. IN PTR exemplo.com. |
SRV |
Service Locator | _sip._tcp.exemplo.com. IN SRV 10 60 5060 sip.exemplo.com. |
CAA |
Certificate Authority Authorization | Restringe emissão de certificados |
5. Modernização do Serviço: DoH e DoT
Como o DNS clássico é transmitido em texto claro, ele é vulnerável à interceptação e censura. A suíte TCP/IP evoluiu para incluir novos padrões de segurança no serviço de nomes.
DoT (DNS over TLS - RFC 7858)
Encapsula as consultas DNS dentro de um túnel TLS na porta 853. Protege a privacidade do usuário contra o provedor de Internet (ISP).
DoH (DNS over HTTPS - RFC 8484)
Encapsula o DNS dentro de tráfego HTTPS comum na porta 443.
- Impacto Cyber: Torna o tráfego DNS indistinguível do tráfego web normal, dificultando a detecção de exfiltração de dados e o bloqueio de domínios por firewalls de perímetro, mas aumentando a privacidade do usuário final.
Comparativo de Variantes Seguras
| Variante | Porta | Transporte | Caso de Uso Típico |
|---|---|---|---|
| DNS clássico | 53 | UDP/TCP | Backward compatibility |
| DoT | 853 | TCP+TLS | Resolvers em sistemas operacionais |
| DoH | 443 | TCP+TLS+HTTP/2 | Browsers e apps móveis |
| DNSCrypt | 443 | TCP+criptografia própria | Alternativa histórica |
| DoQ (DNS over QUIC) | 853 | QUIC (UDP) | Baixa latência e múltiplas streams |
6. Perspectiva de Cyber Security: Ataques ao Serviço de Nomes
Um serviço de nomes TCP/IP mal configurado é um vetor de ataque crítico.
DNS Hijacking (Sequestro de DNS)
Ocorre quando as configurações de DNS do roteador ou do sistema operacional são alteradas maliciosamente (via malware) para apontar para um servidor DNS controlado pelo atacante.
- O Perigo: Todas as resoluções de nomes passam a ser controladas pelo criminoso, que pode redirecionar logins de bancos para páginas falsas de forma completamente transparente.
DNS Amplification (Ataque de Amplificação)
Atacantes usam servidores DNS abertos para bombardear uma vítima com tráfego massivo.
- O Mecanismo: O atacante envia uma pequena consulta DNS (UDP) usando o IP forjado da vítima como remetente. O servidor DNS responde com um pacote muito maior para a vítima, multiplicando o volume do ataque DDoS por até 50 vezes.
DNS Cache Poisoning
Atacante injeta respostas DNS falsas em caches recursivos, fazendo com que todos os clientes que usem aquele resolver sejam desviados para servidores do atacante até o TTL expirar.
Tabela de Mitigação por Ataque
| Ataque | Mitigação |
|---|---|
| Hijacking | DNSSEC + validação de origem |
| Amplificação | Restringir recursão a clientes autorizados |
| Cache Poisoning | Source port randomization + 0x20 encoding |
| Tunneling DNS | Inspeção de payload + rate limiting |
| NXDOMAIN flood | Response Rate Limiting (RRL) |
7. Auditoria do Serviço de Nomes no TCP/IP
Um profissional de segurança deve saber auditar a configuração de rede.
Verificando o Resolver (Linux)
O arquivo /etc/resolv.conf define qual servidor o sistema operacional usará para o serviço de nomes.
nameserver 8.8.8.8
nameserver 1.1.1.1
options timeout:1 attempts:3 rotate
Analisando Cabeçalhos DNS em Trânsito
Utilizando o tcpdump para observar o diálogo do serviço:
# Captura queries/respostas DNS em tempo real
tcpdump -vvv -n udp port 53
# Filtra apenas consultas a um domínio específico
tcpdump -n -l port 53 | grep --line-buffered "exemplo.com"
# Realiza uma consulta forçando TCP para validar resposta grande
dig +tcp @8.8.8.8 exemple.com ANY
# Verifica DNSSEC do domínio
dig +dnssec www.exemplo.com +short
8. Conclusão: A Importância do DNS no TCP/IP
O DNS é o lubrificante que permite o funcionamento suave da Internet. Ele resolve a dicotomia entre a necessidade humana de nomes significativos e a necessidade da rede de endereçamento binário eficiente. Dominar os fundamentos do serviço de nomes no TCP/IP, especialmente suas portas, fluxos de transporte e novas implementações criptográficas (DoH/DoT), é indispensável para qualquer profissional que atue em infraestrutura, desenvolvimento web ou segurança ofensiva. A configuração correta do serviço de nomes define não apenas a usabilidade, mas a própria segurança lógica de qualquer ambiente conectado à Internet global.