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

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

Группа американских ученых из университетов Массачусетса, Carnegie Mellon и Stony Brook опубликовала исследование, в ходе которого проверяли реальное расположение серверов семерых популярных прокси-провайдеров. Мы подготовили краткий пересказ основных результатов.

Введение


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

В ходе исследования американские ученые оценили расположение 2269 прокси-серверов, находящихся под управлением семерых прокси-компаний и расположенных в общей сложности в 222 странах и территориях. Анализ показал, что как минимум треть всех серверов не находится в тех странах, о которых заявляют компании в своих маркетинговых материалах. Вместо этого они располагаются в странах с дешевым и надежным хостингом: в Чехии, Германии, Нидерландах, Великобритании и США.

Анализ расположения серверов


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

Для проверки реального местоположения серверов исследователи использовали алгоритм активной геолокации. С его помощью оценивался roundtrip пакета, отправленного в сторону сервера и на другие известные хосты в интернете.

При этом, лишь менее 10% протестированных прокси отвечают на пинг, а запустить какой-либо софт для измерений на самом сервере по понятной причине ученые не могли. У них была лишь возможность отправки пакетов через прокси, так что roundtrip до любой точки в пространстве представляет собой сумму времени, за которое пакет дойдет от тестового хоста до прокси и от прокси до адресата.



В ходе исследования был разработан специализированный софт на основе четырех алгоритмов активной геолокации: CBG, Octant, Spotter и гибридный Octant/Spotter. Код решения доступен на GitHub.

Поскольку положиться на IP-to-location базы данных было нельзя, для экспериментов исследователи использовали список якорных хостов RIPE Atlas – информация в этой базе доступна онлайн, постоянно обновляется, а задокументированные локации корректны, более того, хосты из списка постоянно отправляют друг другу сигналы пинга и обновляют данные по roundtrip в публичной базе.

Разработанное учеными решениями представляет собой веб-приложение, которое устанавливает защищенные (HTTPS) TCP-соединения по незащищенному порту HTTP 80. Если сервер не слушает этот порт, то после одного запроса произойдет сбой, однако если сервер слушает этот порт, то браузер получит SYN-ACK ответ с пакетом TLS ClientHello. Это спровоцирует ошибку протокола, и браузер отобразит ошибку, но только после второго roundtrip.



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

Ни один из протестированных провайдеров не называет точное местоположение своих прокси-серверов. В лучшем случае упоминаются города, но чаще всего есть информация только о стране. Даже когда город упоминается, могут происходить казусы – например, исследователи изучали конфигурационный файл одного из серверов под названием usa.new-york-city.cfg, в котором содержались инструкции для подключения к серверу под названием chicago.vpn-provider.example. Так что более-менее точно можно подтвердить только принадлежность сервера к конкретной стране.

Результаты


По итогам тестов с помощью алгоритма активной геолокации, исследователям удалось подтвердить местоположение 989 из 2269 IP-адресов. В случае 642 сделать этого не удалось, а 638 точно находятся не в той стране, где они должны быть согласно заверениям прокси-сервисов. Более 400 из таких ложных адресов в реальности находятся на одном континенте с заявленной страной.



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

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

Комментарии (5)


  1. kinall
    14.05.2019 19:27

    расположенных в общей сложности в 222 странах.

    Что-то многовато


    1. samsivan
      14.05.2019 19:45

      там в рисерче сказано, что 222 countries and territories, видимо всякие непризнанные и т.п. тоже встречаются в заявленных


      1. Fox_exe
        15.05.2019 10:50

        «222 страны и территории» — под «территориями» имеются ввиду отдельные географические точки (Города, Области или даже разные районы/улицы одного города)


  1. Daddy_Cool
    14.05.2019 23:21

    Я так понимаю, что это как хорошо, так и плохо, но я не специалист. Интересны комментарии опытных э… vpnщиков.


    1. Fox_exe
      15.05.2019 10:54

      Хорошо это или плохо определить сложно:
      Пример:
      Есть сайт, который пускает только юзеров из страны А. Мы хотим на него попасть и выбираем прокси, который, по заверениям хостера, расположен в стране А, но физически он расположен в стране Б, но т.к. в GeoIP он тоже значится, как «Страна А», то и сайт, с большой долей вероятности будет думать что мы зашли на него из страны А.