Червь непонимания между людьми рождается из-за разных потребностей и разных моделей угроз. Допустим, что вы хотите оставить самый анонимный комментарий на свете в социальной сети. Что вам для этого нужно? VPN? Tor? SSH-туннель? Вовсе нет, достаточно купить на ближайшем развале «пустую» симкарту и там же б/у смартфон. Отъехать подальше от места своего проживания, вставить одно в другое, написать сообщение и утопить телефон. Вы справились с поставленной задачей с оценкой «отлично».
Но что если вам нужно не просто оставить разовый комментарий, не просто скрыть свой IP-адрес от какого-то сайта? Что если вам нужно иметь такой уровень анонимности, который составит сложнейшую головоломку и практически не даст возможности для раскрытия на любом уровне? А также обеспечить скрытность и в какой-то степени сам факт использования средств анонимизации. Именно об этом я и хотел поговорить.
Идеальная анонимность, как и все идеальное — это скорее мечта, но приблизиться к ней вполне возможно, и происходит это за счет множества различных слоев защиты. Когда одна технология начинает дополнять и усиливать другую, и даже когда для вашей идентификации применяются отпечатки параметров системы и другие методы, вы по-прежнему остаетесь неотличимым от общей массы пользователей сети. В данной статье я попытаюсь рассказать как этого добиться.
Данный материал не является руководством к действию, автор не призывает и более того категорически против нарушения каких бы, то ни было законов, каких бы то ни было государств. Данный материал следует воспринимать исключительно как фантазии автора на тему: «Если бы я был разведчиком».
Базовый уровень защиты
Базовый уровень защиты и анонимности, выглядит примерно так: клиент → VPN/TOR/SSH-тунель → цель.
По сути, это лишь продвинутая альтернатива прокси, позволяющая просто подменить IP. Ни о какой реальной и качественной анонимности тут говорить не приходится. Уже не приходится. Одна неверная или дефолтная настройка пресловутого WebRTC и ваш реальный IP уже известен. Данный тип защиты уязвим и перед компрометацией узла, и перед fingerprints и перед простым анализом логов у провайдера и в дц.
К слову, часто встречается тоже мнение, что частный VPN лучше чем публичный, т.к. человек уверен в своей настройке системы. Давайте на секунду представим, кому-то известен ваш внешний IP, соответственно известен и дата центр, соответственно дата центру известно, какому серверу этот IP принадлежит. А теперь подумаем, сложно ли на месте, установить с какого реального IP к этому серверу подключались? Если вы там один клиент, а? А вот когда клиентов, например 100, тут уже все намного сложнее.
Это даже не касаясь аспектов, что редкий человек, заморочится на шифрованные диски и защиту от выемки, врятли бы даже заметил, если его сервер перезагрузят с init level 1 и включат логи на VPN, описав это как «небольшие технические проблемы в дата центре». Да и разве это вообще нужно, если известны все входящие адреса на сервер и исходящие с него же?
Что же касается Tor, во-первых, его использование напрямую может вызывать подозрение, а во-вторых, выходные ноды, которых около 1000 штук известны и многие из них забанены, для многих сайтов это как красная тряпка. Например в Cloudflare есть возможность в Firewall'e разрешать или принимать подключения из сети Tor. В качестве страны следует использовать T1. Кроме того, использование Tor намного медленнее VPN (Скорость в сети Тор на данный момент не превышает 10 мбит, а часто находится на уровне 1-3 мбит).
Итог: Если вам нужно просто не носить по миру свой открытый паспорт и обходить простейшие запреты на сайты, иметь хорошую скорость соединения и возможность полностью пускать весь трафик через другой узел, то следует выбрать VPN. И на эту роль лучше подходит платный сервис, за те же деньги, что вы отдали бы за свой VPS, в 1-й стране, который еще нужно настроить и как-никак поддерживать, вы получите десятки стран и сотни или даже тысячи выходных IP.
В этом случае нет смысла использовать Tor, но в каких-то случаях и Tor является хорошим решением, особенно, если существует еще дополнительный слой безопасности, такой как VPN или SSH-туннель. Но об этом дальше.
Средний уровень защиты
Средний уровень защиты, выглядит как дальнейшее развитие уровня начального, базового. Клиент → VPN → Тор → цель и вариации на тему. Это оптимальный и рабочий инструмент, для любого, не безразличного к подмене IP-адреса человека, это именно тот случай, когда сочетание технологий усилило каждую из них. Но не стоит питать иллюзий, да, узнать ваш реальный адрес, будет затруднительно, но вы по-прежнему подвержены всем тем же атакам, что и выше. Ваше слабое место — это ваше физическое место работы, ваш компьютер.
Высокий уровень защиты
Клиент → VPN → Удаленное рабочее место (через RDP/VNC) → VPN
Рабочий компьютер должен быть не ваш, а удаленный, например на Windows 8, с Firefox, парой плагинов вроде Flash, парой кодеков, никаких уникальных шрифтов и прочих плагинов. Скучный и неотличимый от миллионов других в сети. И даже в случае какой-либо утечки или компрометации вашей системы, вы все равно остаетесь прикрыты еще одним VPN'ом
Раньше считалось, что высокий уровень анонимности достигался путем использования Tor/VPN/SSH/Socks, но сегодня я бы порекомендовал добавить еще и использование удаленного рабочего места в эту схему.
Идеальный
Клиент → Double VPN (в разных дата центрах, но рядом друг с другом) → Удаленное рабочее место + Виртуальная машина → VPN
Предлагаемая вам схема, это первичное подключение к VPN и вторичное подключение к VPN (на случай, если 1-й VPN будет скомпрометирован, через какую либо утечку), для скрытия трафика от провайдера и с целью не выдать свой реальный IP-адрес в дата центре с удаленным рабочим местом. Далее установленная виртуальная машина на этом сервере. Зачем нужна виртуальная машина я думаю понятно? Чтобы каждую загрузку делать откат к самой стандартной и банальной системе, со стандартным набором плагинов. Именно на машине с удаленным рабочим местом, а не локально, потому что люди, которые использовали виртуальную машину локально, а из под нее TripleVPN на эллиптических кривых, однажды зайдя на whoer.net, очень удивились увидеть в графе WebRTC свой реальный и настоящий IP-адрес. Какую «мульку» реализуют завтра и не спросив вас, обновят вам браузер, я не знаю и думать об этом не хочу, и вы не думайте, не держите ничего локально. Кевин Митник это 30 лет назад уже знал.
Данная схема нами протестирована, тормоза — очень приличные, даже если географически вся схема составлена правильно. Но вполне возможные и терпимые. В данном случае, подразумевается, что человек не разносит сервера на пути по разным континентам. Допустим вы физически находитесь в Москве, так и стройте схему так, что первый VPN тоже в Москве, второй например в Монако и т.п., удаленное рабочее место, например в Нидерландах и конечный VPN, например, в Украине. Логика построения должна быть такой, что не стоит использовать все сервера внутри, например еврозоны, т.к. там хорошо налажено сотрудничество и взаимодействие различных структур, но при этом не стоит их разносить далеко друг от друга. Соседние государства ненавидящие друг-друга — вот залог успеха вашей цепочки! ;)
Можно еще добавить автоматическое посещение веб-сайтов в фоновом режиме, с вашей реальной машины как имитацию серфинга, чтобы не было подозрения, что вы используете какое-то средство анонимизации. Так как трафик идет лишь к одному IP-адресу и через один порт. Можно добавить использование Whonix/Tails, получать доступ в интернет через публичный Wi-Fi в кафе, при этом поменяв данные сетевого адаптера, которые тоже могут привести к деанонимизации. Даже изменить внешность, чтобы не быть идентифицированы по лицу в том же самом кафе, это будущее и оно уже здесь - https://cvdazzle.com/. Вы можете быть определены как по наличию координат местонахождения, в файле фотографии, сделанной вашим телефоном (https://news.ycombinator.com/item?id=4868170) до диагностики определенного стиля письма. Просто помните об этом.
С другой стороны, большинству людей достаточно анонимайзера, но даже наш, при реальной попытке сделать его удобным, он все равно не слишком удобен для серфинга. Да, обычный VPN — это нормальное и грамотное решение для обхода простых блокировок и работы в сети на хорошей скорости, хотите больше анонимности, правда в ущебр скорости? Добавьте сюда еще и Тор. Хотите еще большего? Сделайте как написано выше.
Fingerprints, как и попытки определения использования VPN, по средствам замера времени отправления пакета от пользователя к вебсайту и от вебсайта к IP-адресу пользователя (не берем в расчет такой «костыль» как блокировка только входящих запросов определенного вида) обойти не так просто. Обмануть кое-что можно, одну-другую проверку, но нет гарантий, что завтра не появится очередное «зло». Именно поэтому вам необходимо удаленное рабочее место, именно поэтому нужна чистая виртуалка, именно поэтому это лучший совет, что который можно дать, на данный момент. Cтоимость такого решения может начинаться всего лишь от 40$ в месяц. Но учтите, что для оплаты, следует использовать исключительно Биткоины.
Вместо послесловия. Самая важная часть и самый главный залог успеха в защите анонимности — разделение работы с персональными данными и с данными секретными, представляющими какую-то ценность. Все эти туннели и выстроенные схемы, будут абсолютно бесполезны, если вы с него зайдете, например на свой персональный аккаунт в Google.
Be anonymous!