10 - Registro de Recursos
video: https://youtu.be/... no frontmatter da nota.Registro de Recursos (Resource Records - RR)
Os Registros de Recursos (Resource Records - RR) são as unidades fundamentais de dados que compõem o sistema DNS. Cada informação contida em um arquivo de zona, desde um simples endereço IP até uma chave criptográfica complexa, é armazenada sob o formato de um RR padronizado. A conformidade técnica destes registros com as RFCs 1034 e 1035 é o que garante que servidores DNS de fabricantes diferentes (como BIND, Microsoft DNS e PowerDNS) possam trocar informações de forma íntegra e interoperável.
1. A Estrutura Genérica de um Registro (RFC 1035)
Independentemente do que um registro armazena (seja uma tradução de nome ou um servidor de e-mail), ele segue um formato binário e textual fixo:
[NAME] [TTL] [CLASS] [TYPE] [RDATA]
- NAME (Nome): O nome de domínio ao qual o registro se refere (ex:
www.empresa.com.). - TTL (Time to Live): O tempo em segundos que um servidor recursivo pode manter este registro em cache antes de buscar uma nova versão.
- CLASS (Classe): Quase universalmente definida como
IN(Internet). Outras classes comoCH(Chaos) eHS(Hesiod) são vestígios históricos pouco usados. - TYPE (Tipo): Um código numérico que define a função do registro (ex:
A=1,NS=2,MX=15). - RDATA (Resource Data): O conteúdo variável do registro, cujo formato depende inteiramente do
TYPE(ex: um endereço IP de 32 bits para o tipo A).
Estrutura Binária (Wire Format)
Cada RR no fio da rede é codificado em campos binários:
| Campo | Tamanho | Descrição |
|---|---|---|
| NAME | Variável (DNS wire) | Ponteiros para compressão de mensagens |
| TYPE | 16 bits | Código numérico do tipo |
| CLASS | 16 bits | Quase sempre 1 (IN) |
| TTL | 32 bits | Segundos que pode ser cacheado |
| RDLENGTH | 16 bits | Tamanho em bytes de RDATA |
| RDATA | Variável | Dados do registro conforme o TYPE |
2. Categorização Funcional dos Registros
Os RRs são divididos em categorias estratégicas de acordo com o serviço que suportam na Camada de Aplicação.
Registros de Endereçamento e Apelidos
- A (Type 1): Mapeia nome para endereço IPv4 (32 bits).
- AAAA (Type 28): Mapeia nome para endereço IPv6 (128 bits). Pronuncia-se "quad-A".
- CNAME (Type 5): Define nomes canônicos (apelidos) para hosts existentes.
- PTR (Type 12): Mapeia IP para nome (resolução reversa em
in-addr.arpa). - DNAME (Type 39): Redireciona subdomínios inteiros (CNAME em árvore).
Registros de Infraestrutura e Autoridade
- SOA (Type 6, Start of Authority): O registro mestre da zona, contendo parâmetros de sincronização (serial, refresh, retry, expire, minimum) e o endereço do administrador.
- NS (Type 2, Name Server): Delegam a autoridade de uma zona para servidores específicos.
Registros de Serviços e Comunicação
- MX (Type 15, Mail Exchange): Identificam os servidores que processam e-mails para o domínio, com campo de prioridade.
- SRV (Type 33, Service): Localizam serviços específicos por porta e protocolo (ex:
_sip._udp.empresa.com). - NAPTR (Type 35): Regras de reescrita para URIs (usado em SIP, ENUM).
Registros de Texto e Segurança
- TXT (Type 16, Text Record): Originalmente para notas legíveis por humanos, hoje é o motor por trás do SPF, DKIM e verificações de propriedade de domínio para Google/Microsoft.
- CAA (Type 257, Certification Authority Authorization): Informa ao mundo quais Autoridades Certificadoras (CAs) têm permissão para emitir certificados SSL para aquele domínio, prevenindo fraudes de TLS (RFC 8659).
- DKIM (no TXT): Chaves públicas para validação de assinaturas de e-mail.
Registros DNSSEC (Criptografia)
- DNSKEY (Type 48): Chaves públicas usadas para validar assinaturas RRSIG.
- RRSIG (Type 46): Assinatura digital de um conjunto de registros.
- DS (Type 43): Delegation Signer - hashs das chaves DNSKEY do filho, publicado na zona pai.
- NSEC / NSEC3 (Type 47 / 50): Prova de não-existência (NXDOMAIN autenticado).
3. Tabela Completa dos Registros Mais Comuns
| Type | Código | RFC | Descrição |
|---|---|---|---|
| A | 1 | 1035 | Endereço IPv4 |
| NS | 2 | 1035 | Name Server |
| CNAME | 5 | 1035 | Canonical Name (alias) |
| SOA | 6 | 1035 | Start of Authority |
| PTR | 12 | 1035 | Pointer (reverse DNS) |
| MX | 15 | 1035 | Mail Exchange |
| TXT | 16 | 1035 | Text (SPF, DKIM, verification) |
| AAAA | 28 | 3596 | Endereço IPv6 |
| SRV | 33 | 2782 | Service Locator |
| NAPTR | 35 | 3403 | Naming Authority Pointer |
| DNAME | 39 | 6672 | Delegation Name |
| DS | 43 | 4034 | Delegation Signer (DNSSEC) |
| RRSIG | 46 | 4034 | DNSSEC Signature |
| NSEC | 47 | 4034 | Next Secure (DNSSEC) |
| DNSKEY | 48 | 4034 | DNS Public Key (DNSSEC) |
| NSEC3 | 50 | 5155 | Next Secure v3 (DNSSEC) |
| TLSA | 52 | 6698 | TLS Authentication (DANE) |
| CAA | 257 | 8659 | Certification Authority Authorization |
| SVCB | 64 | 9460 | Service Binding (modern) |
| HTTPS | 65 | 9460 | Service Binding específico para HTTPS |
4. Perspectiva de Cyber Security: O DNS como Base de Dados de Reconhecimento
Para um analista de Cyber Security, os registros de recursos de uma empresa são o mapa da sua superfície de ataque.
Reconhecimento Passivo (Recon)
Atacantes consultam exaustivamente os RRs de uma organização para identificar:
- Infraestrutura de Nuvem: Através de registros CNAME que apontam para AWS, Azure ou GCP.
- Provedores de E-mail: Analisando registros MX e SPF.
- Sistemas Críticos: Buscando nomes como
vpn,dev,db,git,jira,adminatravés de ataques de dicionário ou consultas de registros SRV. - Certificados TLS: Analisando registros CAA para identificar CAs usadas e potenciais vetores de emissão fraudulenta.
Injeção de RRs Maliciosos (Cache Poisoning)
Se um atacante conseguir injetar um registro de recurso falso em um servidor recursivo, ele assume o controle sobre o destino daquele serviço. Um registro NS falsificado permite que o atacante "sequestre" toda a autoridade de uma sub-zona inteira, redirecionando o tráfego de forma invisível. O ataque Kaminsky (2008) demonstrou essa vulnerabilidade em escala global, levando à adoção massiva do DNSSEC.
DNS Tunneling
Atacantes usam registros TXT (em consultas dinâmicas) para exfiltrar dados codificados em Base32/Base64 dentro de subdomínios do tipo dadosencodificados.empresa.com. Solução de detecção: análise estatística de entropia de consultas DNS.
5. Diagnóstico e Auditoria de Registros
Dominar as ferramentas de consulta é fundamental para validar a publicação correta dos RRs:
# Consultando todos os registros comuns de um dominio
dig empresa.com ANY
# Verificando as politicas de seguranca em registros TXT
dig empresa.com TXT
# Consultando o registro de autoridade da zona (SOA)
dig empresa.com SOA
# Listando servidores autoritativos
dig empresa.com NS
# Verificando registros de e-mail
dig empresa.com MX
# Testando DNSSEC
dig +dnssec empresa.com A
dig +dnssec empresa.com DS
# Consultando CAA (para validar politicas de certificacao)
dig empresa.com CAA
Análise de RDLENGTH (Binary Audit): Em análises de pacotes no Wireshark, o campo RDLENGTH informa o tamanho exato em bytes dos dados que seguem, permitindo detectar anomalias ou estouros de buffer em implementações de DNS vulneráveis.
6. O Desafio do TTL na Propagação de Dados
O campo TTL é o maior aliado e o maior inimigo do administrador de redes.
- Baixo TTL (ex: 60s): Permite mudanças rápidas de infraestrutura, mas aumenta a carga de consultas no servidor DNS.
- Alto TTL (ex: 86400s / 1 dia): Reduz o tráfego e aumenta a velocidade de resposta, mas dificulta a correção de um IP errado, que ficará "preso" no cache de milhões de usuários até o tempo expirar.
Estratégia de Migração de IP
Para migrar um IP sem downtime, a prática recomendada é:
- T-7 dias: Baixar TTL de 86400 para 300.
- T-0: Atualizar o IP no DNS autoritativo.
- T+1 hora: Todos os caches já expiraram e apontam para o novo IP.
- T+7 dias: Restaurar TTL para 86400.
7. Registro de Recursos Dinâmico (DDNS)
O Dynamic DNS (DDNS, RFC 2136) permite que registros sejam atualizados dinamicamente via protocolo, sem necessidade de editar arquivos de zona manualmente. Usado em:
- Ambientes Active Directory.
- Provedores de DDNS (DynDNS, No-IP).
- Automação via Terraform/Ansible para atualizar DNS ao criar instâncias.
Requer autenticação TSIG (RFC 2845) para proteger transferências.
8. Conclusão: A Inteligência no Registro
Os Registros de Recursos são muito mais do que simples linhas em um arquivo; eles são a inteligência programável do DNS. Sua correta configuração, seguindo os tipos apropriados para cada função de rede, é o que garante a estabilidade dos serviços web, a fidedignidade dos sistemas de e-mail e a segurança contra ataques de infraestrutura. Dominar a anatomia dos RRs é dominar o fluxo de dados da rede global.
| Atributo | Valor |
|---|---|
| RFC principal | 1035 (formato), 4034 (DNSSEC types) |
| Estrutura | NAME + TTL + CLASS + TYPE + RDLENGTH + RDATA |
| CLASS mais usada | IN (Internet) |
| Quantidade de tipos | 80+ tipos registrados na IANA |
| Tipos mais comuns | A, AAAA, CNAME, MX, NS, SOA, TXT, PTR, SRV |
| Tipos de segurança | DNSKEY, RRSIG, DS, NSEC, NSEC3, CAA, TLSA |
| Mecanismo dinâmico | DDNS (RFC 2136) com TSIG (RFC 2845) |