Подмена dns: Подмена DNS сервера. Будьте осторожны / Хабр

Содержание

Троян Switcher взламывает Wi-Fi-роутеры и подменяет DNS

Один из самых распространенных — и самых важных — советов по кибербезопасности звучит так: никогда не вводите логины, пароли, данные кредитных карт и так далее, если с адресом ссылки что-то не так. Это опасно. Если вместо facebook.com вы видите, например, fasebook.com или что-то в таком духе, ничего хорошего от такой страницы ждать не стоит.

Но что, если поддельная страница содержится по настоящему адресу? Оказывается, такой неприятный вариант тоже возможен, и для этого злодеям даже не надо взламывать сервер, на котором хранится заветная страница. Вот как это работает.

Перехват и подмена DNS-запросов

Дело в том, что привычные нам «человеческие» адреса страниц являются надстройкой над настоящими IP-адресами, с которыми на самом деле и работает Сеть. Эта надстройка называется DNS — Domain Name System, система доменных имен. Каждый раз, когда вы вводите в строке браузера адрес сайта в привычном вам формате, компьютер посылает запрос специальному DNS-серверу, который возвращает IP-адрес нужного вам домена.

Например, если ввести в строке браузера google.com, то DNS-сервер вернет вам адрес 87.245.200.153 — и именно по этому адресу вы и перейдете на самом деле. Происходит это примерно так:

Штука в том, что злоумышленники могут создать свой собственный DNS-сервер, который будет превращать запрос google.com в какой-то другой IP-адрес — например, 6.6.6.6, по которому вместо настоящего сайта будет размещен поддельный. Этот метод называется подмена DNS (DNS hijacking).

Дело за малым: остается каким-то образом обмануть пользователя, чтобы он вместо настоящего DNS-сервера использовал вредоносный, перенаправляющий на поддельный сайт. Вот как данную задачу решили создатели трояна Switcher.

Как действует троян Switcher

Они создали пару программ для Android, одна из которых имитирует приложение поисковой системы Baidu (это такой китайский Google), а вторая — также достаточно популярную в Китае утилиту для поиска паролей к Wi-Fi-сетям, которыми обмениваются пользователи.

После того как приложение попадает на смартфон, подключенный к Wi-Fi, оно связывается с командным сервером злоумышленников и сообщает, что троян активирован в Wi-Fi-сети с таким-то идентификатором.

Затем Switcher приступает к взлому Wi-Fi-роутера: он по очереди проверяет различные пароли администратора для входа в веб-интерфейс настройки маршрутизатора. Если судить по тому, как устроена эта часть трояна, на данный момент он умеет работать только с роутерами TP-Link.

После того как трояну удается угадать пароль, он заходит на страницу сетевых настроек роутера и прописывает в них адрес одного из вредоносных DNS-серверов в качестве используемого по умолчанию. А в качестве запасного DNS-сервера троян указывает настоящий DNS-сервер Google 8.8.8.8 — чтобы пользователь не заметил сбоев в случае отказа DNS-сервера злоумышленников.

Поскольку в большинстве беспроводных сетей все устройства получают сетевые настройки, и в том числе адреса DNS-серверов, от роутера, то все пользователи, подключившиеся к уже захваченной злоумышленниками Wi-Fi-сети, автоматически будут использовать вредоносный DNS.

Об успехе операции троян сообщает на командный сервер. На нем нашим экспертам помимо всего прочего удалось обнаружить статистику успешных атак, которую злоумышленники по неосторожности оставили в открытой части сайта.

Если верить этой статистике, за неполные четыре месяца работы им удалось захватить уже 1280 беспроводных сетей, и трафик всех пользователей этих сетей может быть перенаправлен по команде злоумышленников.

Как защититься

1. Чтобы защитить свою беспроводную сеть от подобных атак, следует правильно настроить роутер. В первую очередь — на странице настроек сменить пароль по умолчанию на сложный и надежный.

2. Не стоит устанавливать подозрительные приложения на свои Android-устройства. К сожалению, даже в официальных магазинах нередко встречаются трояны.

3. Для полной уверенности лучше всего использовать на всех устройствах надежный антивирус. Кстати, можете установить его прямо сейчас — вот ссылка на бесплатную версию Kaspersky Antivirus & Security для Android: он определяет этого троянца как Trojan.AndroidOS.Switcher и не позволяет ему захватить вашу Wi-Fi-сеть.

Решаем проблему перехвата и подмены DNS-запросов. DNSCrypt в Яндекс.Браузере

Когда речь заходит о защите веб-трафика от перехвата и подмены, то на ум в первую очередь приходят протокол HTTPS или даже собственный VPN-сервер. К сожалению, многие забывают еще об одной незащищенной стороне, а именно о DNS-запросах. Сегодня я еще раз привлеку внимание к этой проблеме и расскажу о том, как мы решаем ее в Яндекс.Браузере с помощью технологии DNSCrypt.

Архитектура системы доменных имен (DNS) за редким исключением остается неизменной с 1983 года. Каждый раз, когда вы хотите открыть сайт, браузер отправляет запрос с указанием домена на DNS-сервер, который в ответ отправляет необходимый IP-адрес. И запрос, и ответ на него передаются в открытом виде, без какого-либо шифрования. Это значит, что ваш провайдер, администратор сети или злоумышленник c MITM могут не только хранить историю всех запрошенных вами сайтов, но и подменять ответы на эти запросы. Звучит неприятно, не правда ли?

Предлагаю вспомнить несколько реальных историй перехвата и подмены DNS-запросов.

DNS hijacking

Перехват DNS-запросов (DNS hijacking) это не какая-то редкая страшилка, а вполне распространенная практика. Например, среди провайдеров. Обычно это работает следующим образом. Если пользователь пытается перейти на несуществующий сайт, то провайдер перенаправляет его на свою страницу с рекламой. А может и не на свою.

Американский провайдер Earthlink в 2006 году стал перенаправлять пользователей и информацию об их запросах рекламному партнеру Barefruit. Особенно плохо это выглядело в том случае, если пользователь запрашивал несуществующий домен известного сайта, например, webmale.google.com. Пользователь видел рекламу и контент, которые не имели ничего общего с google.com в адресной строке.

Подобная практика явно нарушает стандарт RFC для DNS-ответов и делает пользователей уязвимыми для XSS-атак. К примеру, исследователь Дэн Камински продемонстрировал уязвимость, которая позволяла встраивать в Facebook или PayPal мошеннические фреймы.

Вы, конечно же, можете отказаться от использования DNS-сервера провайдера и прописать в настройках роутера сторонние решения (например, Google Public DNS или Яндекс.DNS). Но при отсутствии шифрования это никак не решит проблему. Провайдер вполне может вмешаться и здесь, подменив ответ на свой.

Если уж провайдеры научились зарабатывать на подмене DNS-ответов, то что говорить о мошенниках. В 2007 году группа предприимчивых людей из Эстонии создала троян DNSChanger, который за несколько лет заразил 4 млн компьютеров по всему миру. Троян изменял системные настройки DNS, что приводило к появлению рекламы на веб-страницах. Это принесло создателям $14 млн и тюремный срок. Причем самое удивительное в этой истории то, что по решению суда пришлось в течение 7 месяцев поддерживать временные DNS-сервера по тем адресам, где располагались сервера мошенников. Если бы они это не сделали, то пользователи зараженных устройств одномоментно лишились бы доступа в сеть.

Масштабы трояна DNSChanger впечатляют, но бразильцы его переплюнули. 4,5 млн DSL-модемов было взломано в одной только Бразилии в 2011-2012 годах. Для этого было достаточно разослать спам со ссылкой на вредоносную страницу, которая взламывала модем и прописывала новый адрес DNS-сервера. Причем в этот раз мошенники не стали мелочиться с рекламой. На своих подставных DNS-серверах они подменяли адреса для всех крупнейших банков Бразилии.

С домашними и офисными WiFi-роутерами дело обстоит так же печально, как и с бразильскими модемами. Пользователи нередко оставляют заводские логин и пароль на админку, да и за выходом свежих прошивок с исправленными уязвимостями не следит почти никто (кроме читателей Хабра, конечно же). В прошлом году исследователи из Sentrant в своем докладе рассказали о новых случаях взлома роутеров. Мошенники перехватывали обращения к Google Analytics и благодаря этому встраивали на сайты рекламу.

Думаю, с примерами перехвата можно закончить. Вывод тут простой: DNS перехватывают много, на разных этапах и с разной целью.

DNSCrypt

Разработчики популярного сервиса OpenDNS предложили решение проблемы еще несколько лет назад. Они создали опенсорсную утилиту DNSCrypt и одноименный протокол, который играет для DNS-запросов такую же роль, как и SSL для HTTP.

Во-первых, DNSCrypt зашифрует с помощью стойкой эллиптической криптографии сообщения между вашим компьютером и DNS-сервером. Это защитит их от прослушки и MITM.

Во-вторых, вы больше не привязаны к серверу провайдера или настройкам своего роутера. DNSCrypt обращается за адресами напрямую на указанный вами сервер.

До сих пор для применения DNSCrypt пользователям было необходимо установить на компьютер отдельную утилиту. Это не сложно, но без широкого распространения знаний об угрозе и способах ее решения вряд ли стоит рассчитывать на массовое применение технологии.

Поддержка DNSCrypt в Яндекс.Браузере

Наша команда считает шифрование DNS не менее важным, чем переход на HTTPS, поэтому мы решили поддержать DNSCrypt на уровне Яндекс.Браузера. И сегодня мы начинаем тестирование новой бета-версии Яндекс.Браузера 16.4, пользователи которой могут включить в настройках защиту DNS-запросов.

При этом все запросы в зашифрованном виде будут отправляться на быстрый DNS-сервер Яндекса, который также получил поддержку протокола DNSCrypt. Ограничивать пользователей только одним сервером мы не хотим, поэтому уже в ближайшее время добавим в этом месте возможность выбрать альтернативный DNS-сервер (например, тот же OpenDNS).

И еще кое-что. Подменить IP-адрес на фишинговый можно не только через перехват запроса, но и через самый обычный системный host-файл. Поэтому мы сейчас экспериментируем с запретом использовать системный резолвер в случае недоступности DNS-сервера. Мы понимаем, что включение этой опции по умолчанию может навредить пользователям корпоративных и локальных ресурсов, поэтому пока только наблюдаем и собираем отзывы.

Установить бету вы можете с browser.yandex.ru/beta. Нам было бы интересно узнать мнение сообщества.

Как послать провайдера подальше, и включить DNS по HTTPS в любом браузере / Хабр

Поддержка DoH уже встроена во все основные браузеры. Пользователям нужно её только включить и настроить.


Все шесть производителей основных браузеров планируют поддерживать протокол DNS по HTTPS (DoH), шифрующий DNS-трафик и помогающий усилить конфиденциальность пользователя в сети.

Этот протокол является одной из самых обсуждаемых тем этого года. Он позволяет браузеру прятать DNS-запросы и ответы внутри обычного на первый взгляд HTTPS-трафика.

Это делает DNS-трафик пользователя невидимым для сторонних наблюдателей за сетью, например, провайдеров. Однако если пользователи обожают DoH и считают его благом для конфиденциальности, провайдеры и производители средств кибербезопасности его ненавидят.

Британский провайдер назвал Mozilla «интернет-злодеем» за планы компании по внедрению DoH, а группу лоббистов от Comcast уличили в подготовке документа касательно DoH, который они планируют представить законотворцам Британии, надеясь предотвратить более широкое распространение протокола.

Однако, время уже может быть упущено. Редакция в течение недели связалась с производителями основных веб-браузеров, чтобы узнать об их будущих планах касательно DoH, и все они планируют внедрять протокол в том или ином виде.

Как включить DoH в любом браузере


Вот, что нам известно на сегодня по поводу планов производителей браузеров, связанных с DoH, и о том, как пользователи могут включить DoH в любом браузере.

Brave


«Мы очень хотим реализовать его», — сказал нам Том Лоуэнталь, менеджер продукта из Brave for Privacy & Security.

Однако у команды Brave пока нет точных сроков внедрения DoH. Они занимаются другими улучшениями, связанными с приватностью. К примеру, на этой неделе компания выпустила обновление, улучшающее распознавание скриптов, отслеживающих действия пользователей. На горизонте маячит версия Brave 1.0, и команде нужно сконцентрироваться на её выходе. Но DoH в Brave будет.

«Реализация DoH – это гораздо больше, чем простая техническая задача. Нам нужно решить, какие разумные и защитные установки мы можем включить по умолчанию для большинства людей, не задумывающихся о настройке DNS – но так, чтобы мы ничего не сломали у тех людей и организаций, что тщательно подошли к подстройке своих программ», — сказал Лоуэнталь.

Поскольку Brave основан на открытом проекте Chromium, в нём есть поддержка DoH. Однако команда пока не настроила эту поддержку. В коде она есть, но включается так, как это придумала команда авторов Google Chrome. Включить DoH в Brave можно, перейдя на следующий URL:

brave://flags/#dns-over-https

Chrome


Google Chrome стал вторым браузером после Firefox, добавившим поддержку DoH. Её можно включить, перейдя по следующему URL:

chrome://flags/#dns-over-https

По-умолчанию DoH не включено для всех. Сейчас Google проводит ограниченный эксперимент с небольшим количеством пользователей, чтобы проверить, как DoH покажет себя при реальном использовании.

Поддержка DoH в Chrome отличается от Firefox, по-умолчанию перенаправляющего DoH-трафик на Cloudflare. Браузер после включения протокола будет отправлять DNS-запросы на всё те же сервера, что и ранее. Если у выбранного сервера окажется интерфейс с поддержкой DoH, тогда Chrome зашифрует DNS-трафик и отправит его на тот же DNS-сервер по протоколу DoH.

Благодаря этому Chrome не перехватывает DNS-настройки ОС – это очень ответственный подход, поскольку браузер может использоваться в условиях больших предприятий.

На текущий момент DoH в Chrome работает так:

  • Пользователь вводит URL сайта в браузере.
  • Chrome получает данные по DNS-серверу ОС.
  • Он проверяет, есть ли этот сервер в белом списке одобренных серверов с поддержкой DoH.
  • Если да, Chrome отправляет зашифрованный DNS-запрос на интерфейс этого сервера.
  • Если нет, Chrome отправляет обычный DNS-запрос к этому серверу.

Поэтому у пользователя существует риск так и не воспользоваться протоколом DoH. ОС пользователя обычно получает настройки DNS от авторитетного сетевого центра, коим обычно выступает провайдер. Если провайдер не хочет использовать DNS с поддержкой DoH, то у вас это и не будет работать.

Однако есть два способа обойти это и заставить Chrome использовать DoH постоянно и вне зависимости от настроек DNS вашего провайдера.

Во-первых, можно воспользоваться обучающим материалом по принудительному включению поддержки DoH в Chrome. Во-вторых, пользователь может настроить DNS-сервер с поддержкой DoH в своей ОС. Его можно выбрать из списка, и это гарантированно будет работать в Chrome.

Edge


В следующем году Microsoft планирует выпустить новую версию браузера Edge на основе кода Chromium. Представитель Microsoft сообщил нам, что компания поддерживает DoH, но точные планы не раскрывает. Однако, версия Edge на основе Chromium уже поддерживает DoH. Её можно включить, перейдя по URL:

edge://flags/#dns-over-https

Это включит поддержку DoH, но она будет работать только, если ваш компьютер использует DNS с поддержкой DoH – чего в 99% случаев не происходит. Чтобы принудительно включить DoH в Edge, вы можете воспользоваться инструкцией из следующего поста в блоге одного из программистов Edge. Адрес сервера Cloudflare можно заменить на любой другой сервер DoH, который можно выбрать по ссылке. После соответствующей настройки, Edge способен работать с DoH.

Firefox


Mozilla стала пионером этого протокола совместно с Cloudflare. Поддержка DoH уже есть в стабильных версиях Firefox. Её можно включить в настройках в разделе «Настройки сети».

Все критикуют реализацию DoH в Firefox потому, что браузер по умолчанию использует Cloudflare, перезаписывая настройки DNS.

Однако это значение можно поменять, прописав любой сервер с DoH. Из всех браузеров, поддержка протокола в Firefox реализована лучше всего, а настроить её легче всего – в основном потому, что разработчики имели с ней дело дольше остальных.

Сейчас браузер уже включает поддержку DoH по умолчанию для всех пользователей США. Поскольку британское правительство возражает против этого, для британских пользователей эта поддержка по умолчанию включена не будет.

В прошлом Mozilla не гарантировала включение DoH по умолчанию в других странах. Однако, поскольку поддержка протокола уже есть в стабильной версии браузера, пользователю остаётся лишь включить её, и всё будет работать.

Opera


Opera уже встроила поддержку DoH. По умолчанию она выключена, но её можно включить в любой момент, и всё будет работать без дополнительных шагов.

Разработчики Opera используют модуль для работы с DoH сходный с тем, что используется в Firefox, и не оставляют всё на откуп провайдерам, как Chrome. Весь трафик браузера сейчас идёт через резолвер 1.1.1.1 от Cloudflare.

Мы не нашли способа поменять его на другой, но, по крайней мере, DoH в Opera работает. Однако работать с VPN он не будет – если вам нужен DoH, то его придётся отключить.

Чтобы включить DoH в Opera, зайдите сюда:

opera://flags/opera-doh

Safari


Нет данных. Разработчики Safari обычно опаздывают на все вечеринки по добавлению новых возможностей, а Apple недавно вкладывалась в конфиденциальность пользователей, поэтому есть все шансы, что у Safari появится поддержка DoH.

Vivaldi


Представитель Vivaldi сказал, что поддержка DoH связана с реализацией Chrome. Пользователи могут включить её, перейдя по следующему URL:

vivaldi://flags/#dns-over-https

Однако поскольку DoH в Vivaldi работает так же, как в Chrome, он не будет шифровать DNS-запросы, если пользователь использует DNS-сервер, указанный в ОС, и не поддерживающий шифрование.

Скорее всего, придётся добавить в настройки DNS вашей ОС один из серверов, поддерживающий DoH, чтобы эта функция заработала в Vivaldi, и использовать его постоянно. Мы смогли добиться этого, прописав в настройках DNS-сервер 1.1.1.1.

Представитель Vivaldi сказал, что в будущем поддержка DoH в браузере может поменяться, в зависимости от того, как Google будет изменять поддержку протокола в Chromium.

Вредонос научился подделывать настройки DNS с помощью нового трюка — «Хакер»

Специалисты компании ESET предупреждают, что в арсенале авторов вредоносного и нежелательного ПО появилась еще одна уловка. Приложение DNS Unlocker подменяет настройки DNS в системе, чтобы вживить на страницы сайтов собственные рекламные объявления, которые зачастую бывают опасны.  При этом обнаружить подмену DNS будет не так-то просто. Метод работает для машин под управлением Windows XP, Vista, 7, 8, 8.1 и 10 (x86 и x64).

В целом техники подмены адресов DNS — это совсем не новость, однако DNS Unlocker демонстрирует новый вектор атаки. Обычно вредоносные приложения просто активируют функцию «Использовать следующие адреса DNS-серверов» (Use the following DNS server addresses) в сетевых настройках системы и прописывают туда собственные адреса DNS. Такие изменения отражаются в реестре Windows: указанные IP-адреса записываются один за другим, в формате IP,IP. К примеру:

192.168.1.21,192.168.1.22

DNS Unlocker, однако, действует иначе. Вредонос вносит изменения в реестр, используя другой формат – вместо запятой здесь следует пробел, получается строка вида IP IP. Исследователи отмечают, что с тем же успехом злоумышленники могут использовать и точку с запятой, формат IP;IP тоже работает.

192.168.1.21 192.168.1.22

Если Windows обнаруживает запятую между адресами DNS, в окне Internet Protocol Version 4 (TCP/IPv4) появляются соответственные изменения. Но если вместо запятой стоит пробел, интерфейс не претерпевает изменений. Окно настроек отображает, что активно дефолтное значение «Получить адрес DNS-сервера автоматически» (Obtain DNS server address automatically), и ничего не изменилось. То есть у пользователя создается иллюзия, что с адресами DNS все в порядке, тогда как на самом деле, машина давно работает с адресами злоумышленников.

Даже если попытаться посмотреть сетевые настройки через ipconfig /all, это тоже не поможет найти подмену. На такой запрос система ответит, что использует DHCP, даже если это не так. Просто команда ipconfig позволит увидеть статические адреса DNS, но не позволит понять, что используется в данный момент – они или DNS-адрес выбирается автоматически. Чтобы обнаружить подмену, придется действовать через GUI: в окне с настройками нужно нажать на кнопку «Advanced» и открыть вкладку DNS.

Если DNS Unlocker уже сделал свое черное дело, и Windows полагает, что первичный и вторичный адреса DNS уже заданы (хотя пользователь этого и не видит), активация опции «Использовать следующие адреса DNS-серверов» и заполнение соответственных полей не дадут результата. Система добавит новые адреса DNS в реестр после вредоносных. Получится запись вида IP IP,IP,IP. В итоге Windows продолжит использовать значения злоумышленников.

192.168.1.21 192.168.1.22,208.67.222.123,208.67.220.123

Избавиться от подложных DNS-адресов, к счастью, нетрудно. Как было сказано выше, достаточно открыть окно с настройками TCP/IP, нажать на кнопку «Advanced» и перейти во вкладку DNS. В этой вкладке адреса, заданные DNS Unlocker можно поочередно удалить.

Исследователи ESET сообщили о проблеме сотрудникам Microsoft Security Response Center еще 10 мая 2016 года. Однако в MSRC отказались рассматривать данный случай как уязвимость, хотя и пообещали передать информацию о проблеме командам разработчиков, которые со временем, возможно, устранят данный баг.

Фото: ESET

Как спрятать DNS-запросы от любопытных глаз провайдера / Хабр

Настройка 1.1.1.1 от Cloudflare и других DNS-сервисов по-прежнему требует навыков работы в командной строке



Шифрование трафика между вашим устройством и DNS-сервисом помешает посторонним лицам отслеживать трафик или подменить адрес

Смерть сетевого нейтралитета и ослабление правил для интернет-провайдеров по обработке сетевого трафика вызвали немало опасений по поводу конфиденциальности. У провайдеров (и других посторонних лиц, которые наблюдают за проходящим трафиком) уже давно есть инструмент, позволяющий легко отслеживать поведение людей в интернете: это их серверы доменных имен (DNS). Даже если они до сих пор не монетизировали эти данные (или не подменяли трафик), то наверняка скоро начнут.

DNS — это телефонный справочник Сети, выдающий фактический сетевой адрес IP, связанный с хостингом и доменными именами сайтов и других интернет-служб. Например, он превращает arstechnica.com в 50.31.169.131. Ваш интернет-провайдер предлагает DNS в пакете услуг, но он также может журналировать DNS-трафик — по сути, записывать историю ваших действий в интернете.

«Открытые» DNS-сервисы позволяют обходить сервисы провайдеров ради конфиденциальности и безопасности, а кое в каких странах — уклоняться от фильтрации контента, слежки и цензуры. 1 апреля (не шутка) компания Cloudflare запустила свой новый, бесплатный и высокопроизводительный DNS-сервис, предназначенный для повышения конфиденциальности пользователей в интернете. Он также обещает полностью скрыть DNS-трафик от посторонних глаз, используя шифрование.

Названный по своему IP-адресу, сервис 1.1.1.1 — это результат партнёрства с исследовательской группой APNIC, Азиатско-Тихоокеанским сетевым информационным центром, одним из пяти региональных интернет-регистраторов. Хотя он также доступен как «открытый» обычный DNS-резолвер (и очень быстрый), но Cloudflare ещё поддерживает два протокола шифрования DNS.

Хотя и разработанный с некоторыми уникальными «плюшками» от Cloudflare, но 1.1.1.1 — никак не первый DNS-сервис с шифрованием. Успешно работают Quad9, OpenDNS от Cisco, сервис 8.8.8.8 от Google и множество более мелких сервисов с поддержкой различных схем полного шифрования DNS-запросов. Но шифрование не обязательно означает, что ваш трафик невидим: некоторые службы DNS с шифрованием всё равно записывают ваши запросы в лог для различных целей.

Cloudflare пообещал не журналировать DNS-трафик и нанял стороннюю фирму для аудита. Джефф Хастон из APNIC сообщил, что APNIC собирается использовать данные в исследовательских целях: диапазоны 1.0.0.0/24 и 1.1.1.0/24 изначально были сконфигурированы как адреса для «чёрного» трафика. Но APNIC не получит доступ к зашифрованному трафику DNS.

Для пользователей подключить DNS-шифрование не так просто, как изменить адрес в настройках сети. В настоящее время ни одна ОС напрямую не поддерживает шифрование DNS без дополнительного программного обеспечения. И не все сервисы одинаковы с точки зрения софта и производительности.

Но учитывая важность вопроса — в последнее время во всех новостях говорят о превращении пользовательских данных в продукт — я решил посмотреть, как работает DNS-шифрование у Cloudflare. В итоге моя внутренняя лабораторная крыса победила — и я обнаружил, что тестирую и разбираю клиенты для нескольких провайдеров DNS через три протокола DNS-шифрования: DNSCrypt, DNS по TLS и DNS по HTTPS. Все они работоспособны, но предупреждаю: хотя процедура становится проще, но вряд ли вы сможете объяснить шифрование DNS родителям по телефону (если только они не опытные пользователи командной строки Linux).


Как работает DNS


Есть много причин для лучшей защиты DNS-трафика. Хотя веб-трафик и другие коммуникации могут быть защищены криптографическими протоколами, такими как Transport Layer Security (TLS), но почти весь трафик DNS передаётся незашифрованным. Это означает, что ваш провайдер (или кто-то другой между вами и интернетом) может регистрировать посещаемые сайты даже при работе через сторонний DNS — и использовать эти данных в своих интересах, включая фильтрацию контента и сбор данных в рекламных целях.


Как выглядит типичный обмен данными между устройством и DNS-резолвером

«У нас есть проблема “последней мили” в DNS, — говорил Крикет Лю, главный архитектор DNS в компании Infoblox, которая занимается информационной безопасностью. — Большинство наших механизмов безопасности решают вопросы коммуникаций между серверами. Но есть проблема с суррогатами резолверов на различных операционных системах. В реальности мы не можем их защитить». Проблема особенно заметна в странах, где власти более враждебно относятся к интернету.

В некоторой степени помогает использование DNS, который не ведёт логи. Но это всё равно не мешает злоумышленнику фильтровать запросы по контенту или перехватывать адреса методом пакетного перехвата или глубокой инспекции пакетов. Кроме пассивной прослушки есть угроза более активных атак на ваш DNS-трафик — спуфинг DNS-сервера со стороны провайдера или спецслужб с перенаправлением на собственный сервер для отслеживания или блокировки трафика. Что-то подобное (хотя, по-видимому, не злонамеренно), похоже, происходит со случайным перенаправлением трафика на адрес 1.1.1.1 из сети AT&T, судя по сообщениям на форумах DSLReports.

Наиболее очевидный способ уклонения от слежки — использование VPN. Но хотя VPN скрывают содержимое вашего трафика, для подключения к VPN может потребоваться запрос DNS. И в ходе VPN-сеанса запросы DNS тоже могут иногда направляться веб-браузерами или другим софтом за пределы VPN-тоннеля, создавая «утечки DNS», которые раскрывают посещённые сайты.

Вот где вступают в игру протоколы шифрования DNS: это DNSCrypt (среди прочих, его поддерживает OpenDNS от Cisco), DNS по TLS (поддерживается Сloudflare, Google, Quad9, OpenDNS) и DNS по HTTPS (поддерживается Сloudflare, Google и сервисом блокировки «взрослого» контента CleanBrowsing). Шифрование гарантирует, что трафик не просканируют и не изменят, и что запросы не получит и не обработает поддельный DNS-сервер. Это защищает от атак MiTM и шпионажа. DNS-прокси с одной из этих служб (непосредственно на устройстве или на «сервере» в локальной сети) поможет предотвратить DNS-утечки через VPN, поскольку прокси-сервер всегда будет самым быстрым DNS-сервером среди всех доступных.

Однако эта опция защиты недоступна массовому пользователю. Ни один из этих протоколов нативно не поддерживается ни одним DNS-резолвером, который идёт в комплекте с ОС. Все они требуют установки (и, вероятно, компиляции) клиентского приложения, которое действует как локальный «сервер» DNS, ретранслируя запросы, сделанные браузерами и другими приложениями вверх по течению к безопасному провайдеру DNS по вашему выбору. И хотя две из трёх данных технологий предлагаются на роль стандартов, ни один из проверенных нами вариантов пока не представлен в окончательном виде.

Поэтому если хотите погрузиться в шифрование DNS, то лучше взять для DNS-сервера в домашней сети Raspberry Pi или другое отдельное устройство. Потому что вы наверняка обнаружите, что настройка одного из перечисленных клиентов — это уже достаточно хакерства, чтобы не захотеть повторять процесс заново. Проще запросить настройки DHCP по локальной сети — и указать всем компьютерам на одну успешную установку DNS-сервера. Я много раз повторял себе это во время тестирования, наблюдая падение одного за другим клиентов под Windows и погружение в спячку клиентов под MacOS.


Сообщество DNSCrypt пыталось сделать доступный инструмент для тех, кто не обладает навыками работы в командной строке, выпустив программы DNSCloak (слева) под iOS и Simple DNSCrypt (справа) под Windows


Для полноты картины в исторической перспективе начнём обзор с самой первой технологии шифрования DNS — DNSCrypt. Впервые представленный в 2008 году на BSD Unix, инструмент DNSCrypt изначально предназначался для защиты не от прослушки, а от DNS-спуфинга. Тем не менее, его можно использовать как часть системы обеспечения конфиденциальности — особенно в сочетании с DNS-сервером без логов. Как отметил разработчик DNSCrypt Фрэнк Денис, гораздо больше серверов поддерживают DNSCrypt, чем любой другой вид шифрования DNS.

«DNSCrypt — это немного больше, чем просто протокол, — говорит Фрэнк Денис. — Сейчас сообщество и активные проекты характеризуют его гораздо лучше, чем мой изначальный протокол, разработанный в выходные». Сообщество DNSCrypt создало простые в использовании клиенты, такие как Simple DNSCrypt для Windows и клиент для Apple iOS под названием DNS Cloak, что делает шифрование DNS доступнее для нетехнических людей. Другие активисты подняли независимую сеть приватных DNS-серверов на основе протокола, помогающего пользователям уклониться от использования корпоративных DNS-систем.

«DNSCrypt — это не подключение к серверам конкретной компании, — сказал Денис. — Мы призываем всех поднимать собственные сервера. Сделать это очень дёшево и легко. Теперь, когда у нас есть безопасные резолверы, я пытаюсь решить задачу фильтрации контента с учётом конфиденциальности».

Для тех, кто хочет запустить DNS-сервер с поддержкой DNSCrypt для всей своей сети, лучшим клиентом будет DNSCrypt Proxy 2. Старая версия DNSCrypt Proxy по-прежнему доступна как пакет для большинства основных дистрибутивов Linux, но лучше загрузить бинарник новой версии непосредственно с официального репозитория на GitHub. Есть версии для Windows, MacOS, BSD и Android.

Опыт сообщества DNSCrypt по защите конфиденциальности воплощён в DNSCrypt Proxy. Программа легко настраивается, поддерживает ограничения по времени доступа, шаблоны для доменов и чёрный список IP-адресов, журнал запросов и другие функции довольно мощного локального DNS-сервера. Но для начала работы достаточно самой базовой конфигурации. Есть пример файла конфигурации в формате TOML (Tom’s Obvious Minimal Language, созданный соучредителем GitHub Томом Престоном-Вернером). Можете просто переименовать его перед запуском DNSCrypt Proxy — и он станет рабочим файлом конфигурации.

По умолчанию прокси-сервер использует открытый DNS-резолвер Quad9 для поиска и получения с GitHub курируемого списка открытых DNS-сервисов. Затем подключается к серверу с самым быстрым откликом. При необходимости можно изменить конфигурацию и выбрать конкретный сервис. Информация о серверах в списке кодируется как «штамп сервера». Он содержит IP-адрес поставщика, открытый ключ, информацию, поддерживает ли сервер DNSSEC, хранит ли провайдер логи и блокирует ли какие-нибудь домены. (Если не хотите зависеть от удалённого файла при установке, то можно запустить «калькулятор штампов» на JavaScript — и сгенерировать собственный локальный статичный список серверов в этом формате).

Для своего тестирования DNSCrypt я использовал OpenDNS от Cisco в качестве удалённого DNS-сервиса. При первых запросах производительность DNSCrypt оказалась немного хуже, чем у обычного DNS, но затем DNSCrypt Proxy кэширует результаты. Самые медленные запросы обрабатывались в районе 200 мс, в то время как средние — примерно за 30 мс. (У вас результаты могут отличаться в зависимости от провайдера, рекурсии при поиске домена и других факторов). В целом, я не заметил замедления скорости при просмотре веб-страниц.

Основное преимущество DNSCrypt в том, что он похож на «обычный» DNS. Хорошо это или плохо, но он передаёт UDP-трафик по порту 443 — тот же порт используется для безопасных веб-соединений. Это даёт относительно быстрый резолвинг адресов и снижает вероятность блокировки на файрволе провайдера. Чтобы ещё больше снизить вероятность блокировки, можно изменить конфигурацию клиента и передавать запросы по TCP/IP (как показало тестирование, это минимально влияет на время отклика). Так шифрованный DNS-трафик для большинства сетевых фильтров похож на трафик HTTPS — по крайней мере, с виду.


Показан трафик DNSCrypt и локальный трафик DNSCrypt Proxy. Снифер Wireshark говорит, что это трафик HTTPS, потому что я форсировал использование TCP. Если пустить его по UDP, то Wireshark увидит трафик Chrome QUIC

С другой стороны, DNSCrypt для шифрования не полагается на доверенные центры сертификации — клиент должен доверять открытому ключу подписи, выданному провайдером. Этот ключ подписи используется для проверки сертификатов, которые извлекаются с помощью обычных (нешифрованных) DNS-запросов и используются для обмена ключами с использованием алгоритма обмена ключами X25519. В некоторых (более старых) реализациях DNSCrypt есть условие для сертификата на стороне клиента, который может использоваться в качестве схемы управления доступом. Это позволяет им журналировать ваш трафик независимо от того, с какой IP-адреса вы пришли, и связывать его с вашим аккаунтом. Такая схема не используется в DNSCrypt 2.

С точки зрения разработчика немного сложно работать с DNSCrypt. «DNSCrypt не особенно хорошо документирован, и не так много его реализаций», — говорит Крикет Лю из Infoblox. На самом деле мы смогли найти только единственный клиент в активной разработке — это DNSCrypt Proxy, а OpenDNS прекратил поддерживать его разработку.

Интересный выбор криптографии в DNSCrypt может напугать некоторых разработчиков. Протокол использует Curve25519 (RFC 8032), X25519 (RFC 8031) и Chacha20Poly1305 (RFC 7539). Одна реализация алгоритма X24419 в криптографических библиотеках Pyca Python помечена как «криптографически опасная», потому что с ней очень легко ошибиться в настройках. Но основной используемый криптографический алгоритм Curve25519, является «одной из самых простых эллиптических кривых для безопасного использования», — сказал Денис.

Разработчик говорит, что DNSCrypt никогда не считался стандартом IETF, потому что был создан добровольцами без корпоративной «крыши». Представление его в качестве стандарта «потребовало бы времени, а также защиты на заседаниях IETF», — сказал он. «Я не могу себе этого позволить, как и другие разработчики, которые работают над ним в свободное время. Практически все ратифицированные спецификации, связанные с DNS, фактически написаны людьми из одних и тех же нескольких компаний, из года в год. Если ваш бизнес не связан с DNS, то действительно тяжело получить право голоса».

Хотя несколько DNS-сервисов используют DNSCrypt (например, CleanBrowsing для блокировки «взрослого» контента и Cisco OpenDNS для блокировки вредоносных доменов), новые ориентированные на приватность DNS-провайдеры (в том числе Google, Cloudflare и Quad9) отказались от DNSCrypt и выбрали одну из других, одобренных группой IETF технологий: DNS по TLS и DNS по HTTPS. Сейчас DNSCrypt Proxy поддерживает DNS по HTTPS и указывает Cloudflare, Google и Quad9 в настройках по умолчанию.


TLS стал приоритетом для CloudFlare, когда понадобилось усилить шифрование веб-трафика для защиты от слежки


У DNS по TLS (Transport Layer Security) несколько преимуществ перед DNSCrypt. Во-первых, это предлагаемый стандарт IETF. Также он довольно просто работает по своей сути — принимает запросы стандартного формата DNS и инкапсулирует их в зашифрованный TCP-трафик. Кроме шифрования на основе TLS, это по существу то же самое, что и отправка DNS по TCP/IP вместо UDP.

Существует несколько рабочих клиентов для DNS по TLS. Самый лучший вариант, который я нашел, называется Stubby, он разработан в рамках проекта DNS Privacy Project. Stubby распространяется в составе пакета Linux, но есть также версия для MacOS (устанавливается с помощью Homebrew) и версия для Windows, хотя работа над последней ещё не завершена.

Хотя мне удалось стабильно запускать Stubby на Debian после сражения с некоторыми зависимостями, этот клиент регулярно падал в Windows 10 и имеет тенденцию зависать на MacOS. Если вы ищете хорошее руководство по установке Stubby на Linux, то лучшая найденная мной документация — это пост Фрэнка Сантосо на Reddit. Он также написал shell скрипт для установки на Raspberry Pi.

Положительный момент в том, что Stubby допускает конфигурации с использованием нескольких служб на основе DNS по TLS. Файл конфигурации на YAML позволяет настроить несколько служб IPv4 и IPv6 и включает в себя настройки для SURFNet, Quad9 и других сервисов. Однако реализация YAML, используемая Stubby, чувствительна к пробелам, поэтому будьте осторожны при добавлении новой службы (например, Cloudflare). Сначала я использовал табы — и всё поломал.

Клиенты DNS по TLS при подключении к серверу DNS осуществляют аутентификацию с помощью простой инфраструктуры открытых ключей (Simple Public Key Infrastructure, SPKI). SPKI использует локальный криптографический хэш сертификата провайдера, обычно на алгоритме SHA256. В Stubby этот хэш хранится как часть описания сервера в файле конфигурации YAML, как показано ниже:

upstream_recursive_servers:
#IPv4
#Cloudflare DNS over TLS server

- address_data: 1.1.1.1
  tls_auth_name: "cloudflare-dns.com"
  tls_pubkey_pinset:
  - digest: "sha256"
    value: yioEpqeR4WtDwE9YxNVnCEkTxIjx6EEIwFSQW+lJsbc=
- address_data: 1.0.0.1
  tls_auth_name: "cloudflare-dns.com"
  tls_pubkey_pinset:
  - digest: "sha256"
    value: yioEpqeR4WtDwE9YxNVnCEkTxIjx6EEIwFSQW+lJsbc=

После установления TCP-соединения клиента с сервером через порт 853 сервер представляет свой сертификат, а клиент сверяет его с хэшем. Если всё в порядке, то клиент и сервер производят рукопожатие TLS, обмениваются ключами и запускают зашифрованный сеанс связи. С этого момента данные в зашифрованной сессии следуют тем же правилам, что и в DNS по TCP.

После успешного запуска Stubby я изменил сетевые настройки сети DNS, чтобы направлять запросы на 127.0.0.1 (localhost). Сниффер Wireshark хорошо показывает этот момент переключения, когда трафик DNS становится невидимым.


Переключаемся с обычного трафика DNS на шифрование TLS

Хотя DNS по TLS может работать как DNS по TCP, но шифрование TLS немного сказывается на производительности. Запросы dig к Cloudflare через Stubby у меня выполнялись в среднем около 50 миллисекунд (у вас результат может отличаться), в то время как простые DNS-запросы к Cloudflare получают ответ менее чем за 20 мс.

Частично замедление работы происходит на стороне сервера из-за лишнего использования TCP. Обычно DNS работает по быстрому протоколу UDP: отправил и забыл, в то время как сообщение TCP требует согласования соединения и проверки получения пакета. Основанная на UDP версия DNS по TLS под названием DNS over Datagram Transport Layer Security (DTLS) сейчас в экспериментальной разработке — она может увеличить производительность протокола.

Здесь тоже имеется проблема с управлением сертификатами. Если провайдер удалит сертификат и начнёт использовать новый, то в настоящее время нет чистого способа обновления данных SPKI на клиентах, кроме вырезания старого и вставки нового сертификата в файл конфигурации. Прежде чем с этим разберутся, было бы полезно использовать какую-то схему управления ключами. И поскольку сервис работает на редком порту 853, то с высокой вероятностью DNS по TLS могут заблокировать на файрволе.

Но это не проблема для лидера нашего хит-парада — DNS по HTTPS. Он проходит через большинство файрволов, словно тех не существует.


Google и Cloudflare, похоже, одинаково видят будущее зашифрованного DNS


И Google, и Cloudflare, кажется, видят протокол DNS по HTTPS, также известный как DoH, как самый перспективный вариант для шифрования DNS. Опубликованный в виде черновика стандарта IETF, протокол DoH инкапсулирует DNS-запросы в пакеты HTTPS, превращения их в обычный зашифрованный веб-трафик.

Запросы отправляются как HTTP POST или GET с телом в формате сообщения DNS (датаграммы из обычных DNS-запросов) или как запрос HTTP GET в формате JSON (если вы не против небольшого оверхеда). И здесь нет никаких проблем с управлением сертификатами. Как и при обычном веб-трафике HTTPS, для подключения через DoH не требуется аутентификация, а сертификат проверяется центром сертификации.


Фиксация DNS-транзакции через DoH. Видно только HTTPS, TLS и ничего больше

HTTPS — довольно громоздкий протокол для запросов DNS, особенно в формате JSON, поэтому придётся смириться с некоторым снижением производительности. Необходимые ресурсы на стороне сервера почти наверняка заставят прослезиться администратора обычного DNS-сервера. Но простота работы с хорошо понятными веб-протоколами делает разработку как клиентского, так и серверного кода для DoH намного более доступной для разработчиков, собаку съевших на веб-приложениях (всего несколько недель назад инженеры Facebook выпустили концепт сервера и клиента DoH на Python).

В результате, хотя на спецификациях RFC для DoH ещё не просохли чернила, уже готов к работе целый ряд клиентов DNS по HTTPS. Правда, некоторые из них заточены под конкретных провайдеров DNS. Потеря производительности во многом зависит от сервера и от качества конкретного клиента.

Например, возьмём клиент туннелирования Argo от Cloudflare (aka cloudflared). Это многофункциональный инструмент туннелирования, предназначенный в первую очередь для установления безопасного канала для связи веб-серверов с CDN-сетью Cloudflare. DNS по HTTPS — просто ещё одна служба, которую теперь поддерживает CDN.

По умолчанию, если запустить Argo из командной строки (в Linux и MacOS для этого нужны привилегии суперпользователя, а на Windows нужно запускать клиента из PowerShell от имени администратора), то он направляет DNS-запросы на https://cloudflare-dns.com/dns-query. Если не настроен обычный DNS, то возможна небольшая проблемка, потому что данный адрес должен резолвиться в 1.1.1.1, иначе Argo не запустится.

Это можно исправить одним из трёх способов. Первый вариант: установить устройство с локальным хостом (127.0.0.1 для IPv4 и ::1 для IPv6) как основной DNS-сервер в сетевой конфигурации, а затем добавить 1.1.1.1 в качестве дополнительного резолвера. Это рабочий вариант, но он не идеален с точки зрения приватности и производительности. Лучше добавить URL сервера из командной строки при загрузке:

$ sudo cloudflared proxy-dns --upstream https://1.0.0.1/dns-query

Если вы уверены, что хотите перейти на DNS-сервер от Cloudflare, что даёт преимущество автоматического обновления, — то можете настроить его в качестве службы в Linux, используя YAML-файл конфигурации, содержащий адреса IPv4 и IPv6 службы DNS от Cloudflare:
proxy-dns: true
proxy-dns-upstream:
- https://1.1.1.1/dns-query
- https://1.0.0.1/dns-query

При настройке с правильной восходящей адресацией производительность dig-запросов через Argo широко варьируется: от 12 мс для популярных доменов аж до 131 мс. Страницы с большим количеством межсайтового контента загружаются… немного дольше обычного. Опять же, ваш результат может быть другим — вероятно, он зависит от вашего местоположения и связности. Но это примерно то, чего я ожидал от мрачного протокол DoH.


Как Cloudflare, мы считаем, что туннели иллюстрируют операцию «Арго» лучше, чем Бен Аффлек

Дабы убедиться, что проблема именно в протоколе DoH, а не в программистах Cloudflare, я испытал два других инструмента. Во-первых, прокси-сервер от Google под названием Dingo. Его написал Павел Форемски, интернет-исследователь из Института теоретической и прикладной информатики Академии наук Польши. Dingo работает только с реализацией DoH от Google, но его можно настроить на ближайшую службу Google DNS. Это хорошо, потому что без такой оптимизации Dingo сожрал всю производительность DNS. Запросы dig в среднем выполнялись более 100 миллисекунд.

Во время проверки обработки стандартных запросов службой dns.google.com я наткнулся на альтернативу дефолтному адресу 8.8.8.8 от Google (172.217.8.14, если знаете). Я добавил его в Dingo из командной строки:

$ sudo ./dingo-linux-amd64 -port=53 -gdns:server=172.216.8.14

Это сократило время отклика примерно на 20%, то есть примерно до того показателя, как у Argo.

А оптимальную производительность DoH неожиданно показал DNSCrypt Proxy 2. После недавнего добавления DoH Cloudflare в курируемый список публичных DNS-сервисов DNSCrypt Proxy почти всегда по умолчанию подключается к Cloudflare из-за низкой задержки этого сервера. Чтобы убедиться, я даже вручную сконфигурировал его под резолвер Cloudflare для DoH, прежде чем запустить батарею dig-запросов.

Все запросы обрабатывались менее чем за 45 миллисекунд — это быстрее, чем собственный клиент Cloudflare, причём с большим отрывом. С сервисом DoH от Google производительность оказалась похуже: запросы обрабатывались в среднем около 80 миллисекунд. Это показатель без оптимизации на ближайший DNS-сервер от Google.

В целом производительность DNSCrypt Proxy по DoH практически неотличима от резолвера DNS по TLS, который я проверял ранее. На самом деле он даже быстрее. Я не уверен, то ли это из-за какой-то особой реализации DoH — может быть, из-за использования стандартного формата сообщений DNS, инкапсулированных в HTTPS, вместо формата JSON — то ли связано с тем, как Cloudflare обрабатывает два разных протокола.


Я не Бэтмен, но моя модель угроз всё равно немного сложнее, чем у большинства людей


Я профессиональный параноик. Моя модель угроз отличается от вашей, и я предпочел бы сохранить в безопасности как можно больше своих действий в онлайне. Но учитывая количество нынешних угроз приватности и безопасности из-за манипуляций с трафиком DNS, у многих людей есть веские основания использовать какую-либо форму шифрования DNS. Я с удовольствием обнаружил, что некоторые реализации всех трёх протоколов не оказывают сильно негативного влияния на скорость передачи трафика.

Тем не менее, важно отметить, что одно лишь шифрование DNS не скроет ваши действия в интернете. Если на сервере хостятся несколько сайтов, то расширение TLS под названием Server Name Indicator (SNI), используемое в соединениях HTTPS, всё равно может показать открытым текстом название сайта, на который вы зашли. Для полной конфиденциальности всё равно нужно использовать VPN (или Tor) для такой инкапсуляции трафика, чтобы провайдер или какая-либо другая шпионящая сторона не могла вытянуть метаданные из пакетов. Но ни один из перечисленных сервисов не работает с Tor. И если против вас работает правительственное агентство, то ни в чём нельзя быть уверенным.

Другая проблема в том, что, хотя прекрасные ребята из сообщества DNSCrypt проделали большую работу, но такая приватность по-прежнему слишком сложна для обычных людей. Хотя некоторые из этих DNS-клиентов для шифрования оказалось относительно легко настроить, но ни один из них нельзя назвать гарантированно простым для нормальных пользователей. Чтобы эти услуги стали действительно полезными, их следует плотнее интегрировать в железо и софт, который покупают люди — домашние маршрутизаторы, операционные системы для персональных компьютеров и мобильных устройств.

Интернет-провайдеры наверняка постараются активнее монетизировать обычный DNS-трафик, и никуда не исчезнут государственные агентства и преступники, которые стремятся использовать его во вред пользователю. Но маловероятно, что крупные разработчики ОС стремятся надёжно защитить DNS доступным для большинства людей способом, потому что они часто заинтересованы в монетизации, как и интернет-провайдеры. Кроме того, эти разработчики могут столкнуться с сопротивлением изменениям со стороны некоторых правительств, которые хотят сохранить возможности мониторинга DNS.

Так что в ближайшее время эти протоколы останутся инструментом для тех немногих людей, кто реально заботится о конфиденциальности своих данных и готов для этого немного потрудиться. Надеюсь, сообщество вокруг DNSCrypt продолжит свою активность и продвинет ситуацию вперёд.

Руководство по безопасности DNS / Блог компании Varonis Systems / Хабр

Чем бы ни занималась компания, безопасность DNS должна являться неотъемлемой частью ее плана по обеспечению безопасности. Службы обработки имен, преобразовывающие имена сетевых узлов в IP-адреса, используются буквально всеми приложениями и службами в сети.

Если злоумышленник получит контроль над DNS организации, то сможет без проблем:

  • передать себе управление над ресурсами, находящимися в общем доступе
  • перенаправить входящие электронные письма, а также веб-запросы и попытки аутентификации
  • создавать и подтверждать сертификаты SSL/TLS

Данное руководство рассматривает безопасность DNS с двух сторон:
  1. Осуществление постоянного мониторинга и контроля над DNS
  2. Как новые протоколы DNS, такие как DNSSEC, DOH и DoT, способны помочь защитить целостность и конфиденциальность передаваемых DNS-запросов


Что такое безопасность DNS?


В понятие безопасности DNS входят две важные составляющие:


  1. Обеспечение общей целостности и доступности служб DNS, преобразовывающих имена сетевых узлов в IP-адреса
  2. Мониторинг активности DNS для определения возможных проблем безопасности где-либо в вашей сети

Почему DNS уязвима для атак?


Технология DNS была создана на заре развития интернета, задолго до того, как кто-либо вообще начал думать о сетевой безопасности. DNS работает без аутентификации и шифрования, вслепую обрабатывая запросы любого пользователя.

В связи с этим существует множество способов обмануть пользователя и подделать информацию о том, где на самом деле осуществляется преобразование имен в IP-адреса.

Безопасность DNS: вопросы и компоненты


Безопасность DNS состоит из нескольких основных компонентов, каждый из которых нужно принять во внимание для обеспечения полноценной защиты:

  • Усиление безопасности серверов и процедур управления: повышайте уровень защищенности серверов и создайте стандартный шаблон ввода в эксплуатацию
  • Совершенствование протокола: внедрите DNSSEC, DoT или DoH
  • Аналитика и отчетность: добавьте журнал событий DNS в SIEM-систему для дополнительного контекста при расследовании инцидентов
  • Киберразведка и обнаружение угроз: подпишитесь на активный канал получения аналитических данных об угрозах
  • Автоматизация: создайте максимально возможное количество сценариев, чтобы автоматизировать процессы

Вышеупомянутые высокоуровневые компоненты — это лишь верхушка айсберга безопасности DNS. В следующем разделе мы подробно рассмотрим более конкретные варианты использования и передовые практики, о которых вам необходимо знать.

Атаки на DNS


  • подмена DNS или «отравление» кэша: использование уязвимости системы для управления кэшем DNS с целью перенаправления пользователей в другое место
  • DNS-туннелирование: в основном используется для обхода средств защиты от удаленных подключений
  • перехват DNS: перенаправление обычного трафика DNS на другой целевой DNS-сервер путем изменения регистратора домена
  • атака NXDOMAIN: проведение DDoS-атаки на авторитетный сервер DNS путем отправки неправомерных доменных запросов для получения принудительного ответа
  • фантомный домен: заставляет DNS-преобразователь (DNS resolver) ждать ответа от несуществующих доменов, что приводит к снижению производительности
  • атака на случайный субдомен: взломанные хосты и ботнеты проводят DDoS-атаку на действующий домен, но сосредотачивают огонь на ложных субдоменах, чтобы принудить DNS-сервер выполнять поиск записей и захватить управление над службой
  • блокировка домена: представляет собой отправку множества спам-откликов для блокировки ресурсов DNS-сервера
  • ботнет-атака с абонентского оборудования: совокупность компьютеров, модемов, роутеров и других устройств, концентрирующих вычислительную мощность на определенном веб-сайте для его перегрузки запросами трафика

Атаки с использованием DNS


Атаки, каким-либо образом использующие DNS для нападения на другие системы (т. е. изменение записей DNS не является конечной целью):

Атаки на DNS


Атаки, в результате которых с сервера DNS возвращается нужный злоумышленнику IP-адрес:
  • Подмена DNS или «отравление» кэша
  • Перехват DNS

Что такое DNSSEC?

DNSSEC — модули безопасности службы доменных имен — используются для проверки записей DNS без необходимости знать общую информацию по каждому конкретному DNS-запросу.

DNSSEC использует ключи цифровой подписи (PKI) для подтверждения того, получены ли результаты запроса доменного имени из допустимого источника.
Внедрение DNSSEC является не только лучшей отраслевой практикой, но также эффективно помогает избежать большинство атак на DNS.

Принцип работы DNSSEC

DNSSEC работает аналогично TLS/HTTPS, используя пары открытого и закрытого ключей для цифровой подписи записей DNS. Общий обзор процесса:
  1. Записи DNS подписываются парой закрытого и закрытого ключей
  2. Ответы на запросы DNSSEC содержат запрошенную запись, а также подпись и открытый ключ
  3. Затем открытый ключ используется для сравнения подлинности записи и подписи

Безопасность DNS и DNSSEC


DNSSEC — это средство для проверки целостности DNS-запросов. Оно не влияет на конфиденциальность DNS. Иными словами, DNSSEC может дать вам уверенность в том, что ответ на ваш DNS-запрос не подделан, но любой злоумышленник может увидеть эти результаты в том виде, в каком они были переданы вам.

DoT — DNS поверх TLS


Transport Layer Security (безопасность на транспортном уровне, TLS) — это криптографический протокол для защиты передаваемой информации по сетевому соединению. Как только между клиентом и сервером установлено безопасное соединение TLS, передаваемые данные шифруются и никакие посредники не смогут их увидеть.

TLS чаще всего используется как часть HTTPS (SSL) в вашем веб-браузере, поскольку запросы отправляются на защищенные HTTP-серверы.

DNS-over-TLS (DNS поверх TLS, DoT) использует протокол TLS для шифрования UDP-трафика обычных DNS-запросов.
Шифрование этих запросов в виде обычного текста помогает защитить пользователей или приложения, выполняющие запросы, от нескольких атак.

  • MitM, или «человек посередине»: без шифрования промежуточная система, находящаяся между клиентом и авторитетным DNS-сервером, может потенциально отправить клиенту в ответ на запрос ложную или опасную информацию
  • Шпионаж и отслеживание: без шифрования запросов промежуточным системам легко просматривать, к каким сайтам обращается конкретный пользователь или приложение. Хотя из одного лишь DNS нельзя будет узнать конкретную посещаемую страницу на сайте, простого знания запрашиваемых доменов достаточно для формирования профиля системы или отдельного человека


Источник: University of California Irvine

DoH — DNS поверх HTTPS


DNS-over-HTTPS (DNS поверх HTTPS, DoH)— это экспериментальный протокол, продвигаемый совместно Mozilla и Google. Его цели схожи с протоколом DoT — усиление конфиденциальности людей в интернете путем шифрования запросов и ответов DNS.

Стандартные DNS-запросы передаются через UDP. Запросы и ответы можно отслеживать с помощью таких инструментов, как Wireshark. DoT шифрует эти запросы, но они по-прежнему идентифицируются как довольно отчетливый трафик UDP в сети.

DoH использует другой подход и передает зашифрованные запросы на преобразование имен сетевых узлов через HTTPS-соединения, которые по сети выглядят как любой другой веб-запрос.

Это различие имеет весьма важные последствия как для системных администраторов, так и для будущего преобразования имен.

  1. DNS-фильтрация — это распространенный способ фильтрации веб-трафика для защиты пользователей от фишинговых атак, сайтов, распространяющих вредоносные программы, или другой потенциально опасной интернет-активности в корпоративной сети. Протокол DoH обходит эти фильтры, потенциально подвергая пользователей и сеть более высокому риску.
  2. В текущей модели преобразования имен каждое устройство в сети в той или иной степени получает DNS-запросы из одного и того же места (из указанного DNS-сервера). DoH и, в частности, его реализация от Firefox показывают, что в будущем это может измениться. Каждое приложение на компьютере может получать данные из разных источников DNS, что значительно усложняет поиск и устранение проблем, обеспечение безопасности и моделирование рисков.


Источник: www.varonis.com/blog/what-is-powershell

В чем разница между DNS поверх TLS и DNS поверх HTTPS?


Начнем с DNS поверх TLS (DoT). Основное внимание здесь уделяется тому, что оригинальный протокол DNS не изменяется, а просто безопасно передается по защищенному каналу. DoH же помещает DNS в формат HTTP перед выполнением запросов.

Оповещения мониторинга DNS


Возможность эффективно отслеживать трафик DNS в вашей сети на предмет подозрительных аномалий имеет решающее значение для раннего обнаружения взлома. Использование такого инструмента, как Varonis Edge даст вам возможность быть в курсе всех важных показателей и создавать профили для каждой учетной записи в вашей сети. Вы можете настроить генерацию оповещений в результате комбинации действий, происходящих за определенный период времени.

Мониторинг изменений DNS, местоположений учетной записи, а также фактов первого использования и получения доступа к конфиденциальным данным, а также активности в нерабочее время — это лишь несколько показателей, которые можно сопоставить для составления более обширной картины обнаружения.

Сервисы для проверки подмены DNS провайдерами

Тем, кто озабочен своей безопасностью\анонимностью и «прямохождением» своего трафика, стоит проверить — не мухлюют ли их провайдеры с DNS.

Сделать это элементарно с помощью бесплатных DNS-сервисов DNSP.CO (на dnsparanoia.com — подробная инструкция по использованию dnsp.co).

Если вы в windows, достаточно запустить nslookup, в нём выполнить lserver dnsp.co.
После этого можно узнать ооочень много интересного о гадком провайдере или даже целой стране

1)Проверяем — не «заворачивает» ли ваш провайдер все или некоторые запросы на свой прозразный прокси самым примитивным способом — через DNS.
В nslookape набираем любое имя сайта — домена второго уровня без точки в конце. Например, anynonexistingorexistingdomain.com. Жмем ENTER.

Ответ сервера 123.45.67.89 — чудненько!
В мануале на dnsparanoia.com написано, что если никто ничего не перехватывает — их сервер на ВСЕ днс-запросы типа «А» отвечает 123.45.67.89
У меня всё ок, а вот в Иране всё не так гладко ) все запросы на этот сервер заворачивают на адрес прозразного прокси.
А Билайн таким нехитрым способом иногда заворачивал запросы к банерокрутилкам Яндекса и Гугла на свою рекламу…тут попахивает разборками

2)Кешуриет ли наш провайдер DNS-запросы? В уже открытом окне nslookup-a набираем random.dnsp.co, жмем Enter. Приходит ответ — ip.
Cнова набираем random.dnsp.co, жмем Enter.
Приходит ответ — ДРУГОЙ ip.
Делаем так несколько раз — каждый раз разный ip в ответах.
Именно так и работает этот функционал сервиса — всё гениальное просто.

Если ip перестает меняться — твой провайдер или софт на компьютере кеширует DNS-ответы.

3)Перехватывает ли наш провайдер DNS-запросы? В уже открытом окне nslookup-a набираем reflect.dnsp.co, жмем Enter. Приходит ответ — ВАШ ip (Если он у вас static\реальный\»белый». Если нет — то должен прийти тот же ip, что и на сайтах типа 2ip.ru в графе «Ваш IP адрес:»).

Если в ответе другой адрес — запросы перехватываются провайдером, что жутко.

4)Перехватывает ли наш трафик живой любопытный человек? Придумываешь доменное имя четвертого уровня, которое заинтересует. В уже открытом окне nslookup-a набираем его YA_EBU_OVEC_BEEEEE.log.dnsp.co, жмем Enter. Приходит ответ — единственный ip — ВАШ (Если он у вас static\реальный\»белый». Если нет — то должен прийти тот же ip, что и на сайтах типа 2ip.ru в графе «Ваш IP адрес:»).

Через пару дней запускаем nslookup, в нём выполняем lserver dnsp.co, потом набираем YA_EBU_OVEC_BEEEEE.log.dnsp.co — и должен выпасть снова только 1 ip — ВАШ.
Если несколько IP в списке — значит кто-то или что-то снифало ваш трафик и обращалось к этому доменному имени:

Способ универсальный и работает на всех ОС, на которых есть утилита-клиент для работы с DNS.

DNS Spoofing «Null Byte :: WonderHowTo

Приветствую вас, друзья-хакеры.

Как вы могли заметить из-за отсутствия у меня постов, я какое-то время отсутствовал, работая над большим проектом с командой (который не будет завершен в ближайшее время), и я также составлял небольшую часть проект для Null-Byte, о котором я скоро объявлю. Так что извините, если я отстал, я вернулся и, наконец, делаю учебник. Я знаю, что подмена DNS уже описывалась здесь OTW, но я чувствую, что должен внести свой собственный вклад в это.Я буду использовать Ettercap, так что это что-то оригинальное , я прав? Хорошо, давай перейдем к делу.

Что такое спуфинг DNS?

DNS Spoofing (иногда называемое отравлением кеша DNS) — это атака, при которой хост без полномочий направляет сервер доменных имен (DNS) и все его запросы. По сути, это означает, что злоумышленник может перенаправить все DNS-запросы и, следовательно, весь трафик на свой (или ее) компьютер, злонамеренно манипулируя им и, возможно, крадя передаваемые данные.Это одна из наиболее опасных атак, поскольку ее очень сложно обнаружить, но сегодня я покажу вам, как ее выполнять, и как определить, выполняется ли она кем-то еще в вашей сети.

Шаг 1: Подготовка

Давайте начнем с загрузки Kali Linux, будь то виртуальная машина (ВМ), собственная загрузка или двойная загрузка. Если у вас еще нет Kali (которая должна быть у вас сейчас, если вы находитесь на этом веб-сайте), получите ее на официальном веб-сайте.

Перед продолжением убедитесь, что у вас есть работающее интернет-соединение, и убедитесь, что вы находитесь в той же сети, что и ваша цель.Это атака LAN (или WLAN), поэтому злоумышленник и жертва должны иметь один и тот же сетевой шлюз. Заранее отмечу, что жертва может работать под управлением любой операционной системы, это не имеет значения.

Шаг 2: Настройка

Теперь нам нужно отредактировать файл конфигурации Ettercap, так как это наше предпочтительное приложение на сегодняшний день. Давайте перейдем к /etc/ettercap/etter.conf и откроем файл в текстовом редакторе, например gedit , и отредактируем файл. Для этого мы можем использовать Терминал.

Итак, теперь мы хотим отредактировать значения uid и gid вверху, чтобы они говорили 0, так что продолжайте и сделайте это.

Теперь прокрутите вниз, пока не найдете заголовок с надписью Linux и удалите под ним оба знака #, где говорится «если вы используете iptables».

Отлично, мы закончили настройку.

Шаг 3: Ettercap

Теперь давайте запустим это шоу, открыв Ettercap. Вы можете сделать это хромым способом через панель запуска или классным способом с помощью Терминала.Я научу тебя крутому способу. Идем дальше, открываем Терминал и набираем:

Далее нам нужно выбрать наш интерфейс сниффинга. Давайте быстро рассмотрим шаги.

Сначала выберите Sniff > Unified sniffing… > (Выберите интерфейс, подключенный к Интернету)> OK

(Вы можете узнать, какой интерфейс подключен к Интернету, набрав в Терминале ifconfig и увидев какой интерфейс дает вам IP-адрес).

Затем быстро выполните Start > Прекратите прослушивание , потому что он автоматически начинает сниффинг после того, как мы нажимаем OK , а мы этого не хотим.

Теперь мы хотим просканировать цель в нашей сети и выбрать одну. Для этого перейдите к Hosts > Scan for hosts и дождитесь, пока он выполнит сканирование. Это займет всего несколько секунд в зависимости от размера вашей сети (которая, как я полагаю, не очень велика).

Итак, мы разобрались со сканированием, но как нам увидеть наши цели? Что ж, вернитесь к Hosts и выберите Host list , чтобы увидеть все цели, обнаруженные Ettercap.

Теперь мы хотим добавить нашу машину-жертву в Target 1, а наш сетевой шлюз — в Target 2, но сначала нам нужно знать оба их IP-адреса. Чтобы узнать IP-адрес нашей жертвы, нам сначала нужно знать, кого мы атакуем, и мы можем сделать это с помощью nmap , чтобы найти нужную нам информацию о целевой машине. После того, как вы уверены, кто ваша жертва, выберите ее IP-адрес из списка хостов в Ettercap и выберите Добавить к цели 1 . Теперь вам нужно найти IP-адрес вашего шлюза (вашего маршрутизатора).Для этого откройте Терминал и введите ifconfig и посмотрите, где написано Bcast: , и это сообщит вам IP-адрес вашего шлюза. Кроме того, вы также можете использовать команду route -n . Теперь выберите IP-адрес шлюза из списка хостов и выберите Добавить к цели 2 .

Шаг 4: Действие

Теперь, когда у нас есть обе цели, установленные для нашей жертвы и шлюза, мы можем приступить к атаке.

Перейдите на вкладку MITM и выберите Отравление ARP , выберите Отслеживание удаленных подключений и нажмите ОК .Теперь перейдите к Plugins > Manage the plugins и дважды щелкните dns_spoof , чтобы активировать этот плагин.

Теперь нам нужно отредактировать другой файл в папке Ettercap.

Этот файл etter.dns является файлом hosts и отвечает за перенаправление определенных запросов DNS. В основном, если цель входит в facebook.com , они будут перенаправлены на веб-сайт Facebook, но этот файл может все это изменить. Здесь происходит волшебство, давайте отредактируем его.

Однако сначала позвольте мне объяснить, что можно и нужно делать с файлом hosts. Таким образом, в реальной жизни злоумышленник может использовать эту возможность для перенаправления трафика на свой компьютер для анализа данных. Для этого нужно запустить сервер Apache на машине Kali и изменить домашнюю страницу по умолчанию на клон, скажем facebook.com или chase.com, чтобы, когда жертва посещает эти веб-сайты, после перенаправления на машину злоумышленника они увидят клоны вышеупомянутых сайтов.Это, вероятно, заставит ничего не подозревающего пользователя ввести свои учетные данные там, где им на самом деле не следует. Хватит разговоров, давайте сделаем это.

Во-первых, перенаправьте трафик с любого веб-сайта на ваш Kali-машину. Для этого спуститесь туда, где написано «microsoft sucks;)», и добавьте еще одну строку точно так же под ней, но теперь используйте любой веб-сайт, который вы хотите. Кроме того, не забудьте изменить IP-адрес на ваш IP-адрес .

Теперь нам нужно запустить Apache для приема входящего трафика.

Давайте перейдем к папке HTML-страницы по умолчанию. Именно здесь мы можем контролировать то, что видит жертва при перенаправлении. Расположение: / var / www / html , где вы найдете страницу index.html . Вы можете изменить документ в соответствии со своими потребностями, и, как только вы решите, что достаточно обманули свою жертву, вы можете сохранить страницу, и изменения вступят в силу мгновенно. Посмотрим …

Последнее, что нам осталось сделать, это начать атаку.Вернитесь в Ettercap и выберите Start > Start sniffing , и это должно сделать это.

Теперь каждый раз, когда жертва посещает веб-страницу, которую вы указали в файле etter.dns (в моем случае это facebook.com), она будет перенаправляться на причудливую и незаметную страницу выше. Вы можете видеть, насколько это может быть чрезвычайно вредоносным, поскольку злоумышленник может написать сценарий, который немедленно извлекает запрошенную страницу, настраивает файл etter.dns и автоматически прослушивает его при входе в систему.Это должно действительно предупредить вас о том, что выполнить атаку с использованием спуфинга DNS с очень небольшими ресурсами действительно так просто.

Обнаружение

Так как же от этого защититься? Есть несколько способов: использовать программное обеспечение, созданное для обнаружения отравления ARP, или регулярно проверять команду arp вручную (что неудобно).

Давайте сначала посмотрим на программное обеспечение, некоторые из них я упомяну.

  1. XArp

Программное обеспечение для обнаружения подмены ARP и активного зондирования с графическим интерфейсом.Он разработан для такого рода задач и работает как в Windows, так и в Linux (также может быть настроен для OS X).

  1. Snort

Скорее всего, вы знаете Snort за его удивительные возможности IDS, но я уверен, что вы не слышали, что он также обнаруживает спуфинг ARP (возможно, у вас есть).

  1. ArpON

Это переносной демон-обработчик для защиты ARP от спуфинга и заражения кеша.

Есть еще несколько таких, как Arpwatch, Antidote и ArpAlert, но вы можете просто погуглить их.

А как насчет ручной проверки? Что ж, это немного сложно, поскольку требует, чтобы вы что-то знали заранее. То, что может сделать , — это запомнить MAC-адрес (или его части, которые помогут вам распознать его, когда вы его увидите) шлюза по умолчанию (то есть вашего маршрутизатора) и продолжайте проверять его в кеше ARP.

Чтобы проверить кеш ARP, перейдите в Терминал и введите arp -a , и вы увидите несколько таких записей:

(я удалил записи BSSID (MAC-адрес) из соображений безопасности (не совсем))

Если вы можете запомнить что-то вроде первых или последних 6 символов MAC-адреса вашего шлюза и постоянно проверять arp -a , чтобы узнать, совпадает ли он, то у вас есть способ обнаружить отравление ARP без необходимости использования какой-либо третьей стороны программного обеспечения.Разве это не здорово?

Заключение

Теперь вы знаете, как работает DNS-спуфинг и, самое главное, как от него защититься. Находиться на форуме White Hat означает не только обучение атакам, но и способы их устранения. Это особенно полезно в сценариях реальной жизни, и я надеюсь, что если вы попадете в такую ​​кучу, вы будете знать, как от нее избавиться.

Надеюсь, вам понравился сегодняшний урок, и, надеюсь, вы кое-что из него узнали. Любые предложения для будущих руководств я буду рад принять.Очень скоро я выпущу кое-что для сообщества Null-Byte, так что следите за обновлениями.

Вот удобная PDF-версия этого поста, если вы хотите сохранить ее и прочитать в удобном формате позже: щелкните здесь.

Как всегда хорошего дня, мира.
TRT

Хотите начать зарабатывать деньги как хакер в белой шляпе? Начните свою профессиональную хакерскую карьеру с помощью нашего пакета обучения Premium Ethical Hacking Certification Bundle 2020 в новом магазине Null Byte и получите более 60 часов обучения от профессионалов в области этического взлома.

Купить сейчас (90% скидка)>

.

Что такое спуфинг DNS? — Поддержка KeyCDN

Обновлено 4 октября 2018 г.

Подмена DNS происходит, когда записи определенного DNS-сервера «подделаны» или злонамеренно изменены на , перенаправляют трафик злоумышленнику . Такое перенаправление трафика позволяет злоумышленнику распространять вредоносное ПО, красть данные и т. Д. Например, если DNS-запись подделана, злоумышленник может перенаправить весь трафик, который полагался на правильную запись DNS, для посещения поддельного веб-сайта, который злоумышленник создал полностью похожий на реальный сайт или другой сайт.

В этой статье мы рассмотрим, как на самом деле работает подмена DNS, а также как его предотвратить и многое другое.

Как работает нормальная связь DNS?

DNS-сервер используется для преобразования доменного имени (например, keycdn.com) в связанный IP-адрес, которому он сопоставляется. Как только DNS-сервер найдет соответствующий IP-адрес, может начаться передача данных между клиентом и сервером веб-сайта. Визуализация ниже показывает, как этот процесс происходит на высоком уровне.

Как только DNS-сервер найдет преобразование домена в IP, он кэширует его, чтобы при последующих запросах для этого домена поиск DNS выполнялся намного быстрее . Однако именно здесь подмена DNS может стать реальной проблемой, поскольку ложный поиск DNS может быть введен в кеш DNS-сервера, что приведет к изменению пункта назначения посетителей.

Как работает подмена DNS?

Спуфинг DNS — это всеобъемлющий термин, который может выполняться с использованием различных методов, таких как:

  • Отравление кеша DNS
  • Взлом DNS-сервера
  • Осуществление атаки типа «человек посередине»

Однако злоумышленник конечная цель обычно одинакова, независимо от того, какой метод они используют.Либо они хотят украсть информацию, перенаправить вас на веб-сайт, который им выгоден, либо распространить вредоносное ПО. Наиболее обсуждаемый метод выполнения подмены DNS — использование кеш-отравления , который мы объясним далее.

Отравление кэша DNS

Поскольку DNS-серверы кэшируют преобразование DNS для более быстрого и эффективного просмотра, злоумышленники могут воспользоваться этим для выполнения спуфинга DNS. Если злоумышленник сможет ввести поддельную запись DNS в DNS-сервер, все пользователи теперь будут использовать эту поддельную запись DNS до истечения срока действия кеша.По истечении срока действия кеша запись DNS вернется в нормальное состояние, поскольку DNS-сервер снова выполнит полный процесс поиска DNS. Однако, если программное обеспечение DNS-сервера все еще не обновлено, злоумышленник может воспроизвести эту ошибку и продолжить перенаправление посетителей на свой веб-сайт.

Отравление кэша DNS также иногда бывает довольно сложно обнаружить. Если вредоносный веб-сайт очень похож на веб-сайт, который он пытается выдать за другое лицо, некоторые пользователи могут даже не заметить разницы.Кроме того, если злоумышленник использует отравление кеша DNS, чтобы скомпрометировать записи DNS одной компании, например, чтобы получить доступ к их электронной почте, это также может быть трудно обнаружить.

Как предотвратить подмену DNS

Как посетитель веб-сайта вы мало что можете сделать для предотвращения подмены DNS. Скорее, это больше зависит от фактического поставщика DNS, который обрабатывает запросы DNS на веб-сайте, а также от владельца веб-сайта. Поэтому несколько советов для владельцев сайтов и поставщиков DNS включают:

  • Внедрение механизмов обнаружения спуфинга DNS — важно внедрить программное обеспечение для обнаружения спуфинга DNS.Такие продукты, как XArp, помогают продукту противодействовать заражению ARP-кешем, проверяя поступающие данные перед их передачей.
  • Использовать протоколы зашифрованной передачи данных — Использование сквозного шифрования через SSL / TLS поможет снизить вероятность того, что веб-сайт / его посетители будут скомпрометированы с помощью спуфинга DNS. Этот тип шифрования позволяет пользователям проверять, действителен ли цифровой сертификат сервера и принадлежит ли он предполагаемому владельцу веб-сайта.
  • Использовать DNSSEC — DNSSEC или расширения безопасности системы доменных имен использует записи DNS с цифровой подписью для определения подлинности данных.DNSSEC все еще находится в процессе развертывания, однако он был реализован на корневом уровне Интернета в 2010 году. Примером службы DNS, которая полностью поддерживает DNSSEC, является общедоступный DNS Google.

Резюме

Спуфинг DNS может доставить немало хлопот как посетителям, так и владельцам веб-сайтов. Основной мотив злоумышленника для проведения атаки с подменой DNS — это либо получение личной выгоды, либо распространение вредоносного ПО. Таким образом, владельцу веб-сайта важно выбрать надежного поставщика услуг хостинга DNS, который использует и современные механизмы безопасности .

Более того, как посетителю веб-сайта так же важно, чтобы вы «знали о своем окружении» в том смысле, что если вы заметите какие-либо расхождения между веб-сайтом, который вы ожидали посетить, и веб-сайтом, который вы просматриваете в настоящее время, вам следует немедленно покиньте этот сайт и попытайтесь предупредить настоящего владельца сайта.

.

Что такое подмена DNS и отравление кеша?

Определение DNS-спуфинга и отравления

Отравление и подмена системы доменных имен (DNS)

— это типы кибератак, которые используют уязвимости DNS-серверов для перенаправления трафика с легитимных серверов на поддельные. Попав на мошенническую страницу, вы можете быть озадачены тем, как решить эту проблему, несмотря на то, что вы единственный, кто может это сделать. Вам нужно будет точно знать, как это работает, чтобы защитить себя.

Подмена DNS и, как следствие, отравление кеша DNS — одни из наиболее вводящих в заблуждение киберугроз.Не понимая, как Интернет соединяет вас с веб-сайтами, вы можете быть обмануты, думая, что сам веб-сайт взломан. В некоторых случаях это может быть просто ваше устройство. Хуже того, комплекты кибербезопасности могут остановить только некоторые угрозы, связанные с подменой DNS.

Что такое DNS и что такое DNS-сервер?

Вы можете спросить: «Что такое DNS?» Повторюсь, DNS означает «система доменных имен». Но прежде чем мы объясним DNS-серверы, важно уточнить термины, связанные с этой темой.

Адрес Интернет-протокола (IP) — это числовая строка идентификатора имени для каждого уникального компьютера и сервера. Эти идентификаторы используются компьютерами для поиска и «общения» друг с другом.

Домен — это текстовое имя, которое люди используют для запоминания, идентификации и подключения к определенным серверам веб-сайтов. Например, такой домен, как «www.example.com», используется как простой способ понять фактический идентификатор целевого сервера, то есть IP-адрес.

Имя домена система (DNS) используется для преобразования домена в соответствующий IP-адрес.

Серверы системы доменных имен (DNS-серверы) — это совокупность четырех типов серверов, составляющих процесс поиска DNS. К ним относятся разрешающий сервер имен, корневые серверы имен, серверы имен домена верхнего уровня (TLD) и полномочные серверы имен. Для простоты мы подробно опишем только особенности сервера распознавателя.

Разрешающий сервер имен (или рекурсивный преобразователь) — это компонент преобразования процесса поиска DNS, находящийся в вашей операционной системе.Он разработан, чтобы запрашивать — то есть запрашивать — серию веб-серверов для целевого IP-адреса доменного имени.

Теперь, когда мы установили определение DNS и общее понимание DNS, мы можем изучить, как работает поиск DNS.

Как работает поиск DNS

При поиске веб-сайта через доменное имя DNS выполняет следующие действия:

  1. Ваш веб-браузер и операционная система (ОС) пытаются вспомнить IP-адрес , связанный с доменным именем. При предыдущем посещении IP-адрес можно вызвать из внутренней памяти компьютера или из кеша памяти.
  2. Процесс продолжается, если ни один из компонентов не знает , где находится IP-адрес назначения.
  3. ОС запрашивает у разрешающего сервера имен IP-адрес. Этот запрос запускает поиск по цепочке серверов, чтобы найти соответствующий IP-адрес для домена.
  4. В конечном итоге распознаватель найдет и доставит IP-адрес в ОС , которая вернет его в веб-браузер.

Процесс поиска DNS — это жизненно важная структура, используемая во всем Интернете.К сожалению, злоумышленники могут использовать уязвимости в DNS, а это означает, что вам нужно знать о возможных перенаправлениях. Чтобы помочь вам, давайте объясним, что такое спуфинг DNS и как он работает.

Как работает отравление и подмена кеша DNS

Что касается DNS, наиболее серьезные угрозы двоякие:

  1. Спуфинг DNS представляет собой результирующую угрозу, которая имитирует законные серверы назначения для перенаправления трафика домена. Ничего не подозревающие жертвы попадают на вредоносные веб-сайты, что является результатом различных методов атак с подменой DNS.
  2. Отравление кэша DNS — это метод подмены DNS на стороне пользователя, при котором ваша система регистрирует мошеннический IP-адрес в кэше локальной памяти. Это заставляет DNS отозвать плохой сайт специально для вас, даже если проблема будет решена или никогда не существовала на стороне сервера.

Методы DNS-спуфинга или атак с отравлением кеша

Среди различных методов атак с подделкой DNS наиболее распространены следующие:

Обман посредника: Когда злоумышленник переходит между вашим веб-браузером и DNS-сервером, чтобы заразить оба.Инструмент используется для одновременного заражения кеша на вашем локальном устройстве и заражения сервера на DNS-сервере. В результате происходит перенаправление на вредоносный сайт, размещенный на собственном локальном сервере злоумышленника.

Перехват DNS-сервера: Преступник напрямую перенастраивает сервер, чтобы направлять всех запрашивающих пользователей на вредоносный веб-сайт. После того, как мошенническая запись DNS вводится на DNS-сервер, любой IP-запрос для поддельного домена приведет к созданию поддельного сайта.

Отравление кеша DNS через спам: Код отравления кеша DNS часто встречается в URL-адресах, отправленных через спам-сообщения.Эти электронные письма пытаются запугать пользователей, заставляя их щелкнуть указанный URL-адрес, что, в свою очередь, заражает их компьютер. Баннеры и изображения — как в электронных письмах, так и на ненадежных веб-сайтах — также могут направлять пользователей на этот код. После отравления ваш компьютер перенаправит вас на поддельные веб-сайты, которые подделываются, чтобы выглядеть как настоящие. Именно здесь для ваших устройств появляются настоящие угрозы.

Риски DNS-отравления и спуфинга

Спуфинг DNS создает несколько рисков, каждый из которых может поставить под угрозу ваши устройства и личные данные.

Кража данных может быть особенно прибыльной для злоумышленников с подменой DNS. Банковские веб-сайты и популярные интернет-магазины легко подделываются, что означает, что любой пароль, кредитная карта или личная информация могут быть скомпрометированы. Перенаправления будут фишинговыми веб-сайтами, предназначенными для сбора вашей информации.

Заражение вредоносным ПО — еще одна распространенная угроза со спуфингом DNS. Если вас перенаправляет обманная информация, адресатом может оказаться сайт, зараженный вредоносными загрузками.Drive by downloads — простой способ автоматизировать заражение вашей системы. В конечном итоге, если вы не используете безопасность в Интернете, вы подвергаетесь риску, например, шпионскому ПО, кейлоггерам или червям.

Остановленные обновления безопасности могут быть результатом подделки DNS. Если на поддельных сайтах есть провайдеры интернет-безопасности, законные обновления безопасности выполняться не будут. В результате ваш компьютер может подвергнуться дополнительным угрозам, например вирусам или троянам.

Цензура — это риск, который является обычным явлением в некоторых частях мира.Например, Китай использует модификации DNS, чтобы гарантировать, что все веб-сайты, просматриваемые в стране, одобрены. Этот блок на национальном уровне, получивший название Великого брандмауэра, является одним из примеров того, насколько мощной может быть подмена DNS.

В частности, трудно устранить заражение кеш-памяти DNS . Поскольку очистка зараженного сервера не избавляет настольный компьютер или мобильное устройство от проблемы, устройство вернется на поддельный сайт. Более того, чистые рабочие столы, подключающиеся к зараженному серверу, снова будут скомпрометированы.

Как предотвратить отравление и подделку кэша DNS

В целях предотвращения спуфинга DNS защита со стороны пользователя ограничена. Владельцы веб-сайтов и провайдеры серверов имеют немного больше возможностей для защиты себя и своих пользователей. Чтобы надлежащим образом обезопасить всех, обе стороны должны избегать обманов.

Советы по профилактике для владельцев веб-сайтов и поставщиков DNS-серверов

Как владелец веб-сайта или поставщик DNS-сервера, ответственность за защиту пользователей лежит в ваших руках.Вы можете реализовать различные защитные инструменты и протоколы для защиты от угроз. Среди этих ресурсов было бы разумно использовать некоторые из следующих:

  1. Средства обнаружения спуфинга DNS: Эти средства обнаружения, аналогичные продуктам безопасности конечных пользователей, заранее сканируют все полученные данные перед их отправкой.
  2. Расширения безопасности системы доменных имен (DNSSEC): По сути, это «проверенный реальный» ярлык DNS, система DNSSEC помогает обеспечить аутентичность поиска DNS и отсутствие подделки.
  3. Сквозное шифрование: Зашифрованные данные, отправляемые на запросы и ответы DNS, защищают злоумышленников, поскольку они не смогут скопировать уникальный сертификат безопасности для легитимного веб-сайта.

Советы по профилактике для конечных пользователей

Пользователи особенно уязвимы в них, чтобы не стать жертвой атаки с отравлением DNS, вам следует следовать этим простым советам:

  1. Никогда не переходите по незнакомой ссылке . Это включает электронную почту, текстовые сообщения или ссылки в социальных сетях.Инструменты, сокращающие URL-адреса, могут дополнительно маскировать места назначения ссылок, поэтому по возможности избегайте их. Для большей безопасности всегда выбирайте ручной ввод URL-адреса в адресную строку. Но делайте это только после того, как подтвердите, что это официально и законно.
  2. Регулярно проверяйте свой компьютер на наличие вредоносных программ. Хотя вы не сможете обнаружить заражение кэша DNS, ваше программное обеспечение безопасности поможет вам обнаружить и удалить любые вторичные инфекции. Поскольку поддельные сайты могут доставлять все типы вредоносных программ, вам всегда следует сканировать на наличие вирусов, шпионского ПО и других скрытых проблем.Возможно и обратное, поскольку вредоносное ПО может доставлять спуфинг. Всегда делайте это, используя локальную программу, а не размещенную на хосте версию, поскольку отравление может подделать результаты в Интернете.
  3. Очистите кеш DNS, чтобы устранить отравление, если это необходимо. Отравление кэша остается в вашей системе в течение длительного времени, если вы не очистите зараженные данные. Этот процесс может быть таким же простым, как открыть программу Windows «Выполнить» и ввести « ipconfig / flushdns » в качестве вашей команды. Mac, iOS и Android также имеют опции промывки.Обычно их можно найти в параметре «сброс настроек сети», переключении режима полета, перезагрузке устройства или в конкретном URL-адресе веб-браузера. Посмотрите, какой метод используется на вашем конкретном устройстве.
  4. Используйте виртуальную частную сеть (VPN). Эти службы предоставляют вам зашифрованный туннель для всего вашего веб-трафика и использование частных DNS-серверов, которые используют исключительно зашифрованные запросы из конца в конец. В результате вы получаете серверы, которые гораздо более устойчивы к спуфингу DNS, и запросы, которые невозможно прервать.

Не оставайтесь уязвимыми для спуфинга DNS и атак вредоносного ПО. Защитите себя сегодня с помощью Kaspersky Security Cloud, доступного как для ПК с Windows, так и для Mac iOS.

Статьи по теме:

.

Что такое подмена DNS и отравление кеша?

Определение DNS-спуфинга и отравления

Отравление и подмена системы доменных имен (DNS)

— это типы кибератак, которые используют уязвимости DNS-серверов для перенаправления трафика с легитимных серверов на поддельные. Попав на мошенническую страницу, вы можете быть озадачены тем, как решить эту проблему, несмотря на то, что вы единственный, кто может это сделать. Вам нужно будет точно знать, как это работает, чтобы защитить себя.

Подмена DNS и, как следствие, отравление кеша DNS — одни из наиболее вводящих в заблуждение киберугроз.Не понимая, как Интернет соединяет вас с веб-сайтами, вы можете быть обмануты, думая, что сам веб-сайт взломан. В некоторых случаях это может быть просто ваше устройство. Хуже того, комплекты кибербезопасности могут остановить только некоторые угрозы, связанные с подменой DNS.

Что такое DNS и что такое DNS-сервер?

Вы можете спросить: «Что такое DNS?» Повторюсь, DNS означает «система доменных имен». Но прежде чем мы объясним DNS-серверы, важно уточнить термины, связанные с этой темой.

Адрес Интернет-протокола (IP) — это числовая строка идентификатора имени для каждого уникального компьютера и сервера. Эти идентификаторы используются компьютерами для поиска и «общения» друг с другом.

Домен — это текстовое имя, которое люди используют для запоминания, идентификации и подключения к определенным серверам веб-сайтов. Например, такой домен, как «www.example.com», используется как простой способ понять фактический идентификатор целевого сервера, то есть IP-адрес.

Имя домена система (DNS) используется для преобразования домена в соответствующий IP-адрес.

Серверы системы доменных имен (DNS-серверы) — это совокупность четырех типов серверов, составляющих процесс поиска DNS. К ним относятся разрешающий сервер имен, корневые серверы имен, серверы имен домена верхнего уровня (TLD) и полномочные серверы имен. Для простоты мы подробно опишем только особенности сервера распознавателя.

Разрешающий сервер имен (или рекурсивный преобразователь) — это компонент преобразования процесса поиска DNS, находящийся в вашей операционной системе.Он разработан, чтобы запрашивать — то есть запрашивать — серию веб-серверов для целевого IP-адреса доменного имени.

Теперь, когда мы установили определение DNS и общее понимание DNS, мы можем изучить, как работает поиск DNS.

Как работает поиск DNS

При поиске веб-сайта через доменное имя DNS выполняет следующие действия:

  1. Ваш веб-браузер и операционная система (ОС) пытаются вспомнить IP-адрес , связанный с доменным именем. При предыдущем посещении IP-адрес можно вызвать из внутренней памяти компьютера или из кеша памяти.
  2. Процесс продолжается, если ни один из компонентов не знает , где находится IP-адрес назначения.
  3. ОС запрашивает у разрешающего сервера имен IP-адрес. Этот запрос запускает поиск по цепочке серверов, чтобы найти соответствующий IP-адрес для домена.
  4. В конечном итоге распознаватель найдет и доставит IP-адрес в ОС , которая вернет его в веб-браузер.

Процесс поиска DNS — это жизненно важная структура, используемая во всем Интернете.К сожалению, злоумышленники могут использовать уязвимости в DNS, а это означает, что вам нужно знать о возможных перенаправлениях. Чтобы помочь вам, давайте объясним, что такое спуфинг DNS и как он работает.

Как работает отравление и подмена кеша DNS

Что касается DNS, наиболее серьезные угрозы двоякие:

  1. Спуфинг DNS представляет собой результирующую угрозу, которая имитирует законные серверы назначения для перенаправления трафика домена. Ничего не подозревающие жертвы попадают на вредоносные веб-сайты, что является результатом различных методов атак с подменой DNS.
  2. Отравление кэша DNS — это метод подмены DNS на стороне пользователя, при котором ваша система регистрирует мошеннический IP-адрес в кэше локальной памяти. Это заставляет DNS отозвать плохой сайт специально для вас, даже если проблема будет решена или никогда не существовала на стороне сервера.

Методы DNS-спуфинга или атак с отравлением кеша

Среди различных методов атак с подделкой DNS наиболее распространены следующие:

Обман посредника: Когда злоумышленник переходит между вашим веб-браузером и DNS-сервером, чтобы заразить оба.Инструмент используется для одновременного заражения кеша на вашем локальном устройстве и заражения сервера на DNS-сервере. В результате происходит перенаправление на вредоносный сайт, размещенный на собственном локальном сервере злоумышленника.

Перехват DNS-сервера: Преступник напрямую перенастраивает сервер, чтобы направлять всех запрашивающих пользователей на вредоносный веб-сайт. После того, как мошенническая запись DNS вводится на DNS-сервер, любой IP-запрос для поддельного домена приведет к созданию поддельного сайта.

Отравление кеша DNS через спам: Код отравления кеша DNS часто встречается в URL-адресах, отправленных через спам-сообщения.Эти электронные письма пытаются запугать пользователей, заставляя их щелкнуть указанный URL-адрес, что, в свою очередь, заражает их компьютер. Баннеры и изображения — как в электронных письмах, так и на ненадежных веб-сайтах — также могут направлять пользователей на этот код. После отравления ваш компьютер перенаправит вас на поддельные веб-сайты, которые подделываются, чтобы выглядеть как настоящие. Именно здесь для ваших устройств появляются настоящие угрозы.

Риски DNS-отравления и спуфинга

Спуфинг DNS создает несколько рисков, каждый из которых может поставить под угрозу ваши устройства и личные данные.

Кража данных может быть особенно прибыльной для злоумышленников с подменой DNS. Банковские веб-сайты и популярные интернет-магазины легко подделываются, что означает, что любой пароль, кредитная карта или личная информация могут быть скомпрометированы. Перенаправления будут фишинговыми веб-сайтами, предназначенными для сбора вашей информации.

Заражение вредоносным ПО — еще одна распространенная угроза со спуфингом DNS. Если вас перенаправляет обманная информация, адресатом может оказаться сайт, зараженный вредоносными загрузками.Drive by downloads — простой способ автоматизировать заражение вашей системы. В конечном итоге, если вы не используете безопасность в Интернете, вы подвергаетесь риску, например, шпионскому ПО, кейлоггерам или червям.

Остановленные обновления безопасности могут быть результатом подделки DNS. Если на поддельных сайтах есть провайдеры интернет-безопасности, законные обновления безопасности выполняться не будут. В результате ваш компьютер может подвергнуться дополнительным угрозам, например вирусам или троянам.

Цензура — это риск, который является обычным явлением в некоторых частях мира.Например, Китай использует модификации DNS, чтобы гарантировать, что все веб-сайты, просматриваемые в стране, одобрены. Этот блок на национальном уровне, получивший название Великого брандмауэра, является одним из примеров того, насколько мощной может быть подмена DNS.

В частности, трудно устранить заражение кеш-памяти DNS . Поскольку очистка зараженного сервера не избавляет настольный компьютер или мобильное устройство от проблемы, устройство вернется на поддельный сайт. Более того, чистые рабочие столы, подключающиеся к зараженному серверу, снова будут скомпрометированы.

Как предотвратить отравление и подделку кэша DNS

В целях предотвращения спуфинга DNS защита со стороны пользователя ограничена. Владельцы веб-сайтов и провайдеры серверов имеют немного больше возможностей для защиты себя и своих пользователей. Чтобы надлежащим образом обезопасить всех, обе стороны должны избегать обманов.

Советы по профилактике для владельцев веб-сайтов и поставщиков DNS-серверов

Как владелец веб-сайта или поставщик DNS-сервера, ответственность за защиту пользователей лежит в ваших руках.Вы можете реализовать различные защитные инструменты и протоколы для защиты от угроз. Среди этих ресурсов было бы разумно использовать некоторые из следующих:

  1. Средства обнаружения спуфинга DNS: Эти средства обнаружения, аналогичные продуктам безопасности конечных пользователей, заранее сканируют все полученные данные перед их отправкой.
  2. Расширения безопасности системы доменных имен (DNSSEC): По сути, это «проверенный реальный» ярлык DNS, система DNSSEC помогает обеспечить аутентичность поиска DNS и отсутствие подделки.
  3. Сквозное шифрование: Зашифрованные данные, отправляемые на запросы и ответы DNS, защищают злоумышленников, поскольку они не смогут скопировать уникальный сертификат безопасности для легитимного веб-сайта.

Советы по профилактике для конечных пользователей

Пользователи особенно уязвимы в них, чтобы не стать жертвой атаки с отравлением DNS, вам следует следовать этим простым советам:

  1. Никогда не переходите по незнакомой ссылке . Это включает электронную почту, текстовые сообщения или ссылки в социальных сетях.Инструменты, сокращающие URL-адреса, могут дополнительно маскировать места назначения ссылок, поэтому по возможности избегайте их. Для большей безопасности всегда выбирайте ручной ввод URL-адреса в адресную строку. Но делайте это только после того, как подтвердите, что это официально и законно.
  2. Регулярно проверяйте свой компьютер на наличие вредоносных программ. Хотя вы не сможете обнаружить заражение кэша DNS, ваше программное обеспечение безопасности поможет вам обнаружить и удалить любые вторичные инфекции. Поскольку поддельные сайты могут доставлять все типы вредоносных программ, вам всегда следует сканировать на наличие вирусов, шпионского ПО и других скрытых проблем.Возможно и обратное, поскольку вредоносное ПО может доставлять спуфинг. Всегда делайте это, используя локальную программу, а не размещенную на хосте версию, поскольку отравление может подделать результаты в Интернете.
  3. Очистите кеш DNS, чтобы устранить отравление, если это необходимо. Отравление кэша остается в вашей системе в течение длительного времени, если вы не очистите зараженные данные. Этот процесс может быть таким же простым, как открыть программу Windows «Выполнить» и ввести « ipconfig / flushdns » в качестве вашей команды. Mac, iOS и Android также имеют опции промывки.Обычно их можно найти в параметре «сброс настроек сети», переключении режима полета, перезагрузке устройства или в конкретном URL-адресе веб-браузера. Посмотрите, какой метод используется на вашем конкретном устройстве.
  4. Используйте виртуальную частную сеть (VPN). Эти службы предоставляют вам зашифрованный туннель для всего вашего веб-трафика и использование частных DNS-серверов, которые используют исключительно зашифрованные запросы из конца в конец. В результате вы получаете серверы, которые гораздо более устойчивы к спуфингу DNS, и запросы, которые невозможно прервать.

Не оставайтесь уязвимыми для спуфинга DNS и атак вредоносного ПО. Защитите себя сегодня с помощью Kaspersky Security Cloud, доступного как для ПК с Windows, так и для Mac iOS.

Статьи по теме:

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *