Vérificateur de diagnostic global d'enregistrement NULL
Dans la hiérarchie hautement structurée du système de noms de domaine, l'enregistrement NULL se distingue comme le type de données le plus anormal et le moins défini jamais codifié. Décrit dans la spécification originale RFC 1035, l'enregistrement NULL est entièrement dépourvu de règles de formatage, de contraintes de syntaxe ou de sémantique interne. Contrairement à un enregistrement A qui attend une adresse IP, ou un enregistrement MX qui nécessite un entier de priorité et un nom d'hôte, l'enregistrement NULL existe uniquement comme un conteneur vide. Il a été conçu pour contenir des payloads de données binaires arbitraires jusqu'à une longueur maximale de 65 535 octets, le serveur de noms faisant autorité n'appliquant aucune validation au contenu.
Le Sandbox Expérimental
Lorsque les ingénieurs fondateurs d'internet ont développé l'architecture DNS, ils ont reconnu que le système devrait s'adapter aux futurs protocoles réseau qui ne s'intégraient pas parfaitement dans les contraintes standard A, MX ou TXT. L'enregistrement NULL a été explicitement réservé comme un bac à sable (sandbox) de développeur pour les extensions de protocoles expérimentaux et la recherche académique. Étant donné que le logiciel BIND n'applique aucune vérification d'encodage ou limite de caractères (autre que la taille du paquet) à un payload NULL, les ingénieurs réseau pouvaient injecter des chaînes hexadécimales brutes et non formatées, des hachages cryptographiques personnalisés ou des données de routage binaire propriétaires directement dans le fichier de zone pour que des applications clientes spécialisées les analysent.
Pourquoi il a échoué en production
Malgré sa flexibilité théorique, l'enregistrement NULL est pratiquement inexistant dans les environnements de production modernes. Le problème principal était l'interopérabilité. Puisqu'il n'y avait aucun moyen standardisé pour que différents clients logiciels interprètent les données binaires arbitraires, il ne pouvait être utilisé que dans des écosystèmes fermés où l'administrateur contrôlait à la fois le serveur DNS et l'application cliente. De plus, l'essor de l'enregistrement TXT — qui est beaucoup plus facile à analyser pour les API REST standard et les applications web — et le déploiement de l'EDNS (Extension Mechanisms for DNS) ont rendu le payload binaire brut de l'enregistrement NULL complètement obsolète pour les données d'applications du monde réel.
Canaux cachés (Covert Channels) et audits de sécurité
Aujourd'hui, l'enregistrement NULL est rarement vu en dehors des contextes de cybersécurité hautement spécialisés. Les Menaces Persistantes Avancées (APT) et les variantes de malwares sophistiquées ont historiquement tenté d'utiliser des enregistrements NULL pour établir des canaux de commande et de contrôle (C2) cachés. En encodant des données exfiltrées ou en récupérant des instructions malveillantes via des blobs binaires arbitraires cachés dans des enregistrements NULL, les attaquants peuvent contourner les pare-feu de couche application, car la plupart des réseaux d'entreprise autorisent aveuglément le trafic DNS du port 53. L'exécution d'une recherche NULL globale aujourd'hui est strictement effectuée lors de tests d'intrusion (pentests) approfondis, d'analyses de malwares ou d'audits de protocoles académiques pour surveiller comment différents résolveurs de périphérie (edge resolvers) filtrent ou transmettent des payloads binaires non réglementés à travers le backbone d'internet.