Как скрыть dns провайдера при использовании vpn. Анонимность DNS-запросов. Как скрыть свой реальный DNS в Windows

Как скрыть dns провайдера при использовании vpn. Анонимность DNS-запросов. Как скрыть свой реальный DNS в Windows

10.04.2019

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

Что такое DNS-сервер и зачем его скрывать?

DNS (Domain Name System – система доменных имен) представляет собой систему для получения информации о домене. Чаще всего она служит для определения (получения) IP-адреса конкретного ресурса по его имени. DNS преобразует введенное название сайта (например, yandex.ru) в IP-адрес, по которому браузер открывает нужную страницу. Фактически сайт загружает именно IP-адрес, а не название (URL), тогда как название существует только для удобства пользователей. Гораздо легче запомнить и ввести «yandex.ru», нежели «213.180.193.3». DNS и является тем механизмом, который преобразует понятный человеку URL в понятный компьютеру IP.

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

Скрытие DNS при помощи VPN-клиента

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

1. Скачайте приложение отсюда: http://www.sparklabs.com/viscosity/ и установите его (в OS X потребуется перетащить иконку приложения в папку «Applications »):

2. Запустите программу и перейдите в настройки .

3. На вкладке «Соединения » нажмите «+ » и выберите «Добавить соединение »:

4. Выберите файл, полученный от VPN-службы после оплаты аккаунта (в данном примере это «Luxemburg-tcp.ovpn»):

5. Импорт соединения закончен – нажмите «ОК ».

6. На вкладке «Настройки » поставьте галочки, как на картинке (обратите внимание, что галочка на «Принимать настройки DNS одновременно» не стоит):

7. На вкладке «Соединения » два раза нажмите на название импортированного файла (в OS X можно сделать так, как на скриншоте).

Универсальные DNS

Существуют полностью бесплатные DNS-серверы, самые распространенные из которых: Google и OpenDNS. С их помощью можно представиться пользователем из США или другой страны по вашему желанию. Для работы с универсальными DNS в среде Windows проделайте следующее :

1. Откройте «Панель управления » в меню «Пуск ».

2. На вкладке «Сетевые подключения » или «Просмотр состояния сети и задач » (для Windows 7, 8) откройте свое текущее соединение (сетевое или ) и нажмите «Свойства ».

3. Нажмите два раза на пункте «Протокол Интернета версии 4 ».

4. Поставьте внизу галочку на пункте «Использовать следующие адреса DNS-серверов ».

5. В верхней строчки каждой ячейки по очереди вводите: 8.8.8.8 (DNS от Google) или 208.67.222.222 (OpenDNS) .

6. В нижней строчке вводите: 8.8.4.4 (Google) или 208.67.220.220 (OpenDNS). Эти серверы можно комбинировать, вводя разные серверы в разные строки.

7. Нажмите «ОК » и закройте окно.

Для использования универсальных DNS на OS X проделайте следующее :

1. В верхней части рабочего стола нажмите значок «Apple ».

2. Выберите пункт «Системные настройки ».

3. Нажмите на иконку «Сеть » и в появившемся окне нажмите на иконку замка.

4. Выберите текущее соединение с Интернетом (обычно Ethernet или Wi-Fi) и нажмите «Дополнительно… » в правом нижнем углу.

5. В настройки DNS вводите все так же, как в случае с Windows.

Изменение DNS с помощью программы «dnsfixsetup» (Windows)

В Windows для решения проблемы можно предпринять следующее:

1. Перед подключением к VPN установите статические IP-адреса в настройках сетевого подключения, если вы используете DHCP для автоматического получения IP.

2. После соединения с VPN удалите параметры DNS в настройках сетевого подключения.

3. После отключения от VPN верните настройки обратно (т.е. в настройках сетевого подключения проставьте галочки на автоматическое получение IP и DNS).

В Windows можно воспользоваться программой «dnsfixsetup.exe» для решения проблемы. После установки программа запустит три скрипта, выполняющие вышеперечисленные действия автоматически:

1. bat – выполняется при инициировании соединения, но до установления соединения с VPN (вызывается внутренняя функция «pre.vbs»). Если в настройках указано автоматическое получение IP и DNS, программа переключит их на ручное (статическое) получение.

2. bat – выполняется при установке соединения с VPN. Вызывает скрипт «up.vbs», который снимает DNS-серверы со всех активных подключений (кроме адаптера TAP32).

3. bat – выполняется после разрыва соединения с VPN. Скрипт «down.vbs» устанавливает настройки по умолчанию.

Еще один способ смены DNS ручным методом

Данное решение не переключает адаптер к статическим настройкам при использовании DHCP. Если вы не перешли на статическую конфигурацию IP и ваш компьютер обновляет свой IP-адрес при подключении к VPN, тогда настройки DNS могут быть перезаписаны. Настоятельно рекомендуется перейти к статической конфигурации IP.

1. Запустите «cmd.exe», нажав на клавиатуре клавиши «Win+R» и вписав в появившееся окно «cmd».

2. Перед подключением определите имя подключенного сетевого интерфейса путем ввода в появившееся окно (обычно черного цвета) «netsh interface show interface ». В нашем случае мы используем «Подключение по локальной сети» (Local Area Connection).

3. Подключитесь к VPN. Если вы уже подключены, переходите к следующему шагу.

4. Очистите кэш распознавания DNS, введя команду «ipconfig /flushdns ».

5. Отключите текущие настройки DNS командой «netsh interface IPv4 set dnsserver «Local Area Connection» static 0.0.0.0 both ».

6. Чтобы проверить DNS (остался ли он прежним или нет), можно перейти по адресу «https://www.dnsleaktest.com/index.html». Если здесь показано название вашей страны, повторите все шаги.

7. После отключения от VPN перенастройте адаптер в соответствии с предыдущей конфигурацией DNS при помощи команды «netsh interface IPv4 set dnsserver «Local Area Connection» dhcp ».

8. Вновь очистите кэш распознавания DNS, введя команду «ipconfig /flushdns ».

Мы изменили параметры DNS-сервера. Теперь вы полностью уверены в том, что никто не сможет определить ваше реальное местоположение.

Cпособ смены DNS-сервера на Android

1. Нужно зайти в настройки Wi-Fi на своём телефоне.


2. Выберите нужное подключение и в появившемся меню выберите «Изменить сеть».


3. Нажмите «Дополнительно».

При подключении к VPN серверу в некоторых ОС (например, Windows) не всегда запросы проходят через DNS сервер VPN подключения. В этом случае некоторые сайты могут узнать, что ваш IP адрес и DNS сервера находятся в разных странах, и ваша анонимность может оказаться под угрозой.

Что такое DNS сервер

Основное предназначение DNS серверов - это преобразование доменных имен сайтов в IP адреса, за которыми эти домены закреплены. Простыми словами, вводя в браузере домен Google.com, DNS сервер смотрит за каким IP адресом закреплен данный домен, и загрузка страницы сайта происходит через IP адреса.

Ниже представлен пример определения DNS серверов на сайте Whoer.net.


Из примера видно, что мы подключились к VPN и скрыли свой IP адрес (IP принадлежит Великобритании), но при этом DNS сервер выдает наше реальное местонахождение (США).

В данном случае, проблема лежит в принципе работы DNS службы Windows. При подключении к VPN по-умолчанию запрос посылается на DNS VPN сервера. Затем DNS служба Windows ждет 2 секунды, и если ответ не пришел, то посылает запрос на следующий DNS сервер, находящийся в списке ОС Windows. Как раз следующие DNS сервера и принадлежат вашему Интернет-провайдеру, но имеют меньший приоритет по сравнению с DNS VPN сервера.

DNS VPN сервера может не успевать отвечать на запрос вовремя из-за географической удаленности VPN сервера от вас, в то время как DNS сервер вашего провайдера располагается в вашем городе. Также на это может влиять качество прохождения сигнала от вашего Интернет-провайдера до VPN сервера.

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

Наш VPN клиент Secure Kit умеет защищать от утечки DNS leak автоматически. Узнайте подробнее про Secure Kit .

Как скрыть свой реальный DNS в Windows

Выполните следующие действия в любой версии Windows.




Кликните правой кнопкой мышки на сетевое подключение Windows и затем выберите "Свойства".



Укажите публичные DNS сервера Google или OpenDNS.

Google DNS:
- 8.8.8.8
- 8.8.4.4

OpenDNS:
- 208.67.222.222
- 208.67.220.220

Для полной анонимности мы рекомендуем использовать наши DNS сервера. В разделе "Мой аккаунт" указаны DNS сервера для каждого VPN направления. И уже в этом случае ваш DNS сервер будет всегда соответствовать вашему IP адресу (по стране).


После выполнения указанных действий, ваш реальный DNS сервер в Windows будет скрыт.

Как скрыть свой реальный DNS на Mac OS X

Для принудительной установки DNS на любой версии Mac OS X выполните следующие шаги:



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


Выберите подключение, которое вы используете для получения Интернета. Обычно это либо Wi-Fi соединение, либо Ethernet. И затем нажмите на кнопку "Дополнительно".


Введите публичные DNS сервера Google или OpenDNS.

Google DNS:
- 8.8.8.8
- 8.8.4.4

OpenDNS:
- 208.67.222.222
- 208.67.220.220

Эти DNS сервера чаще всего определяются как США. В этом случае ни один сайт не будет выдавать ваши реальные DNS.

Для полной анонимности мы рекомендуем использовать наши DNS сервера. В вашем аккаунте в разделе "Подписки" -> вкладка "DNS" появятся DNS сервера рекомендуемые к использованию с нашими VPN серверами. Для каждого VPN направления будет указан свой DNS сервер. И уже в этом случае ваш DNS сервер будет всегда соответствовать вашему IP адресу (по стране).


После выполнения указанных действий, ваш реальный DNS сервер на Mac OS X будет скрыт.

Как скрыть свой реальный DNS на Ubuntu

Для устранения DNS leak в операционной системе Ubuntu на базе Linux, откройте раздел Соединения.


Выберите ваше подключение к Интернету и нажмите Изменить.


Выберите:

  1. Вкладку Параметры IPv4
  2. Автоматически (DHCP, только адрес)
  3. Укажите DNS сервер. Например, можно использовать публичные DNS сервера от Google или OpenDNS

Google DNS:
- 8.8.8.8
- 8.8.4.4

OpenDNS:
- 208.67.222.222
- 208.67.220.220


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

Нажмите на Управление сетью.


Появится сообщение Соединение разорвано.


Затем нажмите на Управлению сетью еще раз, чтобы включить соединение.


После этих действий, ваш реальный DNS сервер будет скрыт.


Как скрыть свой реальный DNS на серверной Linux

Следующие действия выполняйте только в том случае, если вы считаете себя опытным пользователем Linux . Мы предупреждаем, что вносить изменения ручным способом опасно, если у вас мало знаний по администрированию Linux. Внимание: мы снимаем с себя ответственность за последствия.

Зайдите на сервер под root пользователем (или под обычным пользователем, но у вас должны быть привилегии исполнять команды под sudo).

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

Sudo nano /etc/resolv.conf

  1. Если у вас установлен resolvconf, то в этом файле будет сообщение, что после перезагрузки ОС все изменения в этом файле будут утеряны и настройки вернутся по умолчанию на 127.0.1.1. Так как мы меняем DNS сервер временно, то нас это устраивает.
  2. Запишите DNS сервер, указанный по умолчанию в этом файле. Затем измените DNS сервер. Например, можно взять DNS сервер от Google или OpenDNS.

Google DNS:
- 8.8.8.8
- 8.8.4.4

OpenDNS:
- 208.67.222.222
- 208.67.220.220


Для сохранения в редакторе nano нажмите:

  1. Ctrl+X для выхода из редактора
  2. клавишу Y для сохранения изменений в файле
  3. клавишу Enter для подтверждения сохранения в тот же файл

Чтобы изменения вступили в силу, необходимо перезагрузить сетевой интерфейс.

  • для Debian и Ubuntu введите команду:
sudo /etc/init.d/networking restart
  • для CentOS и Red Hat Linux введите команду:
  • sudo /etc/init.d/network restart

    Сетевой интерфейс перезагрузится и DNS leak будет устранена.

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

    Система доменных имен (DNS) отвечает за преобразование доменных имен (например, «сайт») в фактические IP-адреса для подключения. Она переводит длинные, сложные и тяжелые для запоминания числовые имена веб-серверов на человеческий язык и наоборот.

    Так, всякий раз, когда ваш компьютер должен подключиться к определенному веб-сайту (например, при вводе «www.google.com» в адресной строке браузера), он сначала обращается к DNS-серверу и запрашивает уникальный IP-адрес этого сайта. Эта процедура – важная часть работы Интернета.

    Что такое утечка через DNS?

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

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

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

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

    • веб-сайты, которые вы посещаете;
    • файлы, которые вы скачиваете;
    • сервисы, которыми вы пользуетесь, и многое другое.

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

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

    Как провести тест на утечку через DNS

    Проверить утечки через DNS можно за несколько простых шагов:

    1. Перейдите к тесту на утечку через DNS ;
    2. Посмотрите, соответствует или отображаемый IP-адрес и местонахождение вашим действительным данным. Если это так, то либо вы не подключены к VPN, либо ваш сервис VPN не работает;
    3. Для проверки утечки через DNS выберите стандартный или расширенный тест. Если вы подключены к VPN-серверу и тест не отображает DNS-серверы вашего фактического Интернет-провайдера, ваш трафик является безопасным.

    Что делать, если вы подключены к NordVPN и все равно наблюдаете утечку через DNS во время тестирования? Свяжитесь с нашей службой поддержки с помощью чата, электронной почты или купона поддержки. Мы поможем вам решить любые проблемы в кратчайшие сроки.

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

    Здравствуйте друзья! Сегодня я расскажу что такое утечка DNS, почему вы должны об этом знать и как от этого защититься используя бесплатную утилиту DNSCrypt.

    • Предисловие
    • Что значит утечка DNS
    • Как проверить утечку DNS
    • Как исправить утечку DNS используя DNSCrypt
      • Скачивание DNSCrypt
      • Установка DNSCrypt
      • Использование DNSCrypt
    • DNSCrypt в Yandex браузере
    • DNSCrypt в роутере
    • Заключение
    • Оценка и отзывы

    Что значит утечка DNS?

    При использовании HTTPS или SSL ваш HTTP трафик зашифрован, то есть защищен (не идеально, но защищен). Когда вы используете VPN, весь ваш трафик полностью шифруется (разумеется уровень и качество защиты зависит от правильной настройки VPN, но обычно все настроено и работает правильно).

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

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

    В нашем примере на рисунке ниже вы видите как пользователь (компьютер) пытается обратиться к сайту www.. Для того чтобы попасть на сайт он должен сначала разрешить символьное имя узла в IP-адрес.

    Если же конфигурация сети такова, что используется DNS-сервер провайдера (незашифрованное соединение, отмечено красной линией), то разрешение символьного имени в IP-адрес происходит по незашифрованному соединению.

    Что в этом страшного?

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

    Во-вторых, есть большая вероятность оказаться жертвой хакерской атаки. Такой как: DNS cache snooping и DNS spoofing.

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

    Вкратце для тех кто не в курсе.

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

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

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

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

    Если вам есть что скрывать, тогда я вам предлагают использовать простое решение — DNSCrypt. Можно конечно прописать какие-нибудь другие DNS-сервера и пускать трафик через них. Например сервера Гугла 8.8.8.8 или того же OpenDNS 208.67.222.222, 208.67.220.220. В таком случае вы конечно скроете от провайдера историю посещения сайтов, но расскажите о своих сетевых путешествиях Гуглу. Кроме этого никакого шифрования DNS трафика не будет, а это большой недостаток. Не знаю как вас, но меня это не возбуждает, я лучше установлю DNSCrypt.

    Как проверить утечку DNS

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

    Для работы программы требуется Microsoft .NET Framework 2.0 и выше.

    Скачать DNSCrypt для Mac OS X вы можете по ссылке с Гитаб или с файлообменка по ссылке выше.

    Разработчик программы OpenDNS.

    Установка DNSCrypt

    В этой статье мы разберем работу с консольной версией утилиты. Настраивать ДНСКрипт будем на Windows 10. Установка на других версиях винды не отличается.

    Итак, скачанный архив распаковываем и помещаем содержимое папки dnscrypt-proxy-win32 в любое место на компьютере. В моем примере я расположил в папке “C:\Program Files\DNSCrypt\”.

    После чего откройте от имени администратора командною строку.


    Запуск командной строки от имени администратора в Windows 10

    Теперь в командной строке перейдите в папку DNSCrypt. Сделать это можно с помощью команды:

    cd "C:\Program Files\DNSCrypt"

    Кликаем , если не можете скопировать команды.

    После этого подготовимся к установке службы прокси. Для начала необходимо выбрать провайдера DNS. В архив я положил файл dnscrypt-resolvers.csv. Этот файлик содержит список большинства DNS провайдеров, которые поддерживает DNSCrypt. Для каждого отдельного провайдера есть название, описание, расположение и поддержка DNSSEC и Namecoin. Кроме этого файл содержит необходимые IP-адреса и открытые ключи.

    Выберите любого провайдера и скопируйте значение в первом столбце. В моем случае я буду использовать CloudNS, поэтому я скопировал “cloudns-can”. Теперь необходимо убедится, что прокси может подключиться. Сделать это можно с помощью этой команды:

    dnscrypt-proxy.exe -R "cloudns-can" --test=0

    Если у вас не получилось, попробуйте выбрать другого провайдера и повторить попытку еще раз.

    Если все прошло успешно, продолжим установку и введем следующую команду:

    dnscrypt-proxy.exe -R cloudns-can --install

    Если все правильно работает, вы увидите следующие выходные данные:

    Скрин того как это должно выглядеть в командой строке:

    После чего необходимо зайти в параметры протокола TCP/IP Windows и изменить настройки DNS на 127.0.0.1.

    Для удаления службы ДНСКрипт необходимо вернуть сетевые настройки DNS в начальное состояние. Делается это с помощью этой команды:

    dnscrypt-proxy --uninstall

    Данная команда также может использоваться для смены провайдера DNS. После применения нужно повторить установку с параметрами другого провайдера.

    Если у вас после всей этой процедуры по какой-то причине во время проверки все еще определяться IP-адрес DNS вашего интернет-провайдера, кликните по кнопке «Дополнительно», которая находится под прописанным IP 127.0.0.1. В появившемся окне «Дополнительные параметры…», перейдите на вкладку «DNS» и удалите все адреса DNS-серверов кроме «127.0.0.1».

    Все, теперь утечка DNS устранена.

    Вас также может заинтересовать статья « », в которой рассказывалось об удалении записей DNS на компьютере.

    DNSCrypt в Яндекс Браузере

    С недавнего времени в браузере от Яндекс появилась поддержка ДНСКрипт. Ну что сказать, ребята из Яндекса работают и пытаются защитить пользователя — это здорово, но в отличие от утилиты DNSCrypt защита у Яндекса реализуется только на уровне браузера, а не уровне всей системы.

    DNSCrypt в роутере

    Также поддержка ДНСКрипт реализована в популярных прошивках OpenWrt. Подробнее об установке и другой дополнительной информации вы можете узнать на странице.

    Заключение

    Конечно же утилита ДНСКрипт и шифрование DNS в целом не является панацеей, да и вообще в информационной безопасности нет такого понятия как панацея. Мы только можем максимально улучшить нашу безопасность и анонимность, но сделать наше присутствие в сети неуязвимым на все 100% к сожалению не получится. Технологии не стоят на месте и всегда найдутся лазейки. Поэтому я предлагаю вам подписаться на наши новости в социальных сетях, чтобы всегда быть в курсе. Это бесплатно.

    На этом все друзья. Надеюсь эта статья помогла вам решить проблему утечки DNS. Удачи вам в новом 2017 году, будьте счастливы!

    Оценка утилиты DNSCrypt

    Наша оценка

    DNSCrypt - бесплатная утилита для защиты DNS-трафика Путем шифрования DNS-трафика и использования серверов DNS. Наша оценка - очень хорошо!

    Оценка пользователей: 4.25 (36 оценок)

    Главная проблема большинства программ использующихся совместно с “Tor” (The Onion Router), это утечка DNS-запросов. Т.е., несмотря на то, что используется Tor, программы сначала посылают DNS-запрос “незатореным” чтобы получить IP-адрес конечной цели. И уже только после этого обращаются к конечной цели будучи “заторенными”. Это значит, что задача определения DNS-утечек является критичной с точки зрения анонимности.

    Рассмотрим пример. При обращении к доменному имени сайта (google.com) вместо его IP-адреса (173.194.70.101), происходит вычисление IP по этому имени. Делается это службой “Domain Name System” (DNS). При этом происходит утечка: в сеть посылается открытый незашифрованный запрос к серверам DNS, содержащий доменное имя (google.com), что позволяет любопытным (например СОРМ-2) узнать, куда вы ходите. Но даже если вы зашли, набрав в адресной строке IP-адрес (173.194.70.101), то и тут возможна утечка из-за запросов активных элементов загруженных с сайта страницы (например могут выполниться java-скрипты).

    Запросы DNS короткие, поэтому посылаются по транспортному протоколу UDP. Если запрос слишком длинный, используется обычный транспорт TCP, при этом используется 53 порт. Значит мы будем слушать именно 53 порт.

    Для проверки сети используются специальные программы - перехватчики-анализаторы сетевого трафика (информации, идущей по сети). Их называют еще снифферами (sniffer - вынюхиватель).

    Вариант 1: “TCPDump” (Console)

    Наиболее известным анализатором является программа “tcpdump” (http://ru.wikipedia.org/wiki/Tcpdump), включенная в большинство дистрибутивов Linux.

    Устанавливаем “tcpdump”:

    sudo apt-get install tcpdump

    sudo tcpdump port 53

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

    Если используется несколько сетевых устройств, то возможно дополнительно придется указать требуемый сетевой интерфейс. Их список можно узнать консольной программой ifconfig .

    sudo ifconfig

    После нахождения имени сетевого интерфейса, надо прибавлять к команде следующее:

    I <имя_сетевого_интерфейса или его номер>

    sudo tcpdump -i eth0 port 53

    Останавливается анализ комбинацией CTRL+C .

    Вариант 2: “WireShark” (Console & GUI)

    Wireshark (ранее - Ethereal) - программа-анализатор трафика для компьютерных сетей Ethernet и некоторых других. Написан на библиотеках GTK+ и имеет графический интерфейс (GUI). Но помимо GUI, есть консольная реализация программы по имени “TShark”, обладающая тем же функционалом, что и ее графический вариант. Функциональность очень схожа с возможностями программы tcpdump , однако Wireshark имеет графический пользовательский интерфейс и гораздо больше возможностей по сортировке и фильтрации информации. Программа позволяет пользователю просматривать весь проходящий по сети трафик в режиме реального времени, переводя сетевую карту в неразборчивый режим (promiscuous mode). Так как программа очень популярна в качестве административного инструмента для анализа сетей, она имеется в репозиториях практически любого дистрибутива Linux.

    • TShark

    Устанавливаем:

    sudo apt-get install tshark

    Начнём прослушивание для проверки на утечку DNS:

    sudo tshark -i eth0 port 53

    Вместо eth0 вписываем имя своего интерфейса

    • Wireshark

    Устанавливаем:

    sudo apt-get install wireshark

    Во всех инструкциях в сети обычно предлагается запускать WireShark от root’а, иначе WireShark не увидит сетевые интерфейсы, так как для доступа к ним нужны рутовые права. Но предоставлять права root’а GUI-программам противопоказано! По этому мы не станем использовать sudo , а проделаем манипуляции описанные в официальной инструкции .

    Создаём группу wireshark:

    sudo groupadd wireshark

    Добавляем в группу wireshark пользователя (то есть себя), заменив user на своё имя пользователя:

    sudo usermod -G wireshark -a user

    Примечание: Впишем в место user своё имя юзера.

    sudo chgrp wireshark /usr/bin/dumpcap sudo chmod 754 /usr/bin/dumpcap sudo setcap "CAP_NET_RAW+eip CAP_NET_ADMIN+eip" /usr/bin/dumpcap

    Перелогинимся (выйдем и снова войдём в смистему) для того, что бы проделанные манипуляции с правами вступили в силу.

    Теперь WireShark может видеть сетевые интерфейсы не только от root но и от юзера состоящего в группе wireshark .

    Запускаем wireshark:

    Мышью открываем вкладку Capture ⇒ Capture Filters :

    Создадим фильтр перехвата DNS.

    В блоке “Properties” в строке “Filter name” вписываем:

    TCP or UDP port 53 (DNS)

    А в строке “Filter string” :

    Нажимаем на кнопку “New” .

    В конце списка должен появится фильтр который мы создали.

    Нажимаем “Ok” .

    Нажимаем CTRL+I или мышью открываем вкладку Capture ⇒ Interfaces :

    Ставим галочку напротив сетевого интерфейса который мы собираемся слушать и нажимаем “Options” :

    Нажимаем на кнопку “Capture Filter” и в открывшемся окне выбираем фильтр “TCP or UDP port 53 (DNS)” , который мы создали.

    Нажимаем “Start” .

    Наконец мы можем увидеть все пакеты прошедшие через 53 порт.



    © 2024 beasthackerz.ru - Браузеры. Аудио. Жесткий диск. Программы. Локальная сеть. Windows