LIVE: New phishing campaigns targeting mobile users —View latest threats →

Back to Tutorials
Середній рівень 10 хв читання

Безпека DNS: чому телефонна книга інтернету вразлива

DNS перетворює доменні імена на IP-адреси, і зловмисники можуть тихо захопити його. Вивчіть DNS-спуфінг, DNSSEC, DNS-over-HTTPS та методи захисту запитів.

20 вересня 2026 р.

Що робить DNS

Кожен сайт розміщений за IP-адресою — числовою адресою на кшталт 142.250.80.46. Але люди переміщаються в інтернеті за доменними іменами, як-от google.com. Система доменних імен (DNS) — це інфраструктура, яка перетворює людиночитані доменні імена на IP-адреси, до яких може підключитися ваш пристрій.

Коли ви вводите URL у браузер:

  1. Ваш пристрій перевіряє локальний DNS-кеш. Якщо знаходить свіжу відповідь — використовує її.
  2. Якщо ні — надсилає DNS-запит до рекурсивного резолвера, який зазвичай надається вашим інтернет-провайдером або налаштованим сервісом на кшталт Google (8.8.8.8) чи Cloudflare (1.1.1.1).
  3. Резолвер запитує кореневі сервери імен, потім сервери доменів верхнього рівня (TLD), потім авторитативний сервер імен для домену.
  4. IP-адреса повертається, кешується зі значенням часу життя (TTL), і браузер підключається.

Цей процес займає мілісекунди, але відбувається практично при кожному інтернет-підключенні.

Проблема безпеки у традиційному DNS

Традиційний DNS має фундаментальний конструктивний недолік: запити і відповіді надсилаються у відкритому вигляді через UDP без будь-якої автентифікації. Це означає, що будь-хто, хто моніторить вашу мережу — ваш провайдер, оператор Wi-Fi у кав'ярні або зловмисник типу «людина посередині» — може бачити кожен домен, який ви шукаєте.

Що ще гірше, DNS із самого початку не мав механізму перевірки того, чи відповідь дійсно надійшла від легітимного авторитативного сервера. Це відкриває двері для кількох типів атак.

Підробка DNS і отруєння кешу

Підробка DNS (також відома як отруєння DNS-кешу) — це атака, при якій шкідливі DNS-відповіді впроваджуються в кеш резолвера. Коли кеш отруєний:

  • Користувач запитує yourbank.com
  • Резолвер повертає IP-адресу, підконтрольну зловмиснику, замість справжньої
  • Користувача перенаправляють на підроблений фішинговий сайт, часто візуально ідентичний справжньому
  • Збираються облікові дані, токени сесії або платіжна інформація

Класична атака (атака Камінського, 2008) експлуатувала передбачувані ідентифікатори DNS-транзакцій і порти-джерела, щоб заповнити резолвер підробленими відповідями. Сучасні резолвери рандомізують порти-джерела та ідентифікатори транзакцій, але фундаментальна проблема автентифікації зберігається без DNSSEC.

Перехоплення DNS

Перехоплення DNS відрізняється від підробки — замість отруєння кешу зловмисник змінює конфігурацію DNS на вищому рівні:

  • Перехоплення роутера: шкідливе ПЗ або зловмисник, який отримав доступ до вашого домашнього роутера, змінює його DNS-налаштування, спрямовуючи на шкідливий резолвер.
  • Перехоплення на рівні провайдера: деякі провайдери перенаправляють невдалі DNS-запити (наприклад, помилково введені домени) на власні сторінки з рекламою — м'яка форма перехоплення.
  • Перехоплення реєстратора: якщо зловмисник отримує доступ до акаунту реєстратора домену, він може змінити авторитативний сервер імен, перенаправляючи весь трафік.

DNSSEC: криптографічна автентифікація для DNS

DNSSEC (розширення безпеки DNS) додає цифрові підписи до DNS-записів. Коли зона підписана DNSSEC:

  • Кожен DNS-запис підписується приватним ключем
  • Відповідний відкритий ключ публікується в самій зоні DNS
  • Ланцюжок довіри простягається від кореневої зони до окремих записів домену
  • Резолвери можуть перевіряти автентичність і цілісність відповідей

DNSSEC запобігає отруєнню кешу, оскільки підроблені відповіді не проходять перевірку підпису. Проте DNSSEC не шифрує DNS — він автентифікує записи, але запити і відповіді залишаються видимими.

Не всі домени підписані DNSSEC, і не всі резолвери перевіряють підписи DNSSEC, що обмежує реальний захист.

DNS-over-HTTPS і DNS-over-TLS

Для вирішення проблеми приватності два протоколи шифрують DNS-запити:

DNS-over-HTTPS (DoH): загортає DNS-запити у стандартний HTTPS-трафік через порт 443. Це робить DNS-запити:

  • Зашифрованими і нечитабельними для провайдерів і спостерігачів у мережі
  • Невідрізнюваними від звичайного веб-трафіку (складніше заблокувати)
  • Автентифікованими через стандартну перевірку TLS-сертифіката

DNS-over-TLS (DoT): шифрує DNS-запити за допомогою TLS, але використовує порт 853, який є окремим і може бути заблокований мережевими адміністраторами. Прозоріший для управління мережею.

Основні браузери (Firefox, Chrome, Edge) підтримують DoH і можуть бути налаштовані на його використання. Cloudflare 1.1.1.1, Google 8.8.8.8 і NextDNS — усі підтримують DoH.

Як захистити себе

Увімкніть DNS-over-HTTPS

У Firefox: Налаштування > Приватність і захист > DNS через HTTPS. Увімкніть із Cloudflare або власним провайдером.

У Chrome: Налаштування > Безпека та конфіденційність > Безпека > Використовувати захищений DNS. Увімкніть і виберіть провайдера.

У Windows 11: мережеві налаштування тепер підтримують DoH на рівні системи, застосовуючи його до всіх застосунків, а не лише до браузерів.

Оберіть резолвер, що поважає приватність

  • Cloudflare 1.1.1.1: швидкий, не зберігає журнали запитів (перевірено аудитом), підтримує DoH і DoT
  • NextDNS: налаштовуване фільтрування, контроль журналювання, функції сімейного захисту
  • Quad9 (9.9.9.9): блокує відомі шкідливі домени, орієнтований на приватність, некомерційний

Уникайте використання стандартного резолвера провайдера, якщо не довіряєте йому свою історію перегляду.

Захистіть DNS-налаштування роутера

Змініть DNS-налаштування домашнього роутера на резолвер із підтримкою DoH. Це захистить усі пристрої у вашій мережі, включно зі смарт-телевізорами та пристроями IoT, які окремо не підтримують DoH.

Стежте за несподіваними змінами DNS

Якщо підозрюєте перехоплення DNS, порівняйте налаштований DNS-сервер із тим, через який насправді вирішуються запити. Інструменти на кшталт nslookup або dig допоможуть виявити розбіжності.

#DNS#network security#DNS-over-HTTPS#DNS hijacking