رفتن به محتوا
بازگشت به وبلاگ
امنیت

امنیت DNS: DNSSEC، DoH و فیلترینگ DNS

ایمن‌سازی زیرساخت DNS با امضای DNSSEC، DNS-over-HTTPS، DNS-over-TLS و فیلترینگ DNS مبتنی بر RPZ برای مسدود کردن تهدید.

آذر ۱۴۰۴
۱۲ دقیقه مطالعه

مقدمه

DNS یکی از حیاتی‌ترین اما اغلب نادیده‌گرفته‌شده‌ترین سطوح حمله در زیرساخت است. مسموم‌سازی cache DNS، ربودن DNS و خروج داده مبتنی بر DNS تهدیدات واقعی هستند. DNSSEC امضاهای رمزنگاری به رکوردهای DNS اضافه می‌کند.

حملات DNS

  • Cache Poisoning: تزریق پاسخ‌های جعلی به resolver
  • DNS Hijacking: سازش nameserver یا حساب registrar
  • DNS Exfiltration: رمزگذاری داده‌های دزدیده‌شده در query های DNS

DNSSEC: امضای Zone

BASH
# تولید کلیدها
dnssec-keygen -a RSASHA256 -b 2048 -n ZONE company.com   # ZSK
dnssec-keygen -a RSASHA256 -b 4096 -n ZONE -f KSK company.com  # KSK

# امضای zone
dnssec-signzone -A -o company.com -t company.com.zone

# با PowerDNS (آسان‌تر)
pdnsutil secure-zone company.com
pdnsutil show-zone company.com | grep DS  # DS record برای registrar

اعتبارسنجی DNSSEC روی Resolver

BASH
# در BIND
options {
    dnssec-validation auto;
};

# تست
dig +dnssec A company.com
# اگر پرچم "ad" در پاسخ باشد: احراز هویت انجام شد

فیلتر DNS با RPZ

BASH
# /var/named/rpz.company.local.zone
malware-site.com.rpz.company.local CNAME .    # بازگشت NXDOMAIN
phishing.net.rpz.company.local CNAME .

امنیت DNS یک مشکل لایه‌ای است: DNSSEC از جعل جلوگیری می‌کند، فیلتر DNS دامنه‌های مخرب شناخته‌شده را مسدود می‌کند و DoT/DoH query ها را در حین انتقال رمزگذاری می‌کند.