Перехват dns запросов провайдером
Мы живем в стремительно развивающемся технологическом мире, где практически все оцифровано. Эта цифровизация действительно очень плодотворна, и этот огромный мир сведен к нашим пальцам. Тем не менее, со всеми удивительными вещами, безусловно, есть некоторые недостатки.
С технологией возникает опасность ее неправильного использования. Конечно, технологии привели к революционным изменениям в обществе, которые питают наши потребности, но, несомненно, есть много фонов.
Проблемы, связанные с кибербезопасностью, являются одной из главных проблем людей и аналитиков. Одной из таких угроз является перехват DNS, от которой надеялись избавиться все технологи.
Однако в связи с недавними атаками DNS на высокопроизводительные платформы, такие как Google Cloud, Gmail, Netflix и PayPal, опасность перехвата DNS возрастает. Эта статья содержит информацию о:
- Перехват DNS
- Это типы
- Методы защиты.
Давайте начнем с понимания угона DNS.
Что такое перехват DNS?
Что такое перехват DNS?
Что такое перехват DNS?
Атака перехвата DNS – это злонамеренная атака, при которой пользователь перенаправляется на сервер доменных имен (DNS) с преобладанием IP-адресов устройства пользователя. Хакеры выполняют эту операцию, просто изменяя настройки сервера пользователя или с помощью вредоносных программ.
Как только угонщик преуспеет во взломе DNS человека, он может контролировать трафик устройства по своей воле. Угон DNS играет роль как в фишинге, так и в фарминге. Некоторые правительства, а также интернет-провайдеры используют перехват DNS.
Интернет-провайдеры используют перехват DNS исключительно в коммерческих целях. В основном они используют его как средство сбора данных и статистики для показа рекламы пользователям, когда они получают доступ через неизвестный домен. Правительства применяют его для перенаправления на разрешенный правительством контент, а также для введения цензуры.
Существует два основных типа перехвата DNS:
- Первый тип заражает пользователя атаками DNS-троянов или вредоносными программами. Это предотвращает компьютер от дружественных доменных имен к соответствующим IP-адресам.
- В типе перехвата DNS, хакер проникает на сайты и меняет их адреса DNS. Таким образом, когда пользователь заходит на сайт, открывается совершенно другой.
3 Другие службы DNS-over-TLS
Если вы хотите защитить DNS на устройствах Android, Tenta предоставляет отличный сервис , так как у них есть частный и безопасный браузер Android, который использует DNS-over-TLS. Хотя мы рекомендуем вам использовать безопасный VPN для своей деятельности, вы можете использовать этот браузер в качестве альтернативы.
Имейте в виду, что существуют разные версии TLS, и в настоящее время 1.0 постепенно прекращается, поскольку принята версия 1.2.
1 VPN с DNS-серверами и DNS-серверами
VPN – это онлайн-инструмент обеспечения конфиденциальности и безопасности, который шифрует трафик и облегчает доступ в Интернет через защищенный прокси-сервер . Делая это, вы принимаете альтернативный общедоступный IP-адрес, и третьи стороны не могут видеть сайты, к которым вы обращаетесь, загружаемые вами файлы или используемые вами ресурсы.
Однако многие VPN не могут гарантировать безопасность DNS из-за утечек DNS .
VPN, такие как ExpressVPN , NordVPN и CyberGhost VPN, устранили этот недостаток, внедрив защиту от утечки DNS , которая гарантирует, что запросы DNS всегда направляются на защищенные DNS-серверы VPN .
Хотя вы можете вручную изменить DNS-серверы вашего провайдера на альтернативный, например, Google 8.8.8.8. многие из них используются для сбора данных , которые могут быть переданы в рекламные сети.
Кроме того, вы сможете воспользоваться другими преимуществами, которые может предоставить VPN, такими как обход гео-ограничений, гео-спуфинг для цифровых покупок, безопасный торрент, лучший сетевой нейтралитет и т.д.
1. Часто обновляйте пароль вашего роутера:
1. Часто обновляйте пароль вашего роутера:
1. Часто обновляйте пароль вашего роутера:
В маршрутизаторы обычно оснащены по умолчанию заводской пароль. Чтобы оставаться защищенным, лучше постоянно менять настройки маршрутизатора.
Если хакер решит нацелиться на ваш роутер и попытаться получить к нему доступ для внесения изменений, он получит пользовательский пароль, а не заводской. Это может помочь предотвратить доступ хакера к маршрутизатору.
Последние мысли
Без уверенности в том, как долго DNSCrypt будет продолжать работать, пользователям нужен альтернативный способ защиты DNS-связи . Однако не только DNS-запросы должны вызывать у вас беспокойство, так как сторонние пользователи все еще смогут наблюдать за трафиком, если не будут приняты дополнительные меры предосторожности.
Рассмотрите возможность подписки на премиум VPN в сочетании с безопасным сервисом DNS, антивирусом или любыми другими инструментами безопасности.
Wizcase рекомендует ExpressVPN , NordVPN и CyberGhost VPN и три из наиболее эффективных и действенных услуг на рынке.
Типы перехвата DNS:
Типы перехвата DNS:
Типы перехвата DNS:
Угон DNS может происходить четырьмя различными способами. Эти четыре основных типа атак определены ниже:
1. Маршрутизатор DNS Hijack:
1. Маршрутизатор DNS Hijack:
1. Маршрутизатор DNS Hijack:
Большинство маршрутизаторов поставляются с паролями по умолчанию, а также с уязвимостями встроенного программного обеспечения. В этом методе атаки угонщик тихо взламывает DNS-маршрутизатор и принимает настройки DNS. Таким образом, затрагиваются все пользователи, подключенные к маршрутизатору.
2. Локальная перехват DNS
2. Локальная перехват DNS
2. Локальная перехват DNS
Таким образом, злоумышленникам удается установить троянское программное обеспечение на компьютер жертвы. Благодаря этому он приводит к изменению локальных настроек DNS компьютера. Это позволяет ему перенаправлять пользователя на вредоносные сайты.
3. Руж DNS атаки:
3. Руж DNS атаки:
3. Руж DNS атаки:
В этом хакер атакует сервер DNS. Затем он приступает к изменению записей DNS. Изменяя записи DNS, хакер перенаправляет пользователя на вредоносные сайты.
4. Атака «человек посередине»:
4. Атака «человек посередине»:
4. Атака «человек посередине»:
В этом типе атаки хакеру удается вмешаться в коммуникацию между пользователем и DNS-сервером. Таким образом он может затем предоставить пользователю другую точку IP-адреса назначения, которая направлена на вредоносные сайты.
Почему вы должны защитить свой DNS
Поскольку DNS является основой Интернета , это глобальная база данных, используемая каждым приложением, взаимодействующим по сети.
Однако это также протокол, разработанный без механизмов безопасности, таких как шифрование, аутентификация или защита от изменений, что делает его уязвимым для атак. Без защиты DNS-запросов они подвержены перехвату.
Результат этого может повлиять на безопасность и конфиденциальность , поскольку он не только облегчает перехват онлайновой активности , которая может включать доступ к личным учетным записям и информации, но и ложные ответы DNS могут спровоцировать распространение вредоносных программ и многое другое.
DNS Cache Snooping – это имя, данное наиболее распространенному типу DNS-атаки, и включает в себя IP-адрес шлюза, вводимый в запрос для перенаправления трафика на альтернативный веб-сайт, а не на подлинный, предполагаемый.
Угон DNS и фишинг:
Угон DNS и фишинг:
Угон DNS и фишинг:
Фишинг является одной из наиболее распространенных проблем в кибербезопасности. Перехват DNS является неотъемлемой частью фишинг-атаки.
Атака DNS-перехвата, при которой пользователь перенаправляется на вредоносную ссылку. Эта вредоносная ссылка обычно представляет собой усовершенствованную копию исходного веб-сайта, который пользователь планирует посетить.
Это угроза для пользователей, а также конфиденциальность сайта. Например, вы становитесь объектом фишинг-атаки при доступе к веб-сайту своего банка. Ваш сайт банка взломан, и вы будете перенаправлены.
Поскольку сайт изначально взломан, вы в конечном итоге отправите свою информацию, а также учетные данные на поддельный сайт хакера, и, таким образом, ваша информация будет утечка.
Как защититься от перехвата DNS?
Как защититься от перехвата DNS?
Как защититься от перехвата DNS?
Атаки DNS-перехвата особенно коварны. Возможно, вы атакованы DNS-хакером, и иногда вы даже не узнаете об этом. Вот почему лучше предпринять меры предосторожности и повысить безопасность, а не сожалеть позже.
Во-первых, лучше поддерживать безопасность на высоком уровне, используя самые распространенные методы защиты. Есть некоторые основные вещи, которые нужно обязательно использовать, такие как:
- Наличие обновленного программного обеспечения безопасности
- Убедитесь, что исправления безопасности не повреждены, прежде чем выходить в интернет
- Не нажимайте на подозрительные ссылки и не открывайте неизвестные электронные письма.
Помимо этого есть много других проверенных и проверенных способов избежать взлома DNS:
2 DNS-over-TLS
DNS over TLS (DoT) – это протокол безопасности, который защищает DNS от манипуляций , таких как атаки «человек посередине», по протоколу TLS. Сам по себе TLS существует некоторое время, и это криптографический протокол, обеспечивающий передачу данных.
Поскольку все больше людей осознают важность защиты DNS, DNS-over-TLS стал очень популярным . Даже Фрэнк Денис, создатель DNSCrypt-proxy, теперь рекомендует использовать DNS-over-TLS вместо любого другого зашифрованного DNS.
DNS-over-TLS – это протокол, который некоторые крупные компании использовали для обеспечения безопасного обслуживания, включая Cloudflare , Quad9 и Google (Android 9 Pie и выше).
Как запустить тест на утечку DNS
В демонстрационных целях мы использовали ExpressVPN , но альтернативные VPN должны работать аналогично.
- Загрузите и установите клиентское приложение VPN
- Убедитесь, что защита от утечки DNS и IPV6 включены . Защита от других распространенных утечек обычно включена по умолчанию
- Подключитесь к одному из доступных серверов
- Теперь вам нужно инициировать тест утечки DNS .
3. Не будь в темноте:
3. Не будь в темноте:
3. Не будь в темноте:
Поскольку вы осведомлены о возможных DNS-атаках, то выход из ситуации – знать, подвергаетесь ли вы DNS-атакам или нет.
Лучший способ отследить перехват DNS – использовать утилиту ping. Это метод, при котором вы пытаетесь пропинговать домен, которого, как вы уверены, не существует.
Если неизвестный домен разрешается, то есть вероятность того, что вы находитесь под атакой DNS.
Лучшие альтернативы для DNSCrypt
2. Подписаться на услугу VPN:
2. Подписаться на услугу VPN:
2. Подписаться на услугу VPN:
VPN лучше всего известны для защиты вашей конфиденциальности. Они, как известно, являются наиболее эффективным способом защиты от перехвата DNS.
VPN зашифровывает ваши данные и воспринимает их через туннель, поэтому их невозможно узнать всем, у кого нет ключа шифрования.
Достаточно ли VPN?
Когда дело доходит до защиты вашего интернета и трафика DNS, VPN должно быть достаточно . Однако в некоторых обстоятельствах различные VPN подвержены утечкам DNS , и когда это происходит, вы не полностью защищены.
Определенные операционные системы имеют инструмент под названием « Smart Multi-Homed Name Resolution », который выбирает IP-адрес, запрашиваемый с других нестандартных серверов. DNS-серверы не отвечают достаточно быстро, что приводит к утечке DNS.
Следовательно, VPN подходит только в том случае, если она имеет защиту от утечки DNS и использует свои собственные DNS-серверы , которые в большинстве случаев обычно являются DNS-серверами с нулевым разглашением, которые не хранят никакой пользовательской информации или действий.
ExpressVPN , NordVPN и CyberGhost VPN обеспечивают этот уровень безопасности и даже приняли IPv2 для будущей защиты .
Прощальные слова:
Находясь в сети, лучше сохранять бдительность в отношении киберугроз! Лучше использовать несколько инструментов безопасности, которые доступны для защиты!
Интернет опасный мир во всем. Здесь намного лучше оставаться в безопасности, а потом сожалеть!
Архитектура системы доменных имен (DNS) за редким исключением остается неизменной с 1983 года. Каждый раз, когда вы хотите открыть сайт, браузер отправляет запрос с указанием домена на DNS-сервер, который в ответ отправляет необходимый IP-адрес. И запрос, и ответ на него передаются в открытом виде, без какого-либо шифрования. Это значит, что ваш провайдер, администратор сети или злоумышленник c MITM могут не только хранить историю всех запрошенных вами сайтов, но и подменять ответы на эти запросы. Звучит неприятно, не правда ли?
Предлагаю вспомнить несколько реальных историй перехвата и подмены DNS-запросов.
DNS hijacking
Перехват DNS-запросов (DNS hijacking) это не какая-то редкая страшилка, а вполне распространенная практика. Например, среди провайдеров. Обычно это работает следующим образом. Если пользователь пытается перейти на несуществующий сайт, то провайдер перенаправляет его на свою страницу с рекламой. А может и не на свою.
Вы, конечно же, можете отказаться от использования DNS-сервера провайдера и прописать в настройках роутера сторонние решения (например, Google Public DNS или Яндекс.DNS). Но при отсутствии шифрования это никак не решит проблему. Провайдер вполне может вмешаться и здесь, подменив ответ на свой.
Масштабы трояна DNSChanger впечатляют, но бразильцы его переплюнули. 4,5 млн DSL-модемов было взломано в одной только Бразилии в 2011-2012 годах. Для этого было достаточно разослать спам со ссылкой на вредоносную страницу, которая взламывала модем и прописывала новый адрес DNS-сервера. Причем в этот раз мошенники не стали мелочиться с рекламой. На своих подставных DNS-серверах они подменяли адреса для всех крупнейших банков Бразилии.
С домашними и офисными WiFi-роутерами дело обстоит так же печально, как и с бразильскими модемами. Пользователи нередко оставляют заводские логин и пароль на админку, да и за выходом свежих прошивок с исправленными уязвимостями не следит почти никто (кроме читателей Хабра, конечно же). В прошлом году исследователи из Sentrant в своем докладе рассказали о новых случаях взлома роутеров. Мошенники перехватывали обращения к Google Analytics и благодаря этому встраивали на сайты рекламу.
Думаю, с примерами перехвата можно закончить. Вывод тут простой: DNS перехватывают много, на разных этапах и с разной целью.
Во-вторых, вы больше не привязаны к серверу провайдера или настройкам своего роутера. DNSCrypt обращается за адресами напрямую на указанный вами сервер.
До сих пор для применения DNSCrypt пользователям было необходимо установить на компьютер отдельную утилиту. Это не сложно, но без широкого распространения знаний об угрозе и способах ее решения вряд ли стоит рассчитывать на массовое применение технологии.
Поддержка DNSCrypt в Яндекс.Браузере
При этом все запросы в зашифрованном виде будут отправляться на быстрый DNS-сервер Яндекса, который также получил поддержку протокола DNSCrypt. Ограничивать пользователей только одним сервером мы не хотим, поэтому уже в ближайшее время добавим в этом месте возможность выбрать альтернативный DNS-сервер (например, тот же OpenDNS).
И еще кое-что. Подменить IP-адрес на фишинговый можно не только через перехват запроса, но и через самый обычный системный host-файл. Поэтому мы сейчас экспериментируем с запретом использовать системный резолвер в случае недоступности DNS-сервера. Мы понимаем, что включение этой опции по умолчанию может навредить пользователям корпоративных и локальных ресурсов, поэтому пока только наблюдаем и собираем отзывы.
Архитектура системы доменных имен (DNS) за редким исключением остается неизменной с 1983 года. Каждый раз, когда вы хотите открыть сайт, браузер отправляет запрос с указанием домена на DNS-сервер, который в ответ отправляет необходимый IP-адрес. И запрос, и ответ на него передаются в открытом виде, без какого-либо шифрования. Это значит, что ваш провайдер, администратор сети или злоумышленник c MITM могут не только хранить историю всех запрошенных вами сайтов, но и подменять ответы на эти запросы. Звучит неприятно, не правда ли?
Предлагаю вспомнить несколько реальных историй перехвата и подмены DNS-запросов.
DNS hijacking
Перехват DNS-запросов (DNS hijacking) это не какая-то редкая страшилка, а вполне распространенная практика. Например, среди провайдеров. Обычно это работает следующим образом. Если пользователь пытается перейти на несуществующий сайт, то провайдер перенаправляет его на свою страницу с рекламой. А может и не на свою.
Вы, конечно же, можете отказаться от использования DNS-сервера провайдера и прописать в настройках роутера сторонние решения (например, Google Public DNS или Яндекс.DNS). Но при отсутствии шифрования это никак не решит проблему. Провайдер вполне может вмешаться и здесь, подменив ответ на свой.
Масштабы трояна DNSChanger впечатляют, но бразильцы его переплюнули. 4,5 млн DSL-модемов было взломано в одной только Бразилии в 2011-2012 годах. Для этого было достаточно разослать спам со ссылкой на вредоносную страницу, которая взламывала модем и прописывала новый адрес DNS-сервера. Причем в этот раз мошенники не стали мелочиться с рекламой. На своих подставных DNS-серверах они подменяли адреса для всех крупнейших банков Бразилии.
С домашними и офисными WiFi-роутерами дело обстоит так же печально, как и с бразильскими модемами. Пользователи нередко оставляют заводские логин и пароль на админку, да и за выходом свежих прошивок с исправленными уязвимостями не следит почти никто (кроме читателей Хабра, конечно же). В прошлом году исследователи из Sentrant в своем докладе рассказали о новых случаях взлома роутеров. Мошенники перехватывали обращения к Google Analytics и благодаря этому встраивали на сайты рекламу.
Думаю, с примерами перехвата можно закончить. Вывод тут простой: DNS перехватывают много, на разных этапах и с разной целью.
Во-вторых, вы больше не привязаны к серверу провайдера или настройкам своего роутера. DNSCrypt обращается за адресами напрямую на указанный вами сервер.
До сих пор для применения DNSCrypt пользователям было необходимо установить на компьютер отдельную утилиту. Это не сложно, но без широкого распространения знаний об угрозе и способах ее решения вряд ли стоит рассчитывать на массовое применение технологии.
Поддержка DNSCrypt в Яндекс.Браузере
При этом все запросы в зашифрованном виде будут отправляться на быстрый DNS-сервер Яндекса, который также получил поддержку протокола DNSCrypt. Ограничивать пользователей только одним сервером мы не хотим, поэтому уже в ближайшее время добавим в этом месте возможность выбрать альтернативный DNS-сервер (например, тот же OpenDNS).
И еще кое-что. Подменить IP-адрес на фишинговый можно не только через перехват запроса, но и через самый обычный системный host-файл. Поэтому мы сейчас экспериментируем с запретом использовать системный резолвер в случае недоступности DNS-сервера. Мы понимаем, что включение этой опции по умолчанию может навредить пользователям корпоративных и локальных ресурсов, поэтому пока только наблюдаем и собираем отзывы.
Шифрование трафика между вашим устройством и 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
Есть много причин для лучшей защиты DNS-трафика. Хотя веб-трафик и другие коммуникации могут быть защищены криптографическими протоколами, такими как Transport Layer Security (TLS), но почти весь трафик DNS передаётся незашифрованным. Это означает, что ваш провайдер (или кто-то другой между вами и интернетом) может регистрировать посещаемые сайты даже при работе через сторонний DNS — и использовать эти данных в своих интересах, включая фильтрацию контента и сбор данных в рекламных целях.
Как выглядит типичный обмен данными между устройством и DNS-резолвером
«У нас есть проблема “последней мили” в DNS, — говорил Крикет Лю, главный архитектор DNS в компании Infoblox, которая занимается информационной безопасностью. — Большинство наших механизмов безопасности решают вопросы коммуникаций между серверами. Но есть проблема с суррогатами резолверов на различных операционных системах. В реальности мы не можем их защитить». Проблема особенно заметна в странах, где власти более враждебно относятся к интернету.
Наиболее очевидный способ уклонения от слежки — использование VPN. Но хотя VPN скрывают содержимое вашего трафика, для подключения к VPN может потребоваться запрос DNS. И в ходе VPN-сеанса запросы 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-запросов и используются для обмена ключами с использованием алгоритма обмена ключами 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, то действительно тяжело получить право голоса».
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, как показано ниже:
После установления 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 мс.
Здесь тоже имеется проблема с управлением сертификатами. Если провайдер удалит сертификат и начнёт использовать новый, то в настоящее время нет чистого способа обновления данных SPKI на клиентах, кроме вырезания старого и вставки нового сертификата в файл конфигурации. Прежде чем с этим разберутся, было бы полезно использовать какую-то схему управления ключами. И поскольку сервис работает на редком порту 853, то с высокой вероятностью DNS по TLS могут заблокировать на файрволе.
Google и Cloudflare, похоже, одинаково видят будущее зашифрованного DNS
Как Cloudflare, мы считаем, что туннели иллюстрируют операцию «Арго» лучше, чем Бен Аффлек
Дабы убедиться, что проблема именно в протоколе DoH, а не в программистах Cloudflare, я испытал два других инструмента. Во-первых, прокси-сервер от Google под названием Dingo. Его написал Павел Форемски, интернет-исследователь из Института теоретической и прикладной информатики Академии наук Польши. Dingo работает только с реализацией DoH от Google, но его можно настроить на ближайшую службу Google DNS. Это хорошо, потому что без такой оптимизации Dingo сожрал всю производительность DNS. Запросы dig в среднем выполнялись более 100 миллисекунд.
Это сократило время отклика примерно на 20%, то есть примерно до того показателя, как у Argo.
А оптимальную производительность DoH неожиданно показал DNSCrypt Proxy 2. После недавнего добавления DoH Cloudflare в курируемый список публичных DNS-сервисов DNSCrypt Proxy почти всегда по умолчанию подключается к Cloudflare из-за низкой задержки этого сервера. Чтобы убедиться, я даже вручную сконфигурировал его под резолвер Cloudflare для DoH, прежде чем запустить батарею dig-запросов.
Все запросы обрабатывались менее чем за 45 миллисекунд — это быстрее, чем собственный клиент Cloudflare, причём с большим отрывом. С сервисом DoH от Google производительность оказалась похуже: запросы обрабатывались в среднем около 80 миллисекунд. Это показатель без оптимизации на ближайший DNS-сервер от Google.
Я не Бэтмен, но моя модель угроз всё равно немного сложнее, чем у большинства людей
Я профессиональный параноик. Моя модель угроз отличается от вашей, и я предпочел бы сохранить в безопасности как можно больше своих действий в онлайне. Но учитывая количество нынешних угроз приватности и безопасности из-за манипуляций с трафиком DNS, у многих людей есть веские основания использовать какую-либо форму шифрования DNS. Я с удовольствием обнаружил, что некоторые реализации всех трёх протоколов не оказывают сильно негативного влияния на скорость передачи трафика.
Другая проблема в том, что, хотя прекрасные ребята из сообщества DNSCrypt проделали большую работу, но такая приватность по-прежнему слишком сложна для обычных людей. Хотя некоторые из этих DNS-клиентов для шифрования оказалось относительно легко настроить, но ни один из них нельзя назвать гарантированно простым для нормальных пользователей. Чтобы эти услуги стали действительно полезными, их следует плотнее интегрировать в железо и софт, который покупают люди — домашние маршрутизаторы, операционные системы для персональных компьютеров и мобильных устройств.
Интернет-провайдеры наверняка постараются активнее монетизировать обычный DNS-трафик, и никуда не исчезнут государственные агентства и преступники, которые стремятся использовать его во вред пользователю. Но маловероятно, что крупные разработчики ОС стремятся надёжно защитить DNS доступным для большинства людей способом, потому что они часто заинтересованы в монетизации, как и интернет-провайдеры. Кроме того, эти разработчики могут столкнуться с сопротивлением изменениям со стороны некоторых правительств, которые хотят сохранить возможности мониторинга DNS.
Так что в ближайшее время эти протоколы останутся инструментом для тех немногих людей, кто реально заботится о конфиденциальности своих данных и готов для этого немного потрудиться. Надеюсь, сообщество вокруг DNSCrypt продолжит свою активность и продвинет ситуацию вперёд.
Наблюдение за интернетом усиливается, и каждый, кто находится в сети, должен предпринять шаги для восстановления своей безопасности и сохранения конфиденциальности. Большинство людей не учитывают уязвимости DNS-запросов; Тем не менее, это может быть предметом для беспокойства.
DNS угон и фарминг:
DNS угон и фарминг:
DNS угон и фарминг:
Эта атака имеет функцию перенаправления пользователя на поддельный веб-сайт. Этот угон делается в основном для коммерческих целей.
Допустим, например, что вы пытаетесь зайти на сайт социальной сети. Вы вводите URL, но вместо того, чтобы быть направленным на платформу, вы перенаправлены.
Ссылка, которая открывается после перенаправления, содержит множество всплывающих рекламных объявлений, которые приносят доход злоумышленнику.
Этот метод обычно известен как фарминг. В нем хакер организует атаку с основным мотивом зарабатывания на ней денег.
Читайте также: