Что такое утечка DNS leak и как устранить. Cпособ смены DNS-сервера на Android. Как мне проверить, защищает меня VPN-сеть или нет

07.05.2019

При подключении к 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 сервер.

    Многие пользователи стремятся скрыть 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 не всегда в состоянии защитить DNS-запросы вашего устройства, даже если весь остальной трафик надежно защищен туннелем VPN. Это называется «утечкой DNS». Если происходит утечка DNS-запросов, то третьи лица, например ваш интернет-провайдер или оператор DNS-сервера, могут видеть, какие веб-сайты вы посещаете и какими приложениями пользуетесь.

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

    Что такое DNS

    Как мне проверить, защищает меня VPN-сеть или нет?

    Если приложение ExpressVPN настроено правильно, то оно защищает вас от утечки DNS. Тест на утечку DNS на этой странице позволяет убедиться, что ExpressVPN выполняет поставленную задачу.

    Как ExpressVPN предотвращает утечку DNS?

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

    • DNS-серверы ExpressVPN работают очень быстро
    • ExpressVPN не хранит журналы онлайн-активности и подключений
    • Весь трафик между вашим устройством и DNS-серверами полностью шифруется

    Вот как это работает. Чтобы открыть веб-страницу, вы вводите URL-адрес или щелкаете ссылку в браузере. Этот URL-адрес отправляется через зашифрованный туннель ExpressVPN к собственному DNS-серверу ExpressVPN. DNS-сервер ищет IP-адрес и отправляет его серверу ExpressVPN, который получает доступ к нужной странице. В одно мгновение ExpressVPN возвращает эту страницу вам. Весь трафик остается под надежной защитой VPN-туннеля.

    Если я уже использую VPN, зачем мне нужно проверять, имеется ли утечка DNS?

    Может произойти одно из двух:


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

    Что вызывает утечку DNS-запросов при использовании VPN?

    Утечки DNS могут происходить по многим причинам. Вот некоторые из них:

    1. Ваша VPN-сеть настроена вручную. Если вы вручную настраиваете VPN-соединение, риск утечки DNS-запросов увеличивается и зависит от конфигурации вашей операционной системы. Использование приложений ExpressVPN устраняет многие из опасностей.
    2. Ваш роутер контролируется злоумышленником , например, оператором Wi-Fi в кафе. Злоумышленник может сделать так, чтобы ваше устройство отправляло DNS-запросы за пределы туннеля VPN. Приложения ExpressVPN защищают от утечки DNS, но другие приложения и ручные настройки могут быть уязвимыми.
    3. Ручная настройка DNS. Вы (или программное обеспечение на вашем устройстве) дали команду операционной системе не использовать DNS-серверы ExpressVPN. Опытные пользователи могут запросить конкретную службу DNS, но большинству людей по соображениям безопасности лучше этого не делать.

    Любой человек, который задумывается об анонимности в интернете знает отличный способ скрыть свой IP-адрес в интернете – это VPN-сервис. Однако даже при VPN-соединении зачастую запросы к DNS-серверу остаются незащищенными, и можно запросто отследить куда идут ваши DNS-запросы. По другому это называется “DNSleaks” или «утечка DNS».

    Давайте рассмотрим поподробнее что такое DNS и какие существуют проблемы.

    Как известно, каждый компьютер в сети Интернет имеет свой IP-адрес, не зная IP-адреса компьютера, невозможно отправить ему информацию или запрос. IP-адрес имеет вид 4-х байтового числа, разделенного точками (например, 162.234.12.110 или 78.31.54.226).

    Для простого человека запомнить большое количество IP-адресов не легко, поэтому в начале развития сети Интернет возникла необходимость в средстве, которое должно было бы облегчить жизнь пользователям Интернета. Таким средством стала ДНС — система доменных имен. ДНС сервер — это средство, которое позволяет определить IP-адрес по доменному имени.

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

    С одной стороны всё сделано удобно – вы просто воткнули кабель в сетевую карту, вам автоматически присвоили DNS-сервер провайдера с быстрым откликом и всё работает. Но с другой стороны есть две проблемы при такой схеме:

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

    2) DNS-сервера провайдеров по закону обязаны сохранять логи (с какого IP, на какие сайты заходили, и время соединения), а также по запросу от правоохранительных органов предоставлять эти логи (я надеюсь, все знали это? J). Скажу даже больше, 99% DNS-серверов мира пишут логи и не скрывают этого.

    Если вдруг вы не хотите чтобы ваши данные кто то перехватывал или читал логи ваших посещений есть надёжный вариант. Что нужно сделать:

    1) Нужно зашифровать соединение. Для этого существует программа DNSproxy. Она соединяется к DNS-серверу не напрямую, а зашифровано через DNS-резольвер (он просто редиректит запросы на DNS-сервер). В свою очередь резольвер передаёт данные DNS-серверу тоже по зашифрованному соединению. То есть таким образом с помощью снифферов (например WIreshark) можно лишь узнать IP-адрес резольвера. Но поскольку пакеты зашифрованы с помощью «Elliptic curve cryptography» (эллиптическая криптография), то с каким конкретно DNS-сервером мы обмениваемся данными определить невозможно.

    2) Нужно использовать DNS-сервера, которые не ведут логов. Как Вы сами понимаете, сервера провайдера сразу отпадают. Также для анонимности нельзя использовать DNS-сервера Гугла или Яндекса, поскольку они честно признаются в хранении информации (почитайте их Соглашения о Конфиденциальности). Но есть DNS-сервера, которые нам помогут. Это www.opennicproject.org . На сайте написано, что сервера не пишут никаких логов (ну что ж, поверим). Но, к сожалению, эти сервера нестабильны и иногда отваливаются. Для решения этой проблемы можно использовать программу «Acrylic DNS Proxy «. Она позволяет делать запросы не на один DNS-сервер, а на 10 сразу. И пакет с того сервера, который придёт быстрее всех будет принят программой. Следовательно мы решим сразу две задачи – минимизируем потерю скорости запросов (потому что наиболее быстрый обмен данными как правило происходит с DNS-серверами провайдера), и нивелируем нестабильность каких либо серверов.

    Итак, нам нужно зашифровать соединение на безопасные DNS сервера. Это пригодится не только для тех, кто не использует VPN (как можно решить проблему утечки DNS будет написано позднее). Начнём:

    2) В настройках вашего сетевого подключения нужно прописать вручную DNS-адрес. Заходим «Центр управление сетями и общим доступом» -> «Подключение по локальной сети» -> «Свойства» -> «Протокол интернета версии 4 TCP/IPv4». Там ставим 127.0.0.1. Вторую строчку нужно оставить пустой.

    3) Чтобы запустить AcrylicDNSProxy заходим через Пуск и нажимаем «Start Acrylic Service». Должно появиться сообщение об удачном запуске.

    4) Теперь проверяем наши DNS-сервера на сайте www.perfect-privacy.com/dns-leaktest . Должно быть примерно так как на скрине:


    Рис. 2

    Можете добавить файл AcrylicController.exe в автозагрузку.

    5) Теперь шифруем наши запросы к DNS-серверам с помощью программы DNScrypt.

    6) Распаковываем и запускаем dnscrypt-winclient.exe. Там выбираем свою сетевую карту и нажимаем Install. Теперь соединение с DNS-серверами зашифровано.

    7) Проверим что же теперь покажут нам наши сервисы проверки. Заходим на www.perfect-privacy.com/dns-leaktest . Ни один наш сервер не должен определиться.

    А если зайти на http://whoer.net , то единственное что он может показать – это адрес DNS-резольвера, через которые проходят DNS-запросы. Сами же сервера «неизвестны».


    Рис. 3

    VPN + DNS-шифрование

    На рисунке указана типичная схема вашего соединения, при подключении к VPN-серверам.


    Рис 4.

    Как видите, есть уязвимость – DNS-запросы могут отправляться одновременно и через VPN-сервер, и напрямую к указанному DNS-серверу вашего сетевого подключения.

    Казалось бы, можно просто вручную прописать DNS-сервер в настройках соединения как 127.0.0.1, чтобы не было никаких лишних запросов к DNS провайдера. Но, очевидно, что при отключении от VPN интернет работать не будет, поскольку при подключении к VPN используются их собственные DNS-сервера. Если же просто вписать два сервера проекта www.opennicproject.org , то это снизит скорость серфинга в интернете, когда VPNбудет отключен. В этом случае так же рекомендуется установить программу AcrylicDNSProxy, которая не позволит упасть скорости серфинга. Но раз установили AcrylicDNSProxy, то почему бы и не установить и DNScrypt?

    Если же вы 100% времени пользуетесь VPN-сервисами, то можете просто прописать один IP-адрес в настройках DNS: 127.0.0.1. Этого будет достаточно.

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

    Примечание: если же вам всё это ни к чему, просто установите AcrylicDNSProxy с указанием серверов вашего провайдера, Яндекса, Гугла и т.д., что даст вам ощутимое ускорение интернет-серфинга.

    Спасибо за внимание.

    Некоторые интернет-пользователи предпочитают при работе использовать VPN-сервисы, чтобы скрыть свой настоящий IP-адрес и зашифровать данные. Как правило, на такой шаг их толкает желание сохранить свою онлайн-конфиденциальность, а также ряд других причин. Тем не менее, все это будет зря, если ваши личные данные «утекают» в сеть из-за уязвимостей системы безопасности . Есть два основных вида таких утечек: утечка DNS и утечка WebRTC (IP).

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

    Если вы хоть раз заходили в интернет, то вы сталкивались с системой доменных имен (Domain Name System, DNS), пусть даже сами о том не подозревая. DNS поддерживает базу данных доменных имен (например, vpnmentor.com) и переводит их в соответствующий числовой адрес (Internet Protocol, IP). Именно по этим адресам браузеры и находят сайты в сети. По сути, IP-адреса и доменные имена похожи на телефонную книжку, где у каждого человека есть имя и номер телефона.

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

    Как происходит утечка?

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

    Все это позволяет провайдеру узнать, какие сайты посещает пользователь . А если вы используете VPN-сервис и вдруг узнали, что сидите под своим настоящим IP-адресом, то это значит лишь одно: все ваши DNS-запросы тоже попадают не на серверы VPN-сервиса, а прямо к провайдеру. К слову, некоторые провайдеры используют технологию Transparent DNS proxy («Прозрачный DNS-прокси»), которая заставляет устройства пользователя обращаться с DNS-запросами к серверам провайдера даже в том случае, когда вы выставили иные настройки DNS.

    Что такое утечка WebRTC (IP)?

    В 2015 году специалист по интернет-безопасности Дэниэль Рёслер (Daniel Roesler) сообщил об уязвимости, которая позволяет злоумышленникам перехватывать настоящий IP-адрес пользователя с помощью API (интерфейса программирования приложений), встроенного в большинство современных браузеров -Web Real Time Communication (WebRTC). Перехватить можно было даже данные тех пользователей, которые подключались к VPN-сервису. Отметим, что WebRTC используется в разных сетях для обмена данными между браузерами, обмена файлами по модели P2P, видео-звонков и не только.

    Как происходит утечка?

    Чтобы заставить WebRTC выдать ваш настоящий IP-адрес, нужно всего лишь несколько строчек кода. Все дело в так называемом STUN-сервере (сервере утилит прохождения сессий для NAT). STUN-сервер позволяет компьютерам и устройствам из вашей внутренней сети находить свои публичные IP-адреса (по сути, их интернет-адреса) . VPN-сервисы тоже используют STUN-сервер для перевода вашего внутреннего сетевого адреса в публичный интернет-адрес и наоборот. Для этого STUN-сервер хранит базу данных, в которой собраны записи о ваших локальных и публичных IP-адресах.

    Эта утечка вообще никак не связана с VPN-сервисами, от степени из защищенности в данном случае ничего не зависит. Проблема кроется в уязвимости вашего браузера - точнее, в WebRTC . Когда модуль WebRTC браузера принимает запросы от STUN-сервера, он отправляет обратно сообщение, в котором содержатся оба ваших IP-адреса (внутренний и публичный), а также другие данные.

    Содержимое сообщения, то есть реальный IP-адрес пользователя, можно узнать, если написать крохотную программу на JavaScript. Для нее нужно лишь одно: чтобы в браузере поддерживался WebRTC (ну и саму программу еще написать надо, конечно). И если WebRTC включен в вашем браузере, то он будет принимать запросы от STUN-сервера и отправлять обратно ответы .

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

    Похожие статьи