logoCert_sugestao2.png

Visão geral sobre DNSSEC

Introdução

Este documento traz algumas informações sobre o DNSSEC, principalmente os problemas que motivam sua utilização, e apresenta uma série de documentos gerados pelo POP-BA abordando os conceitos envolvidos, exemplos de implantações e exemplos de procedimentos que auxiliam na manutenção do serviço.

Entendendo o problema

O DNSSEC soluciona alguns problemas encontrados na atual tecnologia DNS. Falsas informações DNS criam oportunidades para roubo de informações de terceiros ou alteração de dados em diversos tipos de transações como, por exemplo, compras eletrônicas. No protocolo DNS, um ataque onde a informação é corrompida é extremamente difícil de ser detectado e, na prática, impossível de ser prevenido. O objetivo da extensão DNSSEC é assegurar o conteúdo do DNS e impedir estes ataques, validando os dados e garantindo a origem das informações.

DNSSEC introduz segurança no nível estrutural através de uma hierarquia de assinaturas criptográficas adicionadas à registros DNS. Assinatura criptográfica é uma técnica utilizada para validar a origem de uma mensagem e, em alguns casos, garantir que o conteúdo não foi alterado. Dessa forma o cliente consegue validar uma resposta DNS, invés de simplesmente confiar em sua veracidade.

Para entender melhor os problemas no protocolo DNS vamos observar a figura abaixo.

Nessa figura alguns componentes merecem destaque: o resolver é o cliente que está tentando traduzir um nome em um endereço IP (por exemplo, um navegador web iniciando uma conexão para www.pop-ba.rnp.br e buscando o endereço IP desse nome); o recursivo é o servidor que será usado pelo resolver para fazer a consulta recursiva pelo nome em questão; o servidor recursivo consultará um ou mais servidores autoritativos, que poderão ser servidores do tipo master ou slave para a zona em questão; tais servidores possuem os dados locais da zona e podem receber dados dinamicamente através dos Dynamic Updates.

Em especial, um problema que pode ser encontrado nesse fluxo (figura acima) é o ataque de envenamento de cache (do inglês, cache poisoning) nas consultas do recursivo aos servidores masters e slaves. Esse tipo de ataque consiste em observar as consultas DNS e respondê-las com informações falsas antes da resposta original ser entregue. Como o protocolo DNS não provê nenhuma maneira de autenticar ou verificar a integridade da resposta, esse ataque é completamente possível (O único mecanismo disponível no protocolo DNS original é o identificador da consulta (QueryID), que pode ser falsificado facilmente pelo atacante).

Para resolver esse problema, o DNSSEC, através do uso de criptografia assimétrica, define que todos os registros em uma zona agora serão assinados com uma chave privada (assinatura digital). Por outro lado, a chave pública daquela zona ficará disponível para que os servidores que a consultarem possam checar as informações recebidas.

Documentação relacionada

O POP-BA investiu um esforço especial na geração de documentação sobre DNSSEC, a fim de auxiliar e estimular a sua configuração nas instituições que se conectam à RNP na Bahia e interessados em geral. Abaixo listamos os principais documentos gerados: