Site Meter Ainda DNSSec e Dominios b.br - Segurança na Microsoft - Site Home - TechNet Blogs

Segurança na Microsoft

Comentários e Análises sobre Segurança da Informação, por Fernando Cima

Ainda DNSSec e Dominios b.br

Ainda DNSSec e Dominios b.br

  • Comments 3
  • Likes

Continuo na busca do motivo pelo qual os dominios b.br com DNSSEC garantiriam mais segurança para os usuários de Internet Banking. Um comentário anônimo no meu post anterior deu uma pista: o DNSSEC trabalha em uma camada mais baixa que as outras soluções de segurança, notadamente o HTTP com SSL. Seria essa uma vantagem?

O DNSSEC realmente trabalha em uma camada bem baixa, dentro o mecanismo de resolução de nomes da Internet. Resolver um nome, como todo mundo provavelmente sabe, significa traduzir um nome como www.contosobank.b.br para um endereço IP como 200.1.2.3, que então é utilizado para comunicação com o site. É também possível fazer a operação inversa, obtendo um nome a partir de um endereço IP.

Justamente por trabalhar nessa camada baixa, tudo o que o DNSSEC pode garantir é que o IP 200.1.2.3 realmente corresponde ao o nome www.contosobank.b.br. Nada mais do que isso. (para ser honesto, o .b.br também nos diz que se trata de um banco brasileiro)

É um bom começo, mas de fazer a resolução do nome até o cliente efetivamente se comunicar com o banco ainda vai um longo caminho, também sujeito a intempéries e ataques. E é aqui que o DNSSEC mostra as suas limitações. Por exemplo, um atacante pode subverter o roteamento do provedor e redirecionar toda a comunicação do IP 200.1.2.3 para o seu próprio computador, fazendo um ataque de man-in-the-middle (ou talvez man-in-the-end!). E DNSSEC não tem como fazer nada para impedir isso - ele já faz a parte dele resolvendo o nome corretamente, e é só.

Por isso trabalhar em uma camada mais baixa é uma desvantagem e não uma vantagem. Um protocolo nada pode fazer contra ataques feitos nas camadas de cima, como é o caso do roteamento no exemplo anterior. Quanto mais alta a camada, quanto mais perto o mecanismo de segurança estiver próximo do que efetivamente precisa ser protegido - que no caso do Internet Banking são as transações financeiras - maior será a segurança deste mecanismo.

Aqui então de novo o DNSSEC perde em comparação com o uso de HTTP com SSL. O SSL vai trabalhar bem acima, em camada de aplicação, autenticando e criando um canal seguro fim-a-fim entre os cliente e o site do banco. Isso faz com que o SSL consiga proteger o cliente contra ataques por exemplo feitos em cima do roteamento ou mesmo sobre a resolução de nomes. Em resumo, o HTTP com SSL fornece toda a proteção fornecida pelo DNSSEC e mais um pouco para o Internet Banking.

Antes de terminar, dois pontos que também valem a pena se ressaltar. O primeiro é que o único tipo de ataque contra uma camada baixa que não pode ser evitado em uma camada mais alta é a negação de serviço. É por isso por exemplo que 802.1x protege contra ataques de flood de rede e o IPsec não. O DNSSEC evita por exemplo que um atacante faça um ataque de spoofing DNS e redirecione todo o tráfego para um IP inexistente, efetivamente tirando o serviço do ar. É uma boa coisa, mas não é essa a ameaça com que os usuários de Internet Banking estão preocupados.

O segundo ponto relevante é que HTTP com SSL também não é uma panacéia. O HTTP com SSL nada pode contra ataques feitos com cross-site scripting ou cross-site request forgery, que exploram vulnerabilidades em uma camada acima da que ele trabalha. A solução no entanto está em subir mais de camada e ficar ainda mais perto do que precisa ser protegido, fazendo autenticação em cada transação por exemplo.

 

Comments
  • Cima,

    O artigo "Security vulnerabilities in DNS and DNSSEC" pode incrementar ainda mais sua reflexão.

    http://csdl2.computer.org/persagen/DLAbsToc.jsp?resourcePath=/dl/proceedings/ares/&toc=comp/proceedings/ares/2007/2775/00/2775toc.xml&DOI=10.1109/ARES.2007.139

    Abstract:

    We present an analysis of security vulnerabilities in the Domain Name System (DNS) and the DNS Security Extensions (DNSSEC). DNS data that is provided by name servers lacks support for data origin authentication and data integrity. This makes DNS vulnerable to man in the middle (MITM) attacks, as well as a range of other attacks. To make DNS more robust, DNSSEC was proposed by the Internet Engineering Task Force (IETF). DNSSEC provides data origin authentication and integrity by using digital signatures. Although DNSSEC provides security for DNS data, it suffers from serious security and operational flaws. We discuss the DNS and DNSSEC architectures, and consider the associated security vulnerabilities.

  • Obrigado pela indicação do artigo. Acabei encontrando o artigo completo disponível em http://www.isg.rhul.ac.uk/~cjm/svidad.pdf. Ele menciona algunsque eu tratei anteriormente, como a dependência na segurança dos provedores, e outros problemas como a dificuldade na troca das chaves de criptografia nas zonas principais.

    De qualquer forma, meu objetivo não é tentar mostrar que o DNSSEC é inseguro. Isso é uma outra questão. O meu ponto é que o DNSSEC não traz nenhuma vantagem para o Internet Banking, porque tudo o que ele pode fazer o HTTP com SSL já faz e muito melhor.

    Abracos e obrigado, - Fernando Cima

  • Em junho do ano passado o Comitê Gestor da Internet anunciou com grande repercussão a criação do domínio

Your comment has been posted.   Close
Thank you, your comment requires moderation so it may take a while to appear.   Close
Leave a Comment