Qu’est-ce que le DNS tunneling ?
Le DNS (système de noms de domaine, ou Domain Name System en anglais) est un protocole qui traduit les URL utilisées par les humains en adresses IP lisibles par les machines. Par exemple, paloaltonetworks.fr devient 34.102.246.246.
Sans le DNS, il nous serait impossible de naviguer sur Internet. Il retrouve pour chaque nom de domaine l’adresse IP correspondante, une fonction qui lui vaut souvent le surnom d’« annuaire du web ». Mais ce n’est pas sa seule utilité. Ses autres fonctionnalités sont décrites plus en détail dans le RFC 1034 et le RFC 1035.
Le problème, c’est que les acteurs malveillants n’hésitent pas à exploiter l’omniprésence de ce protocole pour déployer des attaques sophistiquées visant à exfiltrer des informations, le détournant ainsi de sa fonction première : le partage de données. D’où l’importance des solutions de sécurité DNS.
Ces outils sont d’autant plus essentiels lorsque l’on sait qu’un grand nombre d’entreprises laissent leur trafic DNS sans surveillance, partant du principe que l’exfiltration de données ne fait pas partie de ses attributions. Résultat, les attaques DNS se multiplient. Le DNS tunneling en fait partie.
DNS tunneling : décryptage
- Comme son nom l’indique, le DNS tunneling exploite le protocole DNS pour tunnéliser des malwares et d’autres données via un modèle client-serveur. Le principe est simple :
- L’attaquant enregistre un domaine, par exemple « sitemalveillant.fr ». Le serveur du nom de domaine pointe vers le serveur de l’attaquant sur lequel un malware de tunneling est installé.
- L’attaquant utilise le malware pour infecter l’ordinateur de sa victime qui, la plupart du temps, est protégé par le pare-feu de l’entreprise. Comme le pare-feu laisse passer les demandes DNS, l’ordinateur infecté peut envoyer une demande au résolveur DNS. Le résolveur DNS est un serveur qui transmet les demandes d’adresses IP aux serveurs racines et aux serveurs TLD.
- Le résolveur envoie la demande vers le serveur C2 de l’attaquant où le programme de tunneling est installé. Une connexion est maintenant établie entre la victime et l’assaillant sous forme de tunnel passant par le résolveur DNS. L’attaquant peut désormais utiliser ce tunnel pour exfiltrer des données ou à d’autres fins. Et comme la connexion se fait via le résolveur DNS, il est très difficile de remonter la piste jusqu’à l’auteur de l’attaque.
Le DNS tunneling existe depuis deux décennies. Les malwares Morto et Feederbot ont servi à plusieurs attaques. Côté cybercriminels, les groupes DarkHydrus et OilRig ont récemment fait parler d’eux au Moyen-Orient. Le premier en 2018 après une série d’attaques de DNS tunneling contre des organismes publics. Le second, actif depuis 2016, continue de sévir aujourd’hui.
DNS tunneling : comment s’en protéger
Le DNS est un outil extrêmement puissant. Utilisé quasiment partout, il permet aux applications et aux systèmes de trouver les ressources et les services avec lesquels ils doivent interagir. Il sert de base aux communications essentielles au fonctionnement de protocoles plus puissants et de plus haut niveau. Pourtant, sa sécurité est trop souvent négligée. Une lacune grave lorsque l’on sait combien de malwares sont injectés via les protocoles de messagerie ou téléchargés via le protocole HTTP.
Et les acteurs malveillants ne s’y trompent pas. Ils exploitent volontiers ce protocole tolérant, ignoré et sous-estimé pour établir un canal entre leur serveur et l’hôte compromis.
Heureusement, des solutions existent pour se prémunir contre le DNS tunneling. La plateforme de sécurité réseau Palo Alto Networks ou les technologies open-source, par exemple, offrent divers moyens de défense pour protéger les entreprises face à ces attaques :
- Blocage des noms de domaines (ou des adresses IP/régions géographiques) en fonction de leur réputation ou de la menace qu’ils représentent
- Déploiement de règles pour identifier les chaînes de caractères suspectes dans les requêtes DNS
- Restrictions concernant la longueur, le type ou la taille des requêtes DNS entrantes et sortantes
- Durcissement des systèmes d’exploitation clients, sensibilisation aux capacités de résolution des noms et à l’ordre de recherche
- Analyse des comportements des utilisateurs et/ou des systèmes pour identifier automatiquement les anomalies, par exemple des méthodes ou une fréquence d’accès à de nouveaux domaines jugées atypiques
- Nouveau service de sécurité DNS de Palo Alto Networks capable de bloquer les accès aux noms de domaine malveillants.
Sécurité du DNS : les bonnes pratiques
- Formez et sensibilisez vos équipes de sécurité
Mettez en place des actions pédagogiques visant à former vos collaborateurs à l’identification des menaces. Pour éviter toute installation de malware, encouragez-les par ailleurs à faire preuve de discernement avant de cliquer sur un lien. Les formations aux dangers du phishing leur apprendront notamment à reconnaître, à éviter et à signaler les e-mails malveillants. - Élaborez un programme CTI
Gardez constamment un œil sur l’évolution des menaces et développez un programme de Threat Intelligence visant à dresser un tableau précis des différents types de risques et techniques d’attaque les plus utilisés. Cette connaissance vous permettra de déployer les bonnes technologies pour assurer la sécurité de votre réseau.
- Apprenez à interpréter les données DNS
Ne vous contentez pas d’observer le trafic DNS. La collecte de journaux de données DNS n’a d’intérêt que si vous savez décrypter les informations qui s’y trouvent. Savoir interpréter ces données, c’est donner à votre entreprise la possibilité de se protéger des nouvelles menaces sur la couche DNS.
- Ne négligez pas le résolveur DNS
Un serveur DNS compromis est susceptible de fournir des réponses erronées pour rediriger votre trafic vers d’autres systèmes compromis ou préparer une attaque par interception (MITM, Man-In-The-Middle).
- Anticipez les risques liés au télétravail
Pour éviter toute exposition des données sensibles de votre entreprise, vous devez élaborer une stratégie de protection de vos télétravailleurs. Sensibilisez-les aux dangers des connexions Wi-Fi gratuites, publiques ou non sécurisées, en leur rappelant que les attaquants peuvent facilement se placer entre eux et le point de connexion. Enfin, déployez un dispositif MFA (authentification multifacteur) et planifiez la marche à suivre en cas de vol ou de perte d’ordinateur.
- Misez sur une approche globale
Adoptez une approche holistique de la sécurité réseau et veillez à vous équiper de fonctionnalités qui, d’une part, répondent aux différents vecteurs de menaces et, de l’autre, s’intègrent facilement au reste de votre écosystème. Confrontez directement les preuves de concept (PoC) de différents fournisseurs pour choisir la solution adaptée à vos besoins. Chaque environnement est unique et, à ce jour, il n’existe aucun procédé d’évaluation objectif et indépendant de la sécurité DNS.
- Conjuguez alertes ET réponses automatiques
À elles seules, les alertes ne peuvent rien. Elles doivent être complétées par des réponses rapides et automatisées. Certaines menaces sont en effet si véloces dans leur exécution qu’elles rendent les alertes et autres signaux totalement inefficaces. Le temps que vos analystes identifient l’attaque, il sera peut-être déjà trop tard. Vos équipes de sécurité doivent être en mesure de détecter automatiquement les menaces et de confiner les systèmes potentiellement infectés pour éviter toute propagation. Vos collaborateurs respectent-ils les bonnes pratiques ? Exploitent-ils tout le potentiel du service DNS Security de Palo Alto Networks ? Pour le savoir, effectuez votre bilan BPA (Best Practice Assessment).
Lisez notre livre blanc pour découvrir comment bloquer les attaques DNS.