Еще раз про анониность

Mr.Varenik

Гуру форума
Регистрация
5 Янв 2018
Сообщения
287
Реакции
50
Вспление
Прокси-серверы

Глобально, когда говорят прокси-сервер, то имеют в виду что-то, выступающее посредником между клиентом и адресатом.
В разрезе же обеспечения анонимности прокси-серверы бывают:
HTTP-(веб)-прокси-серверы. Такие серверы пропускают через себя только HTTP-траффик, по умолчанию добавляя в передаваемый траффик данные о применении прокси;
SOCKS-прокси-серверы. В отличие от HTTP-прокси-серверов, SOCKS передаёт всю информацию, ничего не добавляя от себя. Протокол SOCKS находится на сеансовом уровне модели OSI, этим достигается независимость от высокоуровневых протоколов: HTTP, FTP, РОРЗ и др., что и позволяет SOCKS пропускать через себя весь траффик, а не только HTTP;
отдельно стоит упомянуть CGI-прокси или «анонимайзеры», которые по сути представляют собой web-сервер с формой, где клиент вводит адрес нужного сайта. После чего открывается страница запрошенного ресурса, но в адресной строке браузера виден адрес CGI-прокси. CGI-прокси, как и любой web-сервер может использовать https для защиты канала связи между собой и клиентом.

Схему работы прокси-серверов вы видите на картинке, тут всё просто:



Плюсы прокси-серверов:
прокси дешевы, в сети можно найти много бесплатных прокси.

Минусы прокси-серверов:
надо доверять прокси-серверу;
для http-прокси надо фильтровать HTTP-заголовки: «HTTP_X_FORWARDED_FOR: client, ip1...», HTTP_VIA, HTTP_FORWARDED и др.;
протоколы прокси (http, SOCKSx) НЕ поддерживают шифрование между HTTP/SOCKS/Elite/Anonymous-прокси и клиентом. А SSL-прокси означает лишь то, что клиент может работать с https-ресурсами;
цепочки прокси неэффективны: "Привет Proxy1, отправишь моё сообщение:«forward to Proxy3; forward to Proxy4; forward to encrypted.google.com/c8e8df895c2cae-что-нибудь-ещё-здесь-зашифрованное-166baf' для Proxy2?» Спасибо!;
необходимость настройки прокси-сервера для каждого приложения либо использование отдельных программ-соксификаторов, например, Proxifier.

VPN/SSH

Я буду говорить о VPN, подразумевая также и SSH-туннели. Так как, несмотря на некоторые различия, основной принцип у них одинаков.
Схема работы VPN показана на картинке:


В настоящее время коммерческими провайдерами предлагаются следующие протоколы VPN:
PPTP – используется наиболее широко, быстрый, легко настраивается, однако считается «наименее защищённым» по сравнению с остальными;
L2TP + IPSec. L2TP обеспечивает транспорт, а IPSec отвечает за шифрование. Данная связка имеет более сильное шифрование, чем PPTP, устойчива к уязвимостям PPTP, обеспечивает также целостность сообщений и аутентификацию сторон;
OpenVPN – безопасный, открытый, а следовательно, распространённый, позволяет обходить многие блокировки, но требует отдельного программного клиента;
SSTP – такой же безопасный, как и OpenVPN, отдельного клиента не требует, однако сильно ограничен в платформах: Vista SP1, Win7, Win8.

Практически все коммерческие VPN-провайдеры предлагаю выбор из двух протоколов: OpenVPN и PPTP. Реже предлагается протокол L2TP+IPSec. И совсем единицы предлагают протокол SSTP.
Отдельно стоит отметить сервисы, предоставляющие «DoubleVPN», когда перед тем, как выйти в Интернет, траффик проходит 2 разных VPN-сервера в разных странах, или даже «QuadVPN», когда используется 4 сервера, которые пользователь может выбрать сам и расположить в произвольном порядке.
Любопытное исследование, касающееся анонимности и надёжности коммерческих VPN-серверов, было проведено ресурсом torrentfreak.com: torrentfreak.com/vpn-services-that-take-your-anonymity-seriously-2013-edition-130302
VPN-провайдерам были заданы вопросы:
Храните ли вы журналы, позволяющие вам или третьим лицам сопоставить ip-адрес или временную отметку с вашим клиентом? Если да, то какие данные вы храните?
Под какой юрисдикцией работает ваша компания, и при каких обстоятельствах вы раскроете данные третьей стороне?
В случае, если вы получите DMCA-уведомление или его европейский аналог, что вы с ним сделаете?
С какими платежными системами Вы работаете, и как они связаны с учетными записями по
 
Утечки данных
Централизованные средства «анонимности»

Сразу отмечу главное: никакое централизованное решение высокий уровень анонимности обеспечить не может, так как необходимо доверять центральному узлу.
Мы не будем рассуждать об организационных, политических и бюрократических сложностях на пути раскрытия анонимности.
Возможно, VPN-сервер в Панаме действительно более безопасен, чем такой же сервер в Испании. А возможно — нет.
Также как и не будем говорить про цепочки узлов, так как их надежность с трудом поддаётся оценке. С одной стороны, в виду организационных сложностей, риск раскрытия ниже, а с другой — мы должны быть достаточно уверены в каждом узле.
Перейдём к конкретике.

Прокси-серверы: http и SOCKSx

Рассмотрим подробнее http-заголовки в http-прокси.
HTTP-заголовок – это строка в http-сообщении с некоторыми параметрами вида: «Имя: Значение». Заголовков существуют достаточно много, ими при взаимодействии обмениваются между собой клиенты и серверы.
Например, следующее поле: «Date: Sat, 12 Dec 2012 15:41:52 GMT» возвращает от сервера клиенту текущее время и дату.
Один из таких заголовков: X-Forwarded-For, по сути, является стандартом для получения сервером оригинального адреса клиента при доступе к серверу через HTTP-прокси. И вот в этом заголовке, если его не фильтровать, передаётся вся цепочка прокси-серверов от начала до конца, например:
X-Forwarded-For: client1, proxy1, proxy2 …
X-Forwarded-For: 169.78.138.66, 169.78.64.103...

Также к заголовкам, разглашающим деанонимизирующую информацию, относятся: HTTP_VIA, HTTP_FORWARDED и др.

HTTP-прокси-серверы, которые скрывают ip-адрес клиента, называют анонимными. Такие серверы подразделяются на виды, деление это весьма условно, но, тем не менее, существуют:
Простые анонимные прокси (anonymous). Эти серверы не скрывают факта использования http-прокси, однако они подменяют ip-адрес клиента на свой.
Элитные анонимные (high anonymous/elite). Такие серверы ещё скрывают и сам факт использования http-прокси.

SOCKS-прокси, как вы помните, никаких заголовков не передают.

Рассмотрим разницу между SOCKS 4, 4a и 5. Существуют разные версии SOCKS:
SOCKS4. Такие серверы требуют от клиента, например, веб-браузера, только ip-адрес ресурса, к которому он обращается (адресата). Следовательно, клиенту надо как-то этот ip-адрес узнать, а узнать его клиент может только прямым DNS-запросом в обход прокси. Это может привести к деанонимизации, так как интернет-провайдер может видеть DNS-запросы в открытом виде, данная уязвимость называется DNS-leaks, она описана далее, во второй части статьи.
SOCKS4a. Является расширением SOCKS4. Главное отличие состоит в том, что SOCKS4a-сервер принимает от клиента только DNS-имя адресата, а не его ip-адрес. Это бывает необходимо, когда клиент не может самостоятельно определить ip-адрес адресата по DNS-имени.
SOCKS5. Также является расширением SOCKS4. Сервер SOCKS5 поддерживает UDP, IPv6, авторизацию и пр. И хотя SOCKS5-прокси могут принимать от клиента как ip-адрес, так и DNS-имя целевого ресурса, некоторые приложения, поддерживающие SOCKS5, могут сами получать ip-адрес адресата до того, как обратиться к SOCKS5-прокси, что также может привести к утечке DNS-запросов.

SSH. Сравнение SSH и VPN

SSH туннель — это туннель, создаваемый посредством SSH-соединения и используемый для шифрования передаваемых данных. Как гласит одноимённая статья в Википедии: «SSH (англ. Secure SHell — «безопасная оболочка») — сетевой протокол прикладного уровня, позволяющий производить удалённое управление операционной системой и туннелирование TCP-соединений (например, для передачи файлов)».
При использовании SSH-туннеля открытый траффик какого-либо протокола шифруется на одном конце SSH-соединения, клиенте, и расшифровывается на другом, SSH-сервере.
Схема работы SSH-туннеля показана на рисунке:


Протокол SSH поддерживает несколько вариантов работы:
В первом варианте туннелируемое приложение должно иметь настройки HTTP/SOCKS-прокси для направления траффика через локальный прокси-сервер в SS
 
Firefox и анонимность
Cookies

Cookies — это текстовые файлы с какими-либо значениями, хранимые приложением (часто — браузером) для разных задач, например, аутентификации.
Если совсем отключить приём cookies, то на некоторых сайтах могут возникнуть проблемы с авторизацией, но Firefox позволяет принимать cookies и очищать их после своего закрытия. Пункт «Принимать куки со сторонних сайтов» тоже желательно отключить, однако, например, залогинившись на Хабре с отключенным 3rd party куки, мы не получим доступа на habrastorage.org, поэтому я предпочитаю всё же принимать куки с посещенных сайтов.

Более того, Firefox позволяет вести белый и чёрный список сайтов с куки.

Если мы хотим приватности, то при закрытии Firefox, нужно всё очищать. Да, не совсем удобно, но и следов не остаётся.

Обратите внимание на галочку «Flash Cookies», это не дефолтная галочка Firefox, о ней мы поговорим чуть позже, когда затронем LSO или Flash cookies.
Здесь же, в настройках, особое внимание стоит уделить очистке кеша браузера. В статье: "Cookie без куков", обосновывается необходимость очистки кеша.
На странице настроек Firefox: about:config, есть параметр: browser.cache.disk.enable, отвечающий за использование дискового кэша. Значение «false», означает, что кеш использоваться вообще не будет. По остальным настройкам browser.cache.disk не заморачивайтесь, после отключения кеша они уже не важны.
А удобная и бесплатная программа, CCleaner, поможет вам вычистить все уже накопленные следы интернет-активности, хранящиеся даже в самых дальних уголках жесткого диска.

Java, Flash, Adobe Reader...

Все эти плагины являются отдельными приложениями, которые запускаются от имени пользователя. Они могут обходить настройки прокси, хранить свои отдельные долгоживущие cookies (Flash — Local Shared Objects) и пр.
Все плагины в идеале должны быть отключены или удалены. Без Java и Adobe Reader в браузере вполне можно прожить, но бывают ситуации, когда Flash всё же приходится включать, иначе сайт попросту не заработает. В таком случае нужно обеспечить регулярное обновление Flash и запрет хранения Local Shared Objects (LSO) или Flash cookies.
Также рекомендуется включать Flash только по запросу. Так вы разрешите запускать именно тот элемент Flash, который действительно сами хотите. Сделать это можно в настройках плагинов (дополнений).

Для запрета хранения LSO специально разработано дополнение к Firefox, Better privacy. Я предпочитаю, чтобы галочка об очистке LSO была добавлена в меню Firefox «Стереть историю», как на предыдущем рисунке.


Fingerprint (отпечаток) браузера

Браузер предоставляет серверу десятки категорий данных, в том числе и так называемый user agent. Всё это может сформировать достаточно уникальный «цифровой отпечаток браузера», по которому его можно найти среди многих других уже в анонимном сеансе.
Существует немало дополнений по подмене юзерагента браузера, я привык пользоваться User Agent Overrider. Дополнение стабильно, удобно, постоянно обновляется, есть в официальных репозиториях Firefox.


Скрипты Javascript

Скрипты Javascript, исполняемые на стороне клиента, могут собирать для сервера множество категорий идентифицирующий данных. Более того, если посещаемый сайт подвержен XSS, то включенные на нём скрипты Javascript помогут злоумышленнику провести успешную атаку со всеми вытекающими последствиями.
Для того, чтобы запретить данные скрипты лучше всего подходит дополнение NoScript.

Помимо Javascript дополнение может блокировать еще множество различных элементов: Java, Flash и пр. Пользователь может временно разрешить выполнение всего активного содержимого на странице или сделать это на постоянной основе.


В этом же разделе я опишу еще один аддон, который идёт бок-о-бок с NoScript: RequestPolicy.
Аддон RequestPolicy нужен для контроля межсайтовых запросов и защиты от CSRF. Межсайтовые запросы осуществляются, когда вы зашли на один сайт, он запросил уже у другого сайта нужный ресурс, например, картинку, и показал её вам. Подобные механизмы наиболее часто исполь
 
aboutconfig
и отключаем

Опция предназначена, для передачи инфы о нашем местонахождении гуглу,
geo.enabled false

Опция, для предотвращения попадания на вредоносные сайты
safebrowsing false and deleted all url’s

Отключаем передачу информации о посещаемых веб-сайтах Гуглу
browser.safebrowsing.enabled = false
browser.safebrowsing.malware.enabled = false
browser.safebrowsing.downloads.enabled = false # = 34

Отключаем передачу текста, набираемого в окне поиска
browser.search.suggest.enabled = false

Отключаем передачу браузером информации о времени начала и окончания загрузки страницы
dom.enable_performance = false
t
Запрещаем предварительное разрешение имён DNS для всех ссылок на веб-странице
network.dns.disablePrefetch = true

Отправлять DNS-запросы через прокси при использовании прокси. Иначе они пойдут напрямую и могут привести к раскрытию реального IP-адреса
network.proxy.socks_remote_dns = true

Запрещаем сайтам обращение к локальной машине
network.proxy.no_proxies_on = (пустое значение)

Запрещаемпередачу сайтам подробной информации о графических возможностях системы
webgl.disable-extensions = true
webgl.min_capability_mode = true

Полное отключения кэширования
browser.cache.disk.capacity = 0
browser.cache.disk.enable = false
browser.cache.disk.smart_size.enabled = false
browser.cache.disk_cache_ssl = false
browser.cache.memory.enable = false
browser.cache.offline.capacity = 0
browser.cache.offline.enable = false
dom.indexedDB.enabled = false
media.cache_size = 0
network.http.use-cache = false

Отключаем возможность сайтов хранить некоторые настройки
dom.storage.enabled = false

Отключаем автоматическое обновление браузера
app.update.auto = false
app.update.enabled = false
app.update.mode = 0

Отключаем автоматическое обновление поисковых плагинов
browser.search.update = false

Не отправлять данные о производительности в Mozilla
datareporting.healthreport.service.enabled = false
datareporting.healthreport.uploadEnabled = false
datareporting.policy.dataSubmissionEnabled = false

Так же открываем aboutpreferences

идем в privacy и ставим галочку Tell sites that I do not want to be tracked X

далее идем в security и ставим галочки в general

Tell sites that I do not want to be tracked X
Tell sites that I do not want to be tracked X
Tell sites that I do not want to be tracked X

И устанавливаем дополнительные плагины

addblock+wot+noscript+ghostery+HTTP UserAgent cleaner на этом вс
 
Назад
Сверху