ग्लोबल NULL Record Diagnostic Checker
Domain Name System च्या अत्यंत स्ट्रक्चर्ड हायरार्कीमध्ये (hierarchy), NULL रेकॉर्ड हा आतापर्यंत कोडिफाय (codify) केलेल्या डेटा प्रकारांपैकी सर्वात ॲनोमॅलस (anomalous) आणि लूजली डिफाईंड प्रकार आहे. मूळ RFC 1035 स्पेसिफिकेशनमध्ये नमूद केलेले, NULL रेकॉर्ड फॉरमॅटिंग नियम, सिंटॅक्स कन्सट्रेन्ट्स (constraints) किंवा इंटरनल सिमेंटिक्सपासून (semantics) पूर्णपणे मुक्त आहे. IP ॲड्रेसची अपेक्षा करणाऱ्या A रेकॉर्डच्या किंवा प्रायोरिटी इंटिजर आणि होस्टनेम आवश्यक असणाऱ्या MX रेकॉर्डच्या विपरीत, NULL रेकॉर्ड केवळ एक रिकामा कंटेनर (container) म्हणून अस्तित्वात आहे. हे ऑथॉरिटेटिव्ह नेमसर्व्हर कन्टेंट्सवर कोणतेही व्हॅलिडेशन न लावता, जास्तीत जास्त 65,535 बाइट्स लांबीपर्यंतचे अर्बिट्ररी (arbitrary) बायनरी डेटा पेलोड्स ठेवण्यासाठी इंजिनिअर केले गेले होते.
The Experimental Sandbox
जेव्हा इंटरनेटच्या संस्थापक इंजिनिअर्सनी DNS आर्किटेक्चर विकसित केले, तेव्हा त्यांनी ओळखले की सिस्टमला भविष्यातील नेटवर्किंग प्रोटोकॉल्सशी जुळवून घेण्याची आवश्यकता असेल जे स्टँडर्ड A, MX किंवा TXT कन्सट्रेन्ट्समध्ये व्यवस्थित बसत नाहीत. NULL रेकॉर्ड एक्सपेरिमेंटल प्रोटोकॉल एक्सटेंशन्स आणि ॲकॅडमिक रिसर्चसाठी एक डेव्हलपर सँडबॉक्स म्हणून स्पष्टपणे राखून ठेवण्यात आले होते. कारण BIND सॉफ्टवेअर NULL पेलोडवर कोणतीही एनकोडिंग चेक्स किंवा कॅरेक्टर लिमिट्स (पॅकेट साईझ वगळता) लागू करत नाही, त्यामुळे नेटवर्क इंजिनिअर्स रॉ (raw), अनफॉर्मॅटेड हेक्साडेसिमल (hexadecimal) स्ट्रिंग्स, कस्टम क्रिप्टोग्राफिक हॅशेस किंवा प्रोप्रायटरी बायनरी राउटिंग डेटा थेट झोन फाईलमध्ये इंजेक्ट करू शकत असत जेणेकरून स्पेशलाईझ्ड क्लायंट ॲप्लिकेशन्स त्याचे पार्स (parse) करू शकतील.
हे प्रोडक्शनमध्ये का फेल झाले
त्याच्या थिअरेटिकल (theoretical) लवचिकते असूनही, आधुनिक प्रोडक्शन एन्व्हायरनमेंट्समध्ये NULL रेकॉर्ड व्यावहारिकदृष्ट्या अस्तित्वात नाही. प्राथमिक समस्या इंटरऑपरेबिलिटीची (interoperability) होती. वेगवेगळ्या सॉफ्टवेअर क्लायंट्सना अर्बिट्ररी (arbitrary) बायनरी डेटा इंटरप्रिट (interpret) करण्यासाठी कोणताही स्टँडर्ड वे (standard way) नसल्यामुळे, तो फक्त क्लोज्ड इकोसिस्टममध्ये (ecosystems) वापरला जाऊ शकत होता जिथे ॲडमिनिस्ट्रेटर DNS सर्व्हर आणि क्लायंट ॲप्लिकेशन दोन्ही नियंत्रित करत असे. शिवाय, TXT रेकॉर्डचा उदय—जे स्टँडर्ड REST APIs आणि वेब ॲप्लिकेशन्ससाठी पार्स (parse) करणे खूप सोपे आहे—आणि EDNS (Extension Mechanisms for DNS) च्या डिप्लॉयमेंटने रिअल-वर्ल्ड ॲप्लिकेशन डेटासाठी NULL रेकॉर्डचे रॉ (raw) बायनरी पेलोड पूर्णपणे ऑब्सोलेट (obsolete) केले.
Covert Channels आणि Security Audits
आज, हायली स्पेशलाईझ्ड सायबरसिक्युरिटी कॉन्टेक्स्ट्सच्या (contexts) बाहेर NULL रेकॉर्ड क्वचितच पाहिले जाते. Advanced Persistent Threats (APTs) आणि सोफिस्टिकेटेड (sophisticated) मालवेअर (malware) व्हेरियंट्सनी ऐतिहासिकदृष्ट्या कोव्हर्ट कमांड-अँड-कंट्रोल (C2) चॅनेल्स एस्टॅब्लिश करण्यासाठी NULL रेकॉर्ड्स वापरण्याचा प्रयत्न केला आहे. NULL रेकॉर्ड्समध्ये लपलेल्या अर्बिट्ररी (arbitrary) बायनरी ब्लॉब्सद्वारे (blobs) एक्सफिल्ट्रेटेड (exfiltrated) डेटा एनकोड (encode) करून किंवा मालिशियस (malicious) इन्स्ट्रक्शन्स फेच (fetch) करून, ॲटॅकर्स ॲप्लिकेशन-लेयर फायरवॉल्स बायपास करू शकतात, कारण बहुतांश कॉर्पोरेट नेटवर्क्स पोर्ट 53 DNS ट्रॅफिकला अंधपणे परवानगी देतात. आज ग्लोबल NULL लुकअप रन करणे काटेकोरपणे डीप-लेव्हल पेनेट्रेशन टेस्टिंग (penetration testing), मालवेअर ॲनालिसिस, किंवा इंटरनेट बॅकबोनवर वेगवेगळे एज रिझॉल्व्हर्स (edge resolvers) अनरेग्युलेटेड (unregulated) बायनरी पेलोड्स कसे फिल्टर करतात किंवा पास करतात याचे निरीक्षण करण्यासाठी ॲकॅडमिक प्रोटोकॉल ऑडिटिंग दरम्यान केले जाते.