Согласно исследованию, проведенному VPNMentor с помощью нанятой группы специалистов, далеко не все VPN-сервисы способны предоставить пользователям защиту их данных. Большинство протестированных сервисов не до конца скрывают IP-адрес клиентов.
Эксперты подчеркивают, что такие недостатки в VPN-сервисах могут использоваться правительством и организациями для отслеживания конкретных лиц, представляющих интерес.
«Мы протестировали 3 популярных VPN-сервиса: Hotspot Shield, PureVPN и Zenmate. К сожалению, мы обнаружили, что все они способствуют утечке конфиденциальных данных», — пишут в блоге исследователи VPNMentor.
Hotspot Shield оказался единственным сервисом, быстро принявшим меры после официального уведомления VPNMentor о наличие бреши в безопасности. Остальные VPN-сервисы на данный момент не ответили VPNMentor, поэтому проект принял решение опубликовать результаты тестов.
Уязвимости в Hotspot Shield затрагивают соответствующее расширение Chrome, десктопная и мобильная версии приложения безопасны.
Первая уязвимость, получившая идентификатор CVE-2018-7879, позволяет злоумышленнику перехватить трафик пользователя, для этого потребуется заманить его на вредоносный сайт.
Эксперты отметили наличие следующего PAC-скрипта, используемого в расширении Hotspot Shield для Chome:
```
function FindProxyForURL(url, host) {
if(url.indexOf('act=afProxyServerPing') != -1) {let parsed = url.match(/act=afProxyServerPing&server=([^&]+)/);
if(parsed && parsed[1]) return 'https '+parsed[1]+':443; DIRECT;';}
```
Он определяет, имеет ли текущий URL параметр act=afProxyServerPing, если он находит этот параметр, весь трафик перенаправляется на прокси-сервер.
Эта проблема, похоже, связана с внутренним тестовым кодом, который не был удален, поскольку скрипт не может проверить, какой хост делает этот «вызов». Злоумышленник может создать ссылку с этими параметрами, что позволит перенаправить пользователя на контролируемый киберпреступниками сервер.
Утечка IP существует благодаря белому списку, который используется расширением для «прямого соединения».
let whiteList = /localhost|accounts\.google|google\-analytics\.com|chrome\-signin|freegeoip\.net|event\.shelljacket|chrome\.google|box\.anchorfree|googleapis|127\.0\.0\.1|hsselite|firebaseio|amazonaws\.com|shelljacket\.us|coloredsand\.us|ratehike\.us|pixel\.quantserve\.com|googleusercontent\.com|easylist\-downloads\.adblockplus\.org|hotspotshield|get\.betternet\.co|betternet\.co|support\.hotspotshield\.com|geo\.mydati\.com|control\.kochava\.com/;if(isPlainHostName(host) || shExpMatch(host, '*.local') || isInNet(ip, '10.0.0.0', '255.0.0.0') || isInNet(ip, '172.16.0.0', '255.240.0.0') || isInNet(ip, '192.168.0.0', '255.255.0.0') || isInNet(ip, '173.37.0.0', '255.255.0.0') || isInNet(ip, '127.0.0.0', '255.255.255.0') || !url.match(/^https?/) || whiteList.test(host) || url.indexOf('type=a1fproxyspeedtest') != -1) return 'DIRECT';
Тесты показали, что любой домен, который содержит localhost в URL-адресе, обходит прокси-сервер (например, localhost.foo.bar.com). Так же происходит и с type=a1fproxyspeedtest.
Чтобы продемонстрировать наличие утечки, специалисты зашли на сайт с неподдерживаемой версией Hotspot Shield.
Эксперты подтвердили, что в настоящее время уязвимости PureVPN и ZenMate могут использоваться для деанонимизации пользователей этих сервисов.