Як зрозуміти, коли проксі брешуть: верифікація фізичних локацій мережевих проксі за допомогою алгоритму активної геолокації

Як зрозуміти, коли проксі брешуть: верифікація фізичних локацій мережевих проксі за допомогою алгоритму активної геолокації

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

Але наскільки коректними є провайдери таких проксі, коли заявляють про те, що їхні сервери розташовані в певній країні? Це важливо питання, від відповіді який залежить можна взагалі користуватися певним сервісом тим клієнтам, хто стурбований захистом особистої інформації.

Група американських учених з університетів Массачусетсу, 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 з таких хибних адрес насправді знаходяться на одному континенті із заявленою країною.

Як зрозуміти, коли проксі брешуть: верифікація фізичних локацій мережевих проксі за допомогою алгоритму активної геолокації

Коректні адреси знаходяться в країнах, які найчастіше використовуються для розміщення серверів (на кліку картинка відкриється в повному розмірі)

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

Джерело: habr.com

Додати коментар або відгук