DNS टनलिंग इंडिकेटर चेकर

ब्राउज़र में चलता है नया इंटरनेट सुरक्षा और गोपनीयता

DNS टनल डेटा को क्वेरी के नामों में ही छिपाकर भेजता है, और इससे लॉग में पढ़ा जा सकने वाला निशान बनता है: 63 अक्षर की सीमा के पास के एन्कोडेड लेबल, एक ही ज़ोन के नीचे कभी न दोहराए जाने वाले नाम, और ढेर सारी TXT या NULL क्वेरी। नाम या लॉग लाइनें पेस्ट करें — हर लेबल मापा जाता है, नाम ज़ोन के हिसाब से समूह में रखे जाते हैं और 100 में से इंडिकेटर स्कोर बनता है — सब कुछ आपके ब्राउज़र में ही। नतीजा जाँच की दिशा है, टनल होने का फ़ैसला नहीं।

गोपनीयता: यह टूल पूरी तरह आपके ब्राउज़र में चलता है। आपका इनपुट कभी आपके डिवाइस से बाहर नहीं जाता।
टूल लोड हो रहा है…

DNS टनलिंग क्या है और यह DNS लॉग में कैसे दिखती है?

DNS टनलिंग डेटा को DNS क्वेरी और जवाबों के अंदर ले जाती है — हमलावर के नियंत्रण वाले ज़ोन के नामों के लेबल में एन्कोड करके — ताकि वह उन नेटवर्क से निकल जाए जो DNS तो चलने देते हैं पर बाक़ी सब रोकते हैं, command-and-control या डेटा चोरी के लिए। हर टुकड़े को नया नाम चाहिए, इसलिए यह रिज़ॉल्वर लॉग में एक ही ज़ोन के नीचे बहुत से लंबे, हाई-entropy, कभी न दोहराए जाने वाले सबडोमेन के रूप में दिखती है, अक्सर TXT या NULL क्वेरी के साथ; NIST SP 800-81r3 डेटा चोरी पकड़ने के लिए DNS क्वेरी की मात्रा और पैटर्न पर नज़र रखने की बात करता है।

सुरक्षा नोट: ब्लॉक करने से पहले जाँचें: कई सुरक्षा और telemetry प्रोडक्ट जानबूझकर एन्कोडेड DNS नाम इस्तेमाल करते हैं। पहले क्लाइंट एड्रेस, ज़ोन का मालिक और समय का पैटर्न जुटाएँ, और सबूत सुरक्षित रखें।

DNS टनलिंग इंडिकेटर चेकर कैसे इस्तेमाल करें

  1. अपने रिज़ॉल्वर या कैप्चर से क्वेरी निकालें: जैसे क्वेरी नामों पर sort | uniq -c, dnsmasq या BIND का query लॉग, Windows DNS debug लॉग, Zeek का dns.log या tcpdump का आउटपुट।
  2. 50,000 लाइनों तक पेस्ट करें और "इंडिकेटर जाँचें" दबाएँ।
  3. स्कोर को सबसे व्यस्त ज़ोन वाली टेबल के साथ पढ़ें: जिस ज़ोन में बहुत से एन्कोडेड दिखने वाले नाम हों, जाँच उसी की करनी है।
  4. कोई क़दम उठाने से पहले पुष्टि करें: क्वेरी भेजने वाला क्लाइंट, ज़ोन का मालिक, और क्या पैटर्न समय के साथ जारी रहता है।

DNS टनलिंग इंडिकेटर चेकर की खूबियाँ

  • सादे क्वेरी नाम, sort | uniq -c से बनी "गिनती नाम" सूचियाँ, और dnsmasq, BIND, Windows DNS debug लॉग, Zeek व tcpdump की लॉग लाइनें पढ़ता है
  • हर नाम को उसके रजिस्टर होने लायक़ ज़ोन के नीचे मापता है: लेबल की लंबाई, Shannon entropy, hex और base32 जैसे अक्षर-समूह, अंकों की लंबी लड़ियाँ और नेस्टिंग की गहराई
  • Public Suffix List से नामों को ज़ोन के हिसाब से समूह में रखता है और उस ज़ोन को चिह्नित करता है जिसके नीचे बहुत से अलग, एन्कोडेड दिखने वाले सबडोमेन हों — टनल का सबसे साफ़ निशान
  • लॉग में रिकॉर्ड टाइप हो तो उसका भी इस्तेमाल करता है: NULL रिकॉर्ड, और TXT या CNAME की भरमार वाला मिश्रण
  • बारह इंडिकेटर तय वज़न से जोड़ता है, हर एक के पाँच तक उदाहरण नाम दिखाता है, और नतीजे को कम, कुछ या मज़बूत इंडिकेटर के रूप में कहता है — कभी फ़ैसले के रूप में नहीं
  • पूरी तरह आपके ब्राउज़र में चलता है: अंदरूनी होस्ट नाम और क्लाइंट एड्रेस वाले लॉग आपके डिवाइस से बाहर नहीं जाते

इनपुट और आउटपुट

इनपुट

  • DNS क्वेरी नाम या लॉग लाइनें — हर लाइन में एक, 50,000 लाइनों (2 MB) तक। # या ; से शुरू होने वाली लाइनें और 4,096 अक्षरों से लंबी लाइनें छोड़ दी जाती हैं; छोटी "गिनती नाम" लाइनों की गिनती जोड़ी जाती है, और dnsmasq लॉग में हर लुकअप की सिर्फ़ query[…] लाइन गिनी जाती है, उसकी forwarded, reply या cached लाइनें नहीं।
  • रिकॉर्ड टाइप — लाइन में हों तो पढ़े जाते हैं (query[TXT], IN TXT, TXT? या टाइप वाला कॉलम); इनके बिना TXT, NULL और CNAME वाले इंडिकेटर नहीं चलते।

आउटपुट

  • सारांश — 100 में से इंडिकेटर स्कोर, आकलन (कम, कुछ या मज़बूत इंडिकेटर), अलग नाम, कुल क्वेरी, रिकॉर्ड टाइप वाली लाइनें और सबसे लंबा लेबल।
  • इंडिकेटर — हर लागू हुआ इंडिकेटर, उसका वज़न, वह क्यों मायने रखता है और पाँच तक उदाहरण नाम।
  • सबसे व्यस्त ज़ोन — दस तक ज़ोन, उनके अलग नाम, क्वेरी, एन्कोडेड दिखने वाले नाम और औसत लेबल लंबाई के साथ।
  • माप और आगे क्या करें — स्कोर के पीछे के अनुपात, और अगले क़दम।

DNS टनलिंग इंडिकेटर चेकर का उदाहरण

एक ज़ोन पर TXT और NULL क्वेरी की बौछार वाला रिज़ॉल्वर लॉग

इनपुट:

  412 www.google.com
  138 fonts.gstatic.com
   57 api.github.com
query[A] login.microsoftonline.com from 10.0.0.12
query[TXT] 3fa9c1e8b2d47a0c5e9f1b3d7a2c4e6b.0.t.cdn-sync.example from 10.0.0.23
query[TXT] 9b2e7d41c0a8f35e6d1b9c2a7e4f8d03.1.t.cdn-sync.example from 10.0.0.23
… 8 more TXT lines like these …
query[NULL] mz7q4x8w1v5b6n3c9p0r2k8j4h6g1f5d.a.t.cdn-sync.example from 10.0.0.23
query[NULL] r4t8y2u6i0o3p7a1s5d9f2g6h0j4k8l1.b.t.cdn-sync.example from 10.0.0.23

आउटपुट:

इंडिकेटर स्कोर 95/100 (टनलिंग का सबूत नहीं) · आकलन: मज़बूत इंडिकेटर · अलग नाम 16 · क्वेरी 620 · रिकॉर्ड टाइप वाली लाइनें 13 · सबसे लंबा लेबल 32
बेतरतीब दिखने वाले लेबल 25 · NULL रिकॉर्ड 20 · hex-एन्कोडेड लेबल 15 · ज़्यादातर TXT क्वेरी 15 · एक ज़ोन के नीचे बहुत से अलग नाम 10 · कुछ नाम बहुत बार पूछे गए 10 (www.google.com, fonts.gstatic.com)
सबसे व्यस्त ज़ोन: cdn-sync.example — 12 अलग नाम, 12 एन्कोडेड दिखने वाले, औसत लेबल लंबाई 11.3
हाई-entropy लेबल वाले नाम 75% · TXT हिस्सा 77% · NULL हिस्सा 15%

DNS टनलिंग इंडिकेटर चेकर के नतीजे कैसे पढ़ें

"मज़बूत इंडिकेटर" का मतलब है कि कई अलग-अलग संकेत एक ही ज़ोन की ओर इशारा करते हैं — आम तौर पर बहुत से अलग एन्कोडेड लेबल के साथ TXT या NULL की भरमार। यह जाँच की दिशा है, यह नतीजा नहीं कि डेटा बाहर जा रहा है।

झूठे संकेत आम और अपेक्षित हैं: एंटीवायरस और reputation जाँचें, CDN, DNSBL क्वेरी, DKIM selector, सर्टिफ़िकेट (OCSP) जाँचें और कुछ telemetry hash जैसे नाम बनाते हैं। कोई निष्कर्ष निकालने से पहले ज़ोन का मालिक देखें।

अकेले "कुछ नाम बहुत बार पूछे गए" का मतलब आम तौर पर व्यस्त जायज़ सेवा है; यह तब मायने रखता है जब उन्हीं नामों में एन्कोडेड लेबल भी हों या वे तय अंतराल पर पूछे जाएँ।

"कम या कोई इंडिकेटर नहीं" नेटवर्क को साफ़ साबित नहीं करता: धीमा टनल, शब्दों जैसी एन्कोडिंग, या बाहरी रिज़ॉल्वर तक DNS over HTTPS, स्थानीय रिज़ॉल्वर लॉग में इनमें से कोई निशान नहीं छोड़ते।

DNS टनलिंग इंडिकेटर चेकर कब इस्तेमाल करें

  • किसी एक होस्ट से असामान्य DNS ट्रैफ़िक वाले सुरक्षा अलर्ट की शुरुआती जाँच।
  • किसी घटना के दौरान रिज़ॉल्वर लॉग में command-and-control beacon या डेटा चोरी के संकेत देखना।
  • iodine या dnscat2 जैसे लैब टूल के कैप्चर से टीम को दिखाना कि DNS टनल कैसा दिखता है।
  • किसी नए सुरक्षा या telemetry प्रोडक्ट को अनुमति देने से पहले जाँचना कि वह आपकी मॉनिटरिंग को टनल जैसा तो नहीं दिखेगा।

समस्या निवारण

  • "कोई क्वेरी नाम नहीं मिला": हर लाइन में host.example.com जैसा बिंदु वाला नाम होना चाहिए; सिर्फ़ एड्रेस वाली या अनजान फ़ॉर्मेट वाली लाइनें छोड़ दी जाती हैं। ज़रूरत हो तो पहले क्वेरी वाला कॉलम निकालें।
  • TXT, NULL और CNAME हिस्से "—" दिखा रहे हैं: लाइनों में रिकॉर्ड टाइप नहीं है। अपने लॉग का टाइप कॉलम शामिल करें, या query[TXT] name जैसी लाइनें निकालें।
  • कोई जानी-मानी सेवा ऊँचा स्कोर ले रही है: सबसे व्यस्त ज़ोन वाली टेबल में उसका ज़ोन देखें — कई वेंडर जानबूझकर hash जैसे नाम इस्तेमाल करते हैं। उसकी लाइनें हटाकर दोबारा जाँचें और देखें कि क्या बचता है।
  • गिनती गलत लग रही है: संख्या को गिनती तभी माना जाता है जब लाइन छोटी "गिनती नाम" या "नाम गिनती" हो; पूरी लॉग लाइनों में संख्याएँ अनदेखी होती हैं और हर लाइन एक बार गिनी जाती है।

DNS टनलिंग इंडिकेटर चेकर के बारे में अक्सर पूछे जाने वाले सवाल

क्या ऊँचे स्कोर का मतलब है कि कोई DNS से डेटा बाहर भेज रहा है?

नहीं। स्कोर उन पैटर्नों को जोड़ता है जो टनल बनाते हैं — लंबे बेतरतीब लेबल, एक ज़ोन के नीचे बहुत से अलग नाम, TXT या NULL से भरा ट्रैफ़िक — पर जायज़ सेवाएँ भी यही बनाती हैं। यह बताता है कि कहाँ देखना है; पुष्टि के लिए क्वेरी भेजने वाला क्लाइंट, ज़ोन का मालिक और समय के साथ पैटर्न चाहिए।

कौन-से लॉग फ़ॉर्मेट पेस्ट किए जा सकते हैं?

हर लाइन में एक सादा नाम; sort | uniq -c वाली "गिनती नाम" सूचियाँ; और dnsmasq (query[TXT] name), BIND query लॉग, (3)www(7)example(3)com(0) जैसे नामों वाले Windows DNS debug लॉग, Zeek का dns.log और tcpdump की लाइनें। लाइन में रिकॉर्ड टाइप हो तो वह भी पढ़ा जाता है।

कोई जायज़ सेवा संदिग्ध क्यों दिख रही है?

एंटीवायरस और reputation जाँचें, CDN, DNSBL क्वेरी, DKIM selector और सर्टिफ़िकेट जाँचें जानबूझकर hash या पहचानकर्ता DNS नामों में डालती हैं। ज़ोन का मालिक देखें; अगर वह आपका इस्तेमाल किया हुआ वेंडर है, तो यह पैटर्न अपेक्षित है।

क्या मेरा लॉग कहीं भेजा जाता है?

नहीं। सब कुछ आपके ब्राउज़र में चलता है; नाम और लॉग लाइनें आपके डिवाइस से बाहर नहीं जातीं, इसलिए अंदरूनी होस्ट नाम और क्लाइंट एड्रेस निजी रहते हैं।

कितनी क्वेरी पेस्ट करनी चाहिए?

किसी एक रिज़ॉल्वर या होस्ट की, कुछ समय की, कई सौ या उससे ज़्यादा। 10 से कम अलग नाम हों तो आकलन "कुछ इंडिकेटर" से ऊपर नहीं जाता, और छोटे नमूने टनल के बनाए वॉल्यूम वाले पैटर्न चूक जाते हैं।

तकनीकी नोट्स

DNS नाम में हर लेबल 63 अक्षर और पूरा नाम 253 अक्षर तक हो सकता है (RFC 1035)। टनल डेटा को लेबल में एन्कोड करता है — hex, base32 या base64 जैसे अक्षर-समूहों में — और रिज़ॉल्वर दोहराए जवाब cache कर लेते हैं, इसलिए उसे हर टुकड़े के लिए नया नाम चाहिए; नतीजा: अपने नियंत्रण वाले एक ज़ोन के नीचे बहुत से लंबे, हाई-entropy, कभी न दोहराए जाने वाले सबडोमेन।

Shannon entropy हर लेबल के लिए प्रति अक्षर बिट में निकाली जाती है। लंबे hyphen वाले शब्द भी ऊँचा स्कोर करते हैं, इसलिए लेबल बेतरतीब तभी माना जाता है जब वह कम से कम 16 अक्षर का हो, entropy 3.5 या ज़्यादा हो, और उसमें शब्दों जैसी बनावट न हो (अंकों की तीन या ज़्यादा लड़ियाँ, या बहुत कम स्वर के साथ व्यंजनों की लंबी लड़ी)।

नाम का ज़ोन Public Suffix List के अनुसार उसका रजिस्टर होने लायक़ डोमेन है; रिवर्स DNS नाम (in-addr.arpa, ip6.arpa) नाम गिने जाते हैं पर कभी एन्कोडेड लेबल नहीं। ज़ोन वाले भारी इंडिकेटर के लिए ज़ोन के लेबल का एन्कोडेड दिखना भी ज़रूरी है, क्योंकि कोई CDN या मेल प्रोवाइडर अपने-आप सैकड़ों शब्द जैसे नाम बनाता है।

स्कोर हर इंडिकेटर का तय वज़न (5 से 25 अंक) जोड़ता है, अधिकतम 100: 25 से कम यानी कम या कोई इंडिकेटर नहीं, 25–59 यानी कुछ, 60 या ज़्यादा यानी मज़बूत; 10 से कम अलग नाम हों तो यह "कुछ" से ऊपर नहीं जाता। NIST SP 800-81r3, यानी सुरक्षित DNS लागू करने की NIST गाइड, डेटा चोरी पकड़ने के लिए DNS क्वेरी की मात्रा और पैटर्न पर नज़र रखने की बात करती है; यहाँ लेबल के माप इस टूल के अपने पैमाने हैं।

सीमाएँ और कार्यप्रणाली

यह नामों (और दिए गए हों तो टाइप) पर आधारित अनुमान है, टनल की पहचान नहीं: यह न जवाब देखता है, न समय, न डेटा का आकार, न हर क्वेरी के पीछे का क्लाइंट — जो पूरी जाँच के लिए ज़रूरी हैं।

सिर्फ़ वही जाँचा जाता है जो आप पेस्ट करते हैं, और छोटा नमूना कमज़ोर आकलन देता है। बाहरी रिज़ॉल्वर तक DNS over HTTPS या over TLS स्थानीय रिज़ॉल्वर लॉग में दिखता ही नहीं।

ज़ोन साथ आई Public Suffix List से बनाए जाते हैं; जिन नामों को वह पार्स नहीं कर पाती, उनके लिए आख़िरी दो या तीन लेबल लिए जाते हैं, जिससे कभी-कभार ज़ोन मिल या बँट सकते हैं।

सुरक्षा और गोपनीयता

विश्लेषण पूरी तरह आपके ब्राउज़र में होता है: पेस्ट किए नाम और लॉग लाइनें — जिनमें अंदरूनी होस्ट नाम और क्लाइंट एड्रेस हो सकते हैं — कभी Mutqan सर्वर या कहीं और नहीं भेजी जातीं।

संदर्भ

  • SP 800-81r3: Secure Domain Name System (DNS) Deployment GuideNIST · 2026DNS को सुरक्षित ढंग से लागू करने की NIST गाइड, जो DNS के ज़रिए डेटा चोरी पकड़ने के लिए क्वेरी की मात्रा और पैटर्न पर नज़र रखने की बात करती है।
  • RFC 1035: Domain Names - Implementation and SpecificationIETFDNS संदेश का फ़ॉर्मेट, रिकॉर्ड टाइप और रिस्पॉन्स कोड (NOERROR, NXDOMAIN, SERVFAIL, REFUSED) जिन्हें हर रिज़ॉल्वर आज भी इस्तेमाल करता है।