امکان شناسایی ترافیک DNS-Over-HTTPS بدون رمزگشایی

یک پژوهش‌گر امنیتی کشف کرده است که ترافیک DNS-Over-HTTPS (DoH) بدون رمزگشایی قابل شناسایی است. هدف پروتکل DoH بهبود امنیت کلی اینترنت با استفاده از TLS در زمان ارسال کوئری‌ها و دریافت پاسخ‌های DNS از طریق HTTP است. با رمزنگاری ترافیک DNS و نیاز به احراز هویت سرور، DoH قصد دارد که با حملات نظارت منفعل و تغییر مسیر فعال مقابله کند. محافظت‌های مشابه نیز از طریق DNS در TLS ارائه می‌شود.

به‌گفته‌ی معاون تحقیقات در مؤسسه‌ی فناوری SANS، می‌توان ترافیک DoH را با مشاهده‌ی همه‌ی ترافیک‌های ورودی و خروجی یک میزبان شناسایی کرد. این پژوهش‌گر از فایرفاکس برای آزمایش خود استفاده کرد، زیرا موزیلا فعال کردن DoH را تسهیل می‌کند و امکان جمع‌آوری کلیدهای اصلی TLS را از طریق متغیر محیط SSLKEYLOGFILE فراهم می‌کند (کروم نیز این امکان را فراهم می‌کند). در این آزمایش از فایرفاکس ۷۱ در مک با Cloudflare‌ استفاده شده است. اگرچه این آزمایش قطعی نیست، به‌خصوص که شامل مجموعه‌ای از ترافیک چند دقیقه است، اما نتایج نشان داد که ترافیک DoH به آسانی قابل شناسایی است.

این پژوهش‌گر پس از اجرای tcpdump، فایرفاکس را راه‌اندازی کرد و از چند ده وب‌گاه بازدید کرد. بسته، فایل را دریافت کرد و سپس SSL Key Logfile در Wireshark 3.1.0 که به‌طور کامل از DoH و HTTP2 پشتیبانی می‌کند، بارگذاری شد. این پژوهش‌گر بیان کرد که ترافیک DoH را بااستفاده از فیلتر نمایش ساده‌ی dns and tls شناسایی کرده است. کل ترافیک DoH به یک اتصال واحد بین میزبان او و mozila.cloudflare-dns.com محدود بود. در این حالت خاص، امکان شناسایی ترافیک بااستفاده از نام میزبان امکان‌پذیر است، اما می‌توان سرور DoH خود را نیز اجرا کرد. تجزیه و تحلیل‌های بیشتر نشان داد که طول بار داده‌ی DoH ممکن است برای شناسایی ترافیک مورد استفاده قرار گیرد. کوئری‌ها و پاسخ‌های DNS معمولاً بزرگ‌تر از چند صد بایت نیستند، درحالی‌که اتصالات HTTPS می‌خواهند حداکثر واحد انتقال را پر کنند.

این پژوهش‌گر یادآور شد که درصورتی‌که اتصالات TLS طولانی مدت به همراه بار داده‌هایی که به ندرت از یک kByte تجاوز می‌کنند، مشاهده شود، احتمالاً یک اتصال DoH وجود دارد. برخی از دستاوردهای این آزمایش ممکن است تنها مختص زمان پیاده‌سازی باشد، اما آزمایش‌های بیشتر می‌تواند نتایج قطعی‌تری به دنبال داشته باشد.

منبع

Related posts

Leave a Comment

1 × سه =