1 pontos por GN⁺ 2024-09-18 | 1 comentários | Compartilhar no WhatsApp

Aviso: o macOS Sequoia 15 pode contornar a criptografia de DNS

Criptografia de DNS 101

  • Quando você digita um nome de host no navegador (por exemplo, apple.com), esse nome precisa ser convertido em um endereço IP para que o computador consiga se conectar ao servidor
  • Essa consulta normalmente é feita sem criptografia, permitindo que o provedor de internet e outras partes que monitoram a conexão vejam quais sites você visita
  • Para proteger essas consultas, o Little Snitch 6 oferece um novo recurso: criptografia de DNS
  • Quando a criptografia de DNS está ativada, todas as consultas de nomes são feitas de forma criptografada por meio do Little Snitch
  • Para isso, o Little Snitch registra um proxy DNS, e o macOS envia todas as requisições de DNS para esse proxy, realizando as consultas de forma criptografada

Mas...

  • Durante a investigação de problemas relacionados a DNS no macOS 15 Sequoia, foi descoberto que algumas requisições de DNS, especialmente as feitas por determinadas APIs legadas de baixo nível, não estão sendo encaminhadas ao proxy
  • Parece haver um bug no macOS Sequoia que faz com que algumas requisições contornem o proxy DNS instalado e sejam enviadas sem criptografia para o servidor de nomes padrão do sistema
  • Esse bug pode afetar não só o Little Snitch, mas qualquer tipo de proxy DNS
  • Portanto, se você usa o novo recurso de criptografia de DNS do Little Snitch 6 ou qualquer outro proxy DNS de terceiros, deve estar ciente de que algumas consultas de DNS podem contornar o proxy até que a Apple corrija isso em uma futura atualização do macOS
  • Vale observar que consultas de DNS feitas por APIs de nível mais alto não são afetadas por esse bug. Por exemplo, a navegação na web no Safari ou no Chrome continua se beneficiando de consultas criptografadas. Já o Firefox pode ser afetado

Como reproduzir

  1. Ative a criptografia de DNS nas configurações do Little Snitch
  2. Inicie o Wireshark com o filtro de captura port 53
  3. Execute o seguinte código em um Playground do Xcode:
    import Foundation
    let domain = "dnsproxytest.com"
    var result: UnsafeMutablePointer<addrinfo>?
    let status = getaddrinfo(domain, nil, nil, &result)
    
  • Você pode confirmar no Wireshark que a consulta para dnsproxytest.com aparece sem criptografia na porta UDP 53 (o padrão para consultas não criptografadas)
  • Além disso, o monitor de rede do Little Snitch não mostra nenhum tráfego referente à consulta. Isso indica que a consulta contornou completamente o filtro de rede
  • Esse bug já foi reportado à Apple, e a expectativa é de uma correção rápida. Novas atualizações serão publicadas conforme houver novidades

Atualização 2024-09-17, 19:10

  • Investigações adicionais mostraram que esse bug existe pelo menos desde o macOS 14.5 Sonoma, e pode estar presente também em versões anteriores. No momento, não há acesso a sistemas 14.x mais antigos para realizar testes

Resumo do GN⁺

  • Este artigo trata de um bug no macOS Sequoia 15 que pode permitir o contorno da criptografia de DNS
  • A criptografia de DNS é um recurso importante para proteger a privacidade dos usuários na internet
  • Esse bug afeta especialmente requisições de DNS feitas por APIs legadas de baixo nível
  • Até que a Apple resolva o problema, os usuários devem estar cientes de que algumas consultas de DNS podem não ser criptografadas
  • Outros projetos com funcionalidade semelhante incluem soluções de filtragem de DNS como o Pi-hole

1 comentários

 
nearfall 2024-09-18

Obrigado pelas informações importantes.
Antes de mais nada, é um alívio saber que Safari e Chrome parecem estar seguros.