ПОЧЕМУ WEBRTC (Google) ОПРЕДЕЛЯЕТ МОЙ НАСТОЯЩИЙ IP-АДРЕС?
Веб-коммуникации в режиме реального времени (WebRTC) представляют собой набор стандартизированных технологий, позволяющих веб-браузерам напрямую общаться друг с другом без необходимости использования промежуточного сервера. В числе преимуществ WebRTC более высокая скорость и меньшая задержка при использовании видеочатов и приложений для передачи файлов и потоковой трансляции.
Прежде всего нужно понять, что показ всех IP-адресов вашего компьютера/планшета/телефона посредством WebRTC - это не проблема или недостаток VPN/tor/socks, это проблема и недостаток браузера, которым вы пользуетесь.
Проект WebRTC создан Google для передачи потоковых данных (аудио и видео) преимущественно прямо между браузерами пользователей (p2p-соединения), без участия сторонних программ (например, Skype) или плагинов. Это подразумевает не просто доступ браузера с поддержкой WebRTC к сетевой среде (независимо от используемой операционной системы), а возможность определения публичного и локального IP-адреса посредством протокола STUN для установки p2p-соединения в обход всех видов NAT.
На данный момент известно, что по умолчанию WebRTC включён в браузерах Chrome (с версии 23), Firefox (с версии 22) и Opera (с версии 18), что в общем случае сводит на нет все способы анонимизации для пользователей этих браузеров. Чтобы нельзя было через WebRTC определить ваш публичный и локальный IP-адрес, нужно, как это ни странно, отключить его поддержку.
Отключение WebRTC в Firefox:
В адресной строке набрать аbout:config и нажать Enter
В строке Поиск ввести "media.peerconnection.enabled" и выполнить двойной клик по найденной строке, выставив тем самым поле Значение в "false".
Отключение WebRTC в Chrome:
На данный момент неизвестен способ отключения WebRTC средствами самого браузера, а альтернативные решения в виде расширений мы советовать не можем (ищите и устанавливайте их на свой страх и риск), поскольку их эффективность оставляет желать лучшего. Поэтому, видимо, остаётся только посоветовать не пользоваться этим браузером, пока разработчики не реализуют возможность отключения средствами самого браузера (по аналогии с Firefox).
Отключение WebRTC в Opera:
Зайдите в "Настройки" -> "Дополнительно"
В разделе "WebRTC" выберите "Отключить непроксированный UDP"
Отключение WebRTC на Android в Chrome:
В последних версиях браузера Chrome для Android невозможно отключить WebRTC, хотя такая опция есть в настройках.
Если вам нужно использовать браузер с отключенным WebRTC на Android, мы рекомендуем использовать Firefox для Android. На нем вы можете отключить WebRTC по той же самой инструкции для Firefox, которая есть выше.
====================================================
Как WebRTC обнаруживает мои IP-адреса?
WebRTC выявляет IP-адреса через протокол ICE (Interactive Connectivity Establishment). Этот протокол использует несколько методов обнаружения IP-адресов, два из которых описаны ниже.
STUN/TURN-серверы
STUN/TURN-серверы выполняют две ключевые роли в технологии WebRTC: они позволяют веб-браузерам задавать вопрос «Какие у меня публичные IP-адреса?», а также упрощают взаимодействие двух устройств друг с другом, даже если они находятся за пределами NAT и межсетевых экранов. Первая функция может повлиять на вашу конфиденциальность. STUN/TURN-серверы определяют ваш IP-адрес так же, как веб-сайт видит ваш IP-адрес, когда вы его посещаете.
Обнаружение возможного хоста
У большинства устройств есть несколько IP-адресов, связанных с их оборудованием. Обычно они скрыты от веб-сайтов и STUN/TURN-серверов файрволами. Однако спецификация протокола ICE подразумевает, что браузеры могут собирать эти IP-адреса, просто считывая их с вашего устройства.
В большинстве случаев устройствам присваиваются локальные IPv4-адреса, и их обнаружение никак не повлияет на вашу конфиденциальность. Однако, если у вашего устройтва IPv6-адрес, то ваша конфиденциальность может быть под угрозой.
IPv6-адреса работают не совсем так, как IPv4-адреса. Как правило, IPv6-адрес — это внешний, публичный адрес, то есть он является уникальным. Если у вашего устройства IPv6-адрес, и он обнаружен с помощью протокола ICE, то ваши конфиденциальные данные могут стать доступными.
Вредоносный веб-сайт может использовать STUN/TURN-серверы или протокол обнаружения возможного хоста, чтобы обманным путем вынудить ваш браузер предоставить IP-адрес, который может быть использован для вашей идентификации без вашего ведома.
Утечки через WebRTC: какие браузеры наиболее уязвимы?
На данный момент пользователи настольных версий браузеров Firefox, Chrome, Opera, Safari и Microsoft Edge наиболее уязвимы для утечек через WebRTC, потому что эти браузеры по умолчанию поддерживают стандарт WebRTC.
Прежде всего нужно понять, что показ всех IP-адресов вашего компьютера/планшета/телефона посредством WebRTC - это не проблема или недостаток VPN/tor/socks, это проблема и недостаток браузера, которым вы пользуетесь.
Проект WebRTC создан Google для передачи потоковых данных (аудио и видео) преимущественно прямо между браузерами пользователей (p2p-соединения), без участия сторонних программ (например, Skype) или плагинов. Это подразумевает не просто доступ браузера с поддержкой WebRTC к сетевой среде (независимо от используемой операционной системы), а возможность определения публичного и локального IP-адреса посредством протокола STUN для установки p2p-соединения в обход всех видов NAT.
На данный момент известно, что по умолчанию WebRTC включён в браузерах Chrome (с версии 23), Firefox (с версии 22) и Opera (с версии 18), что в общем случае сводит на нет все способы анонимизации для пользователей этих браузеров. Чтобы нельзя было через WebRTC определить ваш публичный и локальный IP-адрес, нужно, как это ни странно, отключить его поддержку.
Отключение WebRTC в Firefox:
В адресной строке набрать аbout:config и нажать Enter
В строке Поиск ввести "media.peerconnection.enabled" и выполнить двойной клик по найденной строке, выставив тем самым поле Значение в "false".
Отключение WebRTC в Chrome:
На данный момент неизвестен способ отключения WebRTC средствами самого браузера, а альтернативные решения в виде расширений мы советовать не можем (ищите и устанавливайте их на свой страх и риск), поскольку их эффективность оставляет желать лучшего. Поэтому, видимо, остаётся только посоветовать не пользоваться этим браузером, пока разработчики не реализуют возможность отключения средствами самого браузера (по аналогии с Firefox).
Отключение WebRTC в Opera:
Зайдите в "Настройки" -> "Дополнительно"
В разделе "WebRTC" выберите "Отключить непроксированный UDP"
Отключение WebRTC на Android в Chrome:
В последних версиях браузера Chrome для Android невозможно отключить WebRTC, хотя такая опция есть в настройках.
Если вам нужно использовать браузер с отключенным WebRTC на Android, мы рекомендуем использовать Firefox для Android. На нем вы можете отключить WebRTC по той же самой инструкции для Firefox, которая есть выше.
====================================================
Как WebRTC обнаруживает мои IP-адреса?
WebRTC выявляет IP-адреса через протокол ICE (Interactive Connectivity Establishment). Этот протокол использует несколько методов обнаружения IP-адресов, два из которых описаны ниже.
STUN/TURN-серверы
STUN/TURN-серверы выполняют две ключевые роли в технологии WebRTC: они позволяют веб-браузерам задавать вопрос «Какие у меня публичные IP-адреса?», а также упрощают взаимодействие двух устройств друг с другом, даже если они находятся за пределами NAT и межсетевых экранов. Первая функция может повлиять на вашу конфиденциальность. STUN/TURN-серверы определяют ваш IP-адрес так же, как веб-сайт видит ваш IP-адрес, когда вы его посещаете.
Обнаружение возможного хоста
У большинства устройств есть несколько IP-адресов, связанных с их оборудованием. Обычно они скрыты от веб-сайтов и STUN/TURN-серверов файрволами. Однако спецификация протокола ICE подразумевает, что браузеры могут собирать эти IP-адреса, просто считывая их с вашего устройства.
В большинстве случаев устройствам присваиваются локальные IPv4-адреса, и их обнаружение никак не повлияет на вашу конфиденциальность. Однако, если у вашего устройтва IPv6-адрес, то ваша конфиденциальность может быть под угрозой.
IPv6-адреса работают не совсем так, как IPv4-адреса. Как правило, IPv6-адрес — это внешний, публичный адрес, то есть он является уникальным. Если у вашего устройства IPv6-адрес, и он обнаружен с помощью протокола ICE, то ваши конфиденциальные данные могут стать доступными.
Вредоносный веб-сайт может использовать STUN/TURN-серверы или протокол обнаружения возможного хоста, чтобы обманным путем вынудить ваш браузер предоставить IP-адрес, который может быть использован для вашей идентификации без вашего ведома.
Утечки через WebRTC: какие браузеры наиболее уязвимы?
На данный момент пользователи настольных версий браузеров Firefox, Chrome, Opera, Safari и Microsoft Edge наиболее уязвимы для утечек через WebRTC, потому что эти браузеры по умолчанию поддерживают стандарт WebRTC.