Чек-лист проверки анонимности сёрфинга. Разница во временных зонах браузера и ip


Насколько безопасен OpenVPN – TheWired

В прошлой статье я писал о том, как настроить свой собственный OVPN (OpenVPN). К сожалению, более-менее стандартный конфиг хоть и не раскрывает реальный IP-адрес клиента (это хорошо), но все же обнаруживает сам факт существования средств анонимизации (это не есть хорошо). Сегодня я расскажу, как именно происходит детекция и как с ней бороться ;-)

Итак, если зайти сюда то вот что мы увидим:

Как видим из скриншота, утечка информации происходит по следующим пунктам:

  1. Открытые порты web proxy
  2. Разница во временных зонах (браузера и IP)
  3. Принадлежность IP хостинг провайдеру
  4. Определение туннеля (двухсторонний пинг)
  5. VPN Fingerprint

Постараемся максимально устранить утечки данных. По порядку.

#1 Открытые порты web proxy

Эту “проблему” исправить легче всего — это и не проблема вовсе. Достаточно, чтобы на сервере, где у вас установлен и настроен OpenVPN не было никакого web-сервера (apache/nginx). В моем случае, web-сервер там есть, меня это не особо напрягает. Поэтому переходим к следующему пункту.

#2 Разница во временных зонах (браузера и IP)

Проще всего будет изменить время на клиентском устройстве и привести его в соответствие с временной зоной той страны и/или города, где физически находится OpenVPN-сервер.

#3 Принадлежность IP хостинг провайдеру

Увы, не изменить никак :(

#4 Определение туннеля (двухсторонний пинг)

Заходим в настройки ufw:

nano /etc/ufw/before.rules

nano /etc/ufw/before.rules

Приводим секцию к такому виду:

# ok icmp codes -A ufw-before-input -p icmp --icmp-type destination-unreachable -j ACCEPT -A ufw-before-input -p icmp --icmp-type source-quench -j ACCEPT -A ufw-before-input -p icmp --icmp-type time-exceeded -j ACCEPT -A ufw-before-input -p icmp --icmp-type parameter-problem -j ACCEPT # -A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT

# ok icmp codes

-A ufw-before-input -p icmp --icmp-type destination-unreachable -j ACCEPT

-A ufw-before-input -p icmp --icmp-type source-quench -j ACCEPT

-A ufw-before-input -p icmp --icmp-type time-exceeded -j ACCEPT

-A ufw-before-input -p icmp --icmp-type parameter-problem -j ACCEPT

# -A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT

Перезапускаем ufw:

Все, теперь туннель определяться не будет.

#5 VPN Fingerprint

Открываем конфиг VPN-сервера:

nano /etc/openvpn/server.conf

nano /etc/openvpn/server.conf

После строки:

Добавляем строку:

Перезапускаем VPN-сервер:

Если вы используете Viscosity (как я рекомендовал в прошлой статье), то заходите в свойства соединения, затем вкладка “Расширенные настройки” и в поле “Введите дополнительные команды для OpenVPN” пишем:

Пробуем прогнать тест еще раз:

Как видите — остался только 80-й порт, который я просто не стал убирать и IP, принадлежащий датацентру — но тут мы уже ничего не можем сделать. Базовая часть настроек выполнена, но это еще не все, есть еще нюансы ;-) Едем дальше, заходим вот сюда. И видим печальный результат:

#1 Отключаем Flash в браузере

Я использую Google Chrome (для других браузеров ищите как отключить в гугле), в адресной строке пишем:

Ищем там Adobe Flash Player и вырубаем его.

#2 Включаем опцию запрета отслеживания в браузере (Do Not Track)

В Google Chrome это делается в настройках, пункт меню — “Личные данные”, затем ставим галочку на пункте меню “Отправлять с исходящим трафиком запрос “Не отслеживать””.

#3 Отключаем WebRTC в браузере

Для Google Chrome есть плагин WebRTC Leak Prevent, ставим его.

В финале Whoer показал мне вот такую картинку:

Разное системное время Whoer определил по временной зоне (да, ее тоже надо исправлять). Язык тоже, думаю, понятно как узнал. На мой взгляд, это не является великой проблемой, т.к. путешествующий (условно) пользователь вполне логично будет иметь отличную от места пребывания временную зону и время, равно как и локаль. По большому счету, сделать то, что я описал в статье — лишним не будет ;-) Ну а для параноиков будут совсем иные рецепты. На связи, пишите в комментарии, если будут вопросы ;-)

Я советую хостинг Linode и Digital Ocean. Рефам помощь в установке и настройке — бесплатно!

www.thewired.ru

Чек-лист проверки анонимности сёрфинга / Хабр

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

Главная идея — определить, скрывается пользователь во время сёрфинга в сети или нет, и по возможности узнать его реальный IP адрес. Есть несколько интересных фишек, которые в принципе я нигде не встречал (двусторонний пинг, сопоставление пар DNS leak/ISP).

Хотелось иметь под рукой этакий чек-лист, который бы отвечал, «палишься» ты или нет? На данный момент список состоит из 12 методов проверки, о которых ниже и пойдет речь, в том числе о том, как на них не попасться, но сначала о самом простом по порядку.

Заголовки HTTP proxy

Некоторые прокси дописывают свои заголовки к запросу, который инициирует браузер пользователя. Нередко это реальный IP адрес пользователя.

Убедитесь, что прокси сервер если и пишет что-то в заголовки указанные ниже, то хотя бы не ваш адрес:

HTTP_VIA, HTTP_X_FORWARDED_FOR, HTTP_FORWARDED_FOR, HTTP_X_FORWARDED, HTTP_FORWARDED, HTTP_CLIENT_IP, HTTP_FORWARDED_FOR_IP, VIA, X_FORWARDED_FOR, FORWARDED_FOR, X_FORWARDED, FORWARDED, CLIENT_IP, FORWARDED_FOR_IP, HTTP_PROXY_CONNECTION

Открытые порты HTTP proxy

IP адрес, с которого пришел запрос к нашей страничке может сказать о многом. Можно например посмотреть какие на той стороне открыты порты?

Самые интересные порты 3128, 1080, 8123. Если их не использовать, то вполне можно избежать необоснованных подозрений в использовании 3proxy, SOCKS 5 или Polipo.


Открытые порты web proxy

Как и в случае с HTTP, веб прокси можно повесить на любой порт, но мы хотели, чтобы тест работал очень быстро, поэтому ограничились обратным коннектом на порты 80 и 8080.

Отдается веб страничка? Отлично! На данный момент мы умеем определять PHProxy, CGIProxy, Cohula и Glype.

Нестандартные порты с авторизацией закрывают вопрос.

Подозрительное название хоста

Имея IP адрес можно попробовать отрезолвить хостнейм клиента. Стоп слова, которые могут намекать на туннель: vpn, hide, hidden, proxy.

Не стоит привязывать доменные имена к личному VPN, а если и делать это, то стоит избегать «говорящих» имён.

Разница во временных зонах (браузера и IP)

Исходя из данных GeoIP можно узнать страну по IP пользователя, а следовательно и его временную зону. Дальше можно вычислить разницу во времени между браузером и временем соответствующим временной зоне VPN сервера.

Разница есть? Значит пользователь наверняка скрывается.

Для России точной базы latitude и longtitude для регионов нет, а так как временных зон много, то в конечном результате эти адреса мы не учитываем. С Европейскими странами всё наоборот, очень хорошо они палятся.

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

Принадлежность IP к сети Tor

Если ваш IP адрес это Tor нода из списка check.torproject.org/cgi-bin/TorBulkExitList.py, поздравляю, вы спалились.

Ничего криминального, но уже факт раскрытия того, что вы скрываетесь, не очень радует.

Режим браузера Turbo

Собрав диапазоны IP адресов Google, Yandex и Opera, и сравнив с пользовательским адресом, можно предположить использование сервисов сжатия трафика в браузерах соответствующих компаний.

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

Определение web proxy (JS метод)

Сравнив window.location.hostname с хостом запрошенной страницы, можно определить используется ли web proxy.

Веб прокси в принципе не надёжны, поэтому лучше обходить такие способы анонимизации совсем.

Утечка IP через Flash

Adobe Flash очень хорошо работает мимо пользовательских прокси. Инициировав соединение к нашему серверу, можно узнать IP пользователя.

Запустив специального демона, который логгирует все входящие соединения с ключами-метками, можно многое узнать. Лучший способ не раскрывать свой адрес — не использовать Adobe Flash вообще, или отключать в настройках браузера.

Определение туннеля (двусторонний пинг)

Запустив пинг к клиентскому IP, со стороны нашего сервера, можно узнать приблизительную длинну маршрута. То же самое можно сделать со стороны браузера, XMLHTTPRequest дёргает пустую страницу нашего nginx. Полученную разницу в петле более 30 мс можно интерпретировать как туннель.

Конечно маршруты туда и обратно могут различаться, или веб сервер чуть притомозит, но в целом точность получается довольно хорошая.

Единственный способ защититься — запретить ICMP трафик к своему VPN серверу.

Утечка DNS

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

Следующим шагом собрали статистику на несколько миллионов пользователей, кто и какой DNS использует. Сделали привязку к провайдерам, отбросили публичные DNS и получили список пар DNS/ISP.

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

Частично проблему решает использование публичных DNS сервисов, если это можно назвать решением.

Утечка через ВКонтакте

Это не утечка IP адреса, но всё же мы считаем, что отдавая всем налево и направо имена авторизованных пользователей, VK сливает частные данные, которые подрывают на корню всё анонимность серфинга.

Подробнее можно посмотреть документацию здесь vk.com/dev/openapi. Кнопка «Выход» после каждой сессии в общем то решает вопрос, но лучшая рекомендация — не входить :)

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

habr.com

Тестируем настройки браузера на анонимность с использованием прокси-сервера

Настройки браузера, на примере Mozilla Firefox, помогут скрыть факт использования прокси-сервера и максимально обеспечить анонимность в сети. Также, идентифицирующие вас данные в User agent не просто скрываются, а подменяются на наиболее используемые пользователями, что позволяет "раствориться" среди многих. Конечно, легче использовать браузер Tor, где, даже, настройки по умолчанию обеспечивают хорошую анонимность, но некоторые сайты просто блокируют доступ по этой сети. И если вы еще не разобрались, как скрыть использование сети Tor, или подобных анонимных сетей, то стоит попробовать воспользоваться прокси-сервером.

На странице одного из популярных сервисов, в онлайн-базе прокси-листов, выбрал прокси HTTP, HTTPS с высокой степенью анонимности 145.249.106.107 Netherlands Amsterdam.

Тест проверки анонимности на сервисе 2ip.ru, я уже делал в предыдущей статье О чем расскажет ваш браузер, теперь посмотрим результаты с использованием прокси-сервера.

Непонятно почему в шапке показало Казахстан, но в колонке разницы во временных зонах браузера и IP, Amsterdam указан правильно.

Утечка IP через WebRTC. Как видим, использование прокси-сервера, даже с заявленной высокой степенью анонимности, не скрыло реальный (внутренний) IP-адрес компьютера. Для тех, кто не в теме, с внутренними адресами нельзя соединится из интернета, они работают только в пределах локальной сети.

К приватным "серым" IP-адресам относятся адреса из следующих подсетей:

от 10.0.0.0       до 10.255.255.255     с маской 255.0.0.0 или /8;от 172.16.0.0   до 172.31.255.255     с маской 255.240.0.0 или /12;от 192.168.0.0 до 192.168.255.255   с маской 255.255.0.0 или /16;от 100.64.0.0 до 100.127.255.255 с маской подсети 255.192.0.0 или /10. Данная подсеть рекомендована согласно rfc6598 для использования в качестве адресов для CGN (Carrier-Grade NAT).

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

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

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

Для устранения утечки настоящего IP адреса через WebRTC, в адресной строке браузера Firefox введите "about:config", найдите "media.peerconnection.enabled" и дважды кликните для установки значения "false".

Устранение разницы во временных зонах браузера и IP-адреса прокси-сервера. Также, мы видим прокол в разнице во временных зонах браузера компьютера и местонахождения прокси-сервера. Переводим системное время программой настройки времени в Ubuntu, в Меню приложений - Система, или соответствующей в другой операционке.

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

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

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

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

Отключение методов слежения в браузере. Что бы уменьшить вероятность идентификации, даже, если вы сменили IP-адрес, желательно максимально скрыть передаваемую браузером информацию.

Shockwave Flash. Новый профиль в Firefox создается с двумя предустановленными плагинами Openh364 Video Codec и Shockwave Flash. Не заметил, на что влияет первый плагин, но Flash, в том числе настроенный на "Включать по запросу", отдает факт своего присутствия и свою версию. Только после выключения плагина, он становится невидимым для отслеживания.

JavaScript. Отдельно можно остановиться на JavaScript, который выключается параметром "javascript.enabled" в настройках about:config. Настраивать JavaScript удобно с помощью плагина NoScript. Наличие и версия JavaScript тоже отслеживается, но данный функционал работает почти во всех браузерах и его отключение, наоборот, сделает ваш браузер индивидуальней.

User agent. Наиболее идентифицирующая вас информация, передается в строке кода User agent, с данными типа браузера и операционной системы. В разделе about:config, если вбить в строку поиска "useragent", отфильтруются соответствующие строки настроек. Далее, создается параметр general.useragent.override. Выберите тип создаваемого параметра «Строка» и в новом окне впишите нужное значение user agent. Список наиболее используемых конфигураций user agent смотрите, например, здесь или здесь. Работает ли данный параметр лично не проверял, так как популярные user agent есть в плагине User-Agent Switcher, где быстро и легко переключаются между собой или корректируются.

Сервис на странице 2ip.ru/browser-info/ показал, какие пункты слежения были изменены в браузере, благодаря вышеперечисленным действиям. Изначальную конфигурацию смотрите все в той же предыдущей статье.

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

safety.freewebmaster.info

Чек-лист проверки анонимности сёрфинга / СоХабр

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

Главная идея — определить, скрывается пользователь во время сёрфинга в сети или нет, и по возможности узнать его реальный IP адрес. Есть несколько интересных фишек, которые в принципе я нигде не встречал (двусторонний пинг, сопоставление пар DNS leak/ISP).

Хотелось иметь под рукой этакий чек-лист, который бы отвечал, «палишься» ты или нет? На данный момент список состоит из 12 методов проверки, о которых ниже и пойдет речь, в том числе о том, как на них не попасться, но сначала о самом простом по порядку.

Заголовки HTTP proxy

Некоторые прокси дописывают свои заголовки к запросу, который инициирует браузер пользователя. Нередко это реальный IP адрес пользователя.

Убедитесь, что прокси сервер если и пишет что-то в заголовки указанные ниже, то хотя бы не ваш адрес:

HTTP_VIA, HTTP_X_FORWARDED_FOR, HTTP_FORWARDED_FOR, HTTP_X_FORWARDED, HTTP_FORWARDED, HTTP_CLIENT_IP, HTTP_FORWARDED_FOR_IP, VIA, X_FORWARDED_FOR, FORWARDED_FOR, X_FORWARDED, FORWARDED, CLIENT_IP, FORWARDED_FOR_IP, HTTP_PROXY_CONNECTION

Открытые порты HTTP proxy

IP адрес, с которого пришел запрос к нашей страничке может сказать о многом. Можно например посмотреть какие на той стороне открыты порты?

Самые интересные порты 3128, 1080, 8123. Если их не использовать, то вполне можно избежать необоснованных подозрений в использовании 3proxy, SOCKS 5 или Polipo.


Открытые порты web proxy

Как и в случае с HTTP, веб прокси можно повесить на любой порт, но мы хотели, чтобы тест работал очень быстро, поэтому ограничились обратным коннектом на порты 80 и 8080.

Отдается веб страничка? Отлично! На данный момент мы умеем определять PHProxy, CGIProxy, Cohula и Glype.

Нестандартные порты с авторизацией закрывают вопрос.

Подозрительное название хоста

Имея IP адрес можно попробовать отрезолвить хостнейм клиента. Стоп слова, которые могут намекать на туннель: vpn, hide, hidden, proxy.

Не стоит привязывать доменные имена к личному VPN, а если и делать это, то стоит избегать «говорящих» имён.

Разница во временных зонах (браузера и IP)

Исходя из данных GeoIP можно узнать страну по IP пользователя, а следовательно и его временную зону. Дальше можно вычислить разницу во времени между браузером и временем соответствующим временной зоне VPN сервера.

Разница есть? Значит пользователь наверняка скрывается.

Для России точной базы latitude и longtitude для регионов нет, а так как временных зон много, то в конечном результате эти адреса мы не учитываем. С Европейскими странами всё наоборот, очень хорошо они палятся.

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

Принадлежность IP к сети Tor

Если ваш IP адрес это Tor нода из списка check.torproject.org/cgi-bin/TorBulkExitList.py, поздравляю, вы спалились.

Ничего криминального, но уже факт раскрытия того, что вы скрываетесь, не очень радует.

Режим браузера Turbo

Собрав диапазоны IP адресов Google, Yandex и Opera, и сравнив с пользовательским адресом, можно предположить использование сервисов сжатия трафика в браузерах соответствующих компаний.

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

Определение web proxy (JS метод)

Сравнив window.location.hostname с хостом запрошенной страницы, можно определить используется ли web proxy.

Веб прокси в принципе не надёжны, поэтому лучше обходить такие способы анонимизации совсем.

Утечка IP через Flash

Adobe Flash очень хорошо работает мимо пользовательских прокси. Инициировав соединение к нашему серверу, можно узнать IP пользователя.

Запустив специального демона, который логгирует все входящие соединения с ключами-метками, можно многое узнать. Лучший способ не раскрывать свой адрес — не использовать Adobe Flash вообще, или отключать в настройках браузера.

Определение туннеля (двусторонний пинг)

Запустив пинг к клиентскому IP, со стороны нашего сервера, можно узнать приблизительную длинну маршрута. То же самое можно сделать со стороны браузера, XMLHTTPRequest дёргает пустую страницу нашего nginx. Полученную разницу в петле более 30 мс можно интерпретировать как туннель.

Конечно маршруты туда и обратно могут различаться, или веб сервер чуть притомозит, но в целом точность получается довольно хорошая.

Единственный способ защититься — запретить ICMP трафик к своему VPN серверу.

Утечка DNS

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

Следующим шагом собрали статистику на несколько миллионов пользователей, кто и какой DNS использует. Сделали привязку к провайдерам, отбросили публичные DNS и получили список пар DNS/ISP.

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

Частично проблему решает использование публичных DNS сервисов, если это можно назвать решением.

Утечка через ВКонтакте

Это не утечка IP адреса, но всё же мы считаем, что отдавая всем налево и направо имена авторизованных пользователей, VK сливает частные данные, которые подрывают на корню всё анонимность серфинга.

Подробнее можно посмотреть документацию здесь vk.com/dev/openapi. Кнопка «Выход» после каждой сессии в общем то решает вопрос, но лучшая рекомендация — не входить :)

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

sohabr.net

Чек-лист проверки анонимности сёрфинга — Блог Агронавта

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

Главная идея — определить, скрывается пользователь во время сёрфинга в сети или нет, и по возможности узнать его реальный IP адрес. Есть несколько интересных фишек, которые в принципе я нигде не встречал (двусторонний пинг, сопоставление пар DNS leak/ISP).

Хотелось иметь под рукой этакий чек-лист, который бы отвечал, «палишься» ты или нет? На данный момент список состоит из 12 методов проверки, о которых ниже и пойдет речь, в том числе о том, как на них не попасться, но сначала о самом простом по порядку.

Заголовки HTTP proxy

Некоторые прокси дописывают свои заголовки к запросу, который инициирует браузер пользователя. Нередко это реальный IP адрес пользователя.

Убедитесь, что прокси сервер если и пишет что-то в заголовки указанные ниже, то хотя бы не ваш адрес:

HTTP_VIA, HTTP_X_FORWARDED_FOR, HTTP_FORWARDED_FOR, HTTP_X_FORWARDED, HTTP_FORWARDED, HTTP_CLIENT_IP, HTTP_FORWARDED_FOR_IP, VIA, X_FORWARDED_FOR, FORWARDED_FOR, X_FORWARDED, FORWARDED, CLIENT_IP, FORWARDED_FOR_IP, HTTP_PROXY_CONNECTION

Открытые порты HTTP proxy

IP адрес, с которого пришел запрос к нашей страничке может сказать о многом. Можно например посмотреть какие на той стороне открыты порты?

Самые интересные порты 3128, 1080, 8123. Если их не использовать, то вполне можно избежать необоснованных подозрений в использовании 3proxy, SOCKS 5 или Polipo.

Открытые порты web proxy

Как и в случае с HTTP, веб прокси можно повесить на любой порт, но мы хотели, чтобы тест работал очень быстро, поэтому ограничились обратным коннектом на порты 80 и 8080.

Отдается веб страничка? Отлично! На данный момент мы умеем определять PHProxy, CGIProxy, Cohula и Glype.

Нестандартные порты с авторизацией закрывают вопрос.

Подозрительное название хоста

Имея IP адрес можно попробовать отрезолвить хостнейм клиента. Стоп слова, которые могут намекать на туннель: vpn, hide, hidden, proxy.

Не стоит привязывать доменные имена к личному VPN, а если и делать это, то стоит избегать «говорящих» имён.

Разница во временных зонах (браузера и IP)

Исходя из данных GeoIP можно узнать страну по IP пользователя, а следовательно и его временную зону. Дальше можно вычислить разницу во времени между браузером и временем соответствующим временной зоне VPN сервера.

Разница есть? Значит пользователь наверняка скрывается.

Для России точной базы latitude и longtitude для регионов нет, а так как временных зон много, то в конечном результате эти адреса мы не учитываем. С Европейскими странами всё наоборот, очень хорошо они палятся.

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

Принадлежность IP к сети Tor

Если ваш IP адрес это Tor нода из списка check.torproject.org/cgi-bin/TorBulkExitList.py, поздравляю, вы спалились.

Ничего криминального, но уже факт раскрытия того, что вы скрываетесь, не очень радует.

Режим браузера Turbo

Собрав диапазоны IP адресов Google, Yandex и Opera, и сравнив с пользовательским адресом, можно предположить использование сервисов сжатия трафика в браузерах соответствующих компаний.

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

Определение web proxy (JS метод)

Сравнив window.location.hostname с хостом запрошенной страницы, можно определить используется ли web proxy.

Веб прокси в принципе не надёжны, поэтому лучше обходить такие способы анонимизации совсем.

Утечка IP через Flash

Adobe Flash очень хорошо работает мимо пользовательских прокси. Инициировав соединение к нашему серверу, можно узнать IP пользователя.

Запустив специального демона, который логгирует все входящие соединения с ключами-метками, можно многое узнать. Лучший способ не раскрывать свой адрес — не использовать Adobe Flash вообще, или отключать в настройках браузера.

Определение туннеля (двусторонний пинг)

Запустив пинг к клиентскому IP, со стороны нашего сервера, можно узнать приблизительную длинну маршрута. То же самое можно сделать со стороны браузера, XMLHTTPRequest дёргает пустую страницу нашего nginx. Полученную разницу в петле более 30 мс можно интерпретировать как туннель.

Конечно маршруты туда и обратно могут различаться, или веб сервер чуть притомозит, но в целом точность получается довольно хорошая.

Единственный способ защититься — запретить ICMP трафик к своему VPN серверу.

Утечка DNS

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

Следующим шагом собрали статистику на несколько миллионов пользователей, кто и какой DNS использует. Сделали привязку к провайдерам, отбросили публичные DNS и получили список пар DNS/ISP.

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

Частично проблему решает использование публичных DNS сервисов, если это можно назвать решением.

Утечка через ВКонтакте

Это не утечка IP адреса, но всё же мы считаем, что отдавая всем налево и направо имена авторизованных пользователей, VK сливает частные данные, которые подрывают на корню всё анонимность серфинга.

Подробнее можно посмотреть документацию здесь vk.com/dev/openapi. Кнопка «Выход» после каждой сессии в общем то решает вопрос, но лучшая рекомендация — не входить 🙂

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

Похожее

blog.agronavtika.ru

Парсер Хабра: Чек-лист проверки анонимности сёрфинга

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

Главная идея — определить, скрывается пользователь во время сёрфинга в сети или нет, и по возможности узнать его реальный IP адрес. Есть несколько интересных фишек, которые в принципе я нигде не встречал (двусторонний пинг, сопоставление пар DNS leak/ISP).

Хотелось иметь под рукой этакий чек-лист, который бы отвечал, «палишься» ты или нет? На данный момент список состоит из 12 методов проверки, о которых ниже и пойдет речь, в том числе о том, как на них не попасться, но сначала о самом простом по порядку.

Заголовки HTTP proxy

Некоторые прокси дописывают свои заголовки к запросу, который инициирует браузер пользователя. Нередко это реальный IP адрес пользователя.

Убедитесь, что прокси сервер если и пишет что-то в заголовки указанные ниже, то хотя бы не ваш адрес:

HTTP_VIA, HTTP_X_FORWARDED_FOR, HTTP_FORWARDED_FOR, HTTP_X_FORWARDED, HTTP_FORWARDED, HTTP_CLIENT_IP, HTTP_FORWARDED_FOR_IP, VIA, X_FORWARDED_FOR, FORWARDED_FOR, X_FORWARDED, FORWARDED, CLIENT_IP, FORWARDED_FOR_IP, HTTP_PROXY_CONNECTION

Открытые порты HTTP proxy

IP адрес, с которого пришел запрос к нашей страничке может сказать о многом. Можно например посмотреть какие на той стороне открыты порты?

Самые интересные порты 3128, 1080, 8123. Если их не использовать, то вполне можно избежать необоснованных подозрений в использовании 3proxy, SOCKS 5 или Polipo.


Открытые порты web proxy

Как и в случае с HTTP, веб прокси можно повесить на любой порт, но мы хотели, чтобы тест работал очень быстро, поэтому ограничились обратным коннектом на порты 80 и 8080.

Отдается веб страничка? Отлично! На данный момент мы умеем определять PHProxy, CGIProxy, Cohula и Glype.

Нестандартные порты с авторизацией закрывают вопрос.

Подозрительное название хоста

Имея IP адрес можно попробовать отрезолвить хостнейм клиента. Стоп слова, которые могут намекать на туннель: vpn, hide, hidden, proxy.

Не стоит привязывать доменные имена к личному VPN, а если и делать это, то стоит избегать «говорящих» имён.

Разница во временных зонах (браузера и IP)

Исходя из данных GeoIP можно узнать страну по IP пользователя, а следовательно и его временную зону. Дальше можно вычислить разницу во времени между браузером и временем соответствующим временной зоне VPN сервера.

Разница есть? Значит пользователь наверняка скрывается.

Для России точной базы latitude и longtitude для регионов нет, а так как временных зон много, то в конечном результате эти адреса мы не учитываем. С Европейскими странами всё наоборот, очень хорошо они палятся.

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

Принадлежность IP к сети Tor

Если ваш IP адрес это Tor нода из списка http://ift.tt/1MrXWcQ, поздравляю, вы спалились.

Ничего криминального, но уже факт раскрытия того, что вы скрываетесь, не очень радует.

Режим браузера Turbo

Собрав диапазоны IP адресов Google, Yandex и Opera, и сравнив с пользовательским адресом, можно предположить использование сервисов сжатия трафика в браузерах соответствующих компаний.

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

Определение web proxy (JS метод)

Сравнив window.location.hostname с хостом запрошенной страницы, можно определить используется ли web proxy.

Веб прокси в принципе не надёжны, поэтому лучше обходить такие способы анонимизации совсем.

Утечка IP через Flash

Adobe Flash очень хорошо работает мимо пользовательских прокси. Инициировав соединение к нашему серверу, можно узнать IP пользователя.

Запустив специального демона, который логгирует все входящие соединения с ключами-метками, можно многое узнать. Лучший способ не раскрывать свой адрес — не использовать Adobe Flash вообще, или отключать в настройках браузера.

Определение туннеля (двусторонний пинг)

Запустив пинг к клиентскому IP, со стороны нашего сервера, можно узнать приблизительную длинну маршрута. То же самое можно сделать со стороны браузера, XMLHTTPRequest дёргает пустую страницу нашего nginx. Полученную разницу в петле более 30 мс можно интерпретировать как туннель.

Конечно маршруты туда и обратно могут различаться, или веб сервер чуть притомозит, но в целом точность получается довольно хорошая.

Единственный способ защититься — запретить ICMP трафик к своему VPN серверу.

Утечка DNS

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

Следующим шагом собрали статистику на несколько миллионов пользователей, кто и какой DNS использует. Сделали привязку к провайдерам, отбросили публичные DNS и получили список пар DNS/ISP.

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

Частично проблему решает использование публичных DNS сервисов, если это можно назвать решением.

Утечка через ВКонтакте

Это не утечка IP адреса, но всё же мы считаем, что отдавая всем налево и направо имена авторизованных пользователей, VK сливает частные данные, которые подрывают на корню всё анонимность серфинга.

Подробнее можно посмотреть документацию здесь vk.com/dev/openapi. Кнопка «Выход» после каждой сессии в общем то решает вопрос, но лучшая рекомендация — не входить :)

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

This entry passed through the Full-Text RSS service - if this is your content and you're reading it on someone else's site, please read the FAQ at http://ift.tt/jcXqJW.

habrparser.blogspot.com

Как остаться анонимным, используя прокси. — Блог Агронавта

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

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

Поробуйте пройти тест на сайте: https://2ip.ru/privacy/

Наиболее проблемными местами будут:

Открытые порты HTTP, web proxy

Определение web proxy (JS метод)

Утечка DNS

Принадлежность IP хостинг провайдеру

Разница во временных зонах (браузера и IP)

Утечка IP через Flash

Утечка IP через WebRTC

Использование наших платных прокси в стандартных пакетах позволяет решить все эти проблемы, если вы на вашей стороне решили проблему с утечкой WebRTC (инструкция дана выше), а также используете программу-проксификаторProxifier для решения проблемы утечки IP через Flash и утечки DNS (для этого в настойках Proxifier нужно зайти в Options -> Name Resolution и установить опцию Remotely).

Если у вас еще фиксируется проблема Разница во временных зонах (браузера и IP), измените время на своем компьютере в соответствии с временем прокси-сервера.

Останется главная проблема: Определение туннеля (двусторонний пинг)

Чтобы решить эту проблему нужно заказывать прокси с выделенными IP

Использование выделенных IP адресов даст вам не только положительный результат по всем пунктам тестаhttps://2ip.ru/privacy/ , но и даст гарантию того, что не возникнет проблем из-за того, что IP прокси-сервера засвечены в блэклистах или списках хостинг провайдеров, использование которых, свидетельствует о подключении через прокси.

Еще обратите внимание на VPN fingerprint

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

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

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

КУПИТЬ ПРОКСИ

blog.agronavtika.ru