1 points par GN⁺ 2024-09-18 | 1 commentaires | Partager sur WhatsApp

Avertissement : macOS Sequoia 15 peut contourner le chiffrement DNS

Le chiffrement DNS 101

  • Lorsque vous saisissez un nom d’hôte dans un navigateur web (par exemple apple.com), ce nom doit être converti en adresse IP pour que l’ordinateur puisse se connecter au serveur
  • Cette résolution est généralement effectuée sans chiffrement, ce qui permet au fournisseur d’accès à Internet et à d’autres parties surveillant la connexion de voir les sites visités
  • Pour protéger ces requêtes, Little Snitch 6 propose une nouvelle fonctionnalité : le chiffrement DNS
  • Lorsque le chiffrement DNS est activé, toutes les résolutions de noms sont effectuées sous forme chiffrée via Little Snitch
  • Pour cela, Little Snitch enregistre un proxy DNS, et macOS envoie toutes les requêtes DNS à ce proxy afin qu’elles soient résolues de manière chiffrée

Mais…

  • En enquêtant sur des problèmes liés au DNS dans macOS 15 Sequoia, il a été découvert que certaines requêtes DNS — en particulier celles effectuées via certaines API legacy de bas niveau — n’étaient pas transmises au proxy
  • Il semble qu’un bug de macOS Sequoia fasse que certaines requêtes contournent le proxy DNS installé et soient envoyées sans chiffrement au serveur de noms par défaut du système
  • Ce bug pourrait affecter non seulement Little Snitch, mais aussi tout type de proxy DNS
  • Par conséquent, si vous utilisez la nouvelle fonctionnalité de chiffrement DNS de Little Snitch 6 ou tout autre proxy DNS tiers, vous devez savoir que certaines résolutions DNS peuvent contourner le proxy jusqu’à ce qu’Apple corrige le problème dans une future mise à jour de macOS
  • À noter que les résolutions DNS effectuées via des API de plus haut niveau ne sont pas affectées par ce bug. Par exemple, la navigation web dans Safari ou Chrome bénéficie toujours des requêtes chiffrées. En revanche, Firefox peut être concerné

Comment reproduire le problème

  1. Activez le chiffrement DNS dans les réglages de Little Snitch
  2. Lancez Wireshark avec le filtre de capture port 53
  3. Exécutez le code suivant dans un playground Xcode :
    import Foundation
    let domain = "dnsproxytest.com"
    var result: UnsafeMutablePointer<addrinfo>?
    let status = getaddrinfo(domain, nil, nil, &result)
    
  • Vous pouvez constater dans Wireshark que la requête pour dnsproxytest.com apparaît sans chiffrement sur le port UDP 53 (la valeur par défaut pour les requêtes non chiffrées)
  • Le moniteur réseau de Little Snitch n’affiche par ailleurs aucun trafic lié à cette requête. Cela signifie que la requête a entièrement contourné le filtre réseau
  • Ce bug a été signalé à Apple, et l’on espère un correctif rapide. Des mises à jour continueront d’être publiées

Mise à jour 2024-09-17, 19:10

  • Des investigations supplémentaires montrent que ce bug existe au moins depuis macOS 14.5 Sonoma, et il est possible qu’il soit présent dans des versions encore plus anciennes. Il n’est actuellement pas possible de tester sur des systèmes 14.x plus anciens faute d’y avoir accès

Le résumé de GN⁺

  • Cet article traite d’un bug dans macOS Sequoia 15 qui peut permettre de contourner le chiffrement DNS
  • Le chiffrement DNS est une fonctionnalité importante pour protéger la vie privée des utilisateurs sur Internet
  • Ce bug affecte particulièrement les requêtes DNS effectuées via des API legacy de bas niveau
  • Jusqu’à ce qu’Apple résolve ce problème, les utilisateurs doivent savoir que certaines résolutions DNS peuvent ne pas être chiffrées
  • Parmi les autres projets proposant une fonctionnalité similaire, on peut citer des solutions de filtrage DNS comme Pi-hole

1 commentaires

 
nearfall 2024-09-18

Merci pour cette information importante.
C’est déjà rassurant de savoir que Safari et Chrome semblent, pour l’instant, pouvoir être considérés comme sûrs.