Методы анонимности в сети. Часть 3. Firefox

Dragokas

Angry & Scary Developer
Команда форума
Супер-Модератор
Разработчик
Клуб переводчиков
Сообщения
7,791
Реакции
6,585
Автор: Pandos (habrahabr)

46a83ae2e16b97be4862892cc70c6d17.jpg
Всем привет!

Немногие озадачиваются подробной настройкой браузера, хотя браузер – это самая популярная программа для работы в интернете. На примере Firefox я покажу, как можно сделать свой браузер максимально безопасным и чуть более «анонимным» по сравнению с его настройкой по умолчанию, при этом сохранив даже некоторую функциональность! :) Opera или Chrome, имеют схожие настройки, но, на мой взгляд, самый гибкий с точки зрения безопасности – всё же Firefox.
Цель статьи – не обеспечить высокий уровень анонимности, но эффективно отсеять множество идентифицирующих, лишних и даже потенциально опасных данных, которые, так или иначе, передаются или принимаются браузером.
Все части здесь:
Часть 1: Методы анонимности в сети. Просто о сложном.
Часть 2: Методы анонимности в сети. Утечки данных.
Часть 3: Методы анонимности в сети. Firefox.
Часть 4: Методы анонимности в сети. Tor&VPN. Whonix.

Cookies

Cookies — это текстовые файлы с какими-либо значениями, хранимые приложением (часто — браузером) для разных задач, например, аутентификации.
Если совсем отключить приём cookies, то на некоторых сайтах могут возникнуть проблемы с авторизацией, но Firefox позволяет принимать cookies и очищать их после своего закрытия. Пункт «Принимать куки со сторонних сайтов» тоже желательно отключить, однако, например, залогинившись на Хабре с отключенным 3rd party куки, мы не получим доступа на habrastorage.org, поэтому я предпочитаю всё же принимать куки с посещенных сайтов.
9fa4afda0cff4fc5467802c83d8ab1a4.png
Более того, Firefox позволяет вести белый и чёрный список сайтов с куки.
c99ea6592deff8faa3ae97d352831980.png
Если мы хотим приватности, то при закрытии Firefox, нужно всё очищать. Да, не совсем удобно, но и следов не остаётся.
1839a30f757e06563be01ca3dc7e2ddc.png
Обратите внимание на галочку «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, который действительно сами хотите. Сделать это можно в настройках плагинов (дополнений).
453474a9d811c0a5b31c70c5eb02e14e.png
Для запрета хранения LSO специально разработано дополнение к Firefox, Better privacy. Я предпочитаю, чтобы галочка об очистке LSO была добавлена в меню Firefox «Стереть историю», как на предыдущем рисунке.
0a1b781e92cef82dd1ed06c7d03ef417.png

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

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

Скрипты Javascript

Скрипты Javascript, исполняемые на стороне клиента, могут собирать для сервера множество категорий идентифицирующий данных. Более того, если посещаемый сайт подвержен XSS, то включенные на нём скрипты Javascript помогут злоумышленнику провести успешную атаку со всеми вытекающими последствиями.
Для того, чтобы запретить данные скрипты лучше всего подходит дополнение NoScript.
70b4029a3e0f4ffeeadf32557e8e6ecd.png
Помимо Javascript дополнение может блокировать еще множество различных элементов: Java, Flash и пр. Пользователь может временно разрешить выполнение всего активного содержимого на странице или сделать это на постоянной основе.
1da89694796dae4ed53884506aeecac3.png

В этом же разделе я опишу еще один аддон, который идёт бок-о-бок с NoScript: RequestPolicy.
Аддон RequestPolicy нужен для контроля межсайтовых запросов и защиты от CSRF. Межсайтовые запросы осуществляются, когда вы зашли на один сайт, он запросил уже у другого сайта нужный ресурс, например, картинку, и показал её вам. Подобные механизмы наиболее часто используются в рекламных целях. Отмечу, что таким образом вредоносные сайты могут делать совсем плохие вещи, например, при определённых условиях выполнять несанкционированные действия на третьем сайте с вашими сохранившимися куками. Представьте, чем это может грозить.
Автор RequestPolicy рекомендует использовать его в связке с NoScript, так как каждое дополнение заточено под свои цели, а вместе они позволяют добиться гибкой и всесторонней защиты. На картинке RequestPolicy блокирует картинку с habrastorage.org.
a1a0af92d7e78c88ccab8a3ce36507c1.png
Стоит отметить, что некоторым сайтам совсем не нравится блокировка Javascript и межсайтовых запросов. Должно пройти какое-то время в режиме «обучения», чтобы сформировался доверенный список регулярно посещаемых ресурсов. Что поделать, безопасность и удобство всегда стояли на разных чашах весов.

Web Bugs

Web Bugs — это невидимые детали веб-страниц, используемые для мониторинга посещений сайта, они способны дополнительно отсылать серверу разные данные о клиенте.
Для блокирования web bugs существуют два основных дополнения: Ghostery и DoNotTrackMe.
Принцип у них схож, когда я их сравнивал, то остановился по своим субъективным ощущениями на Ghostery, его и опишу. Важно отметить, что при дефолтной настройке Ghostery не блокирует все баги и треккеры, это надо сделать вручную, в его настройках по локальному адресу: resource://firefox-at-ghostery-dot-com/ghostery/data/options.html.
ec800b8ce41718620355e6fbc8535e41.png
При заходе на сайт, где есть подобные элементы, Ghostery их заблокирует и выдаст следующее оповещение.
f7f775d7e304da97a2d63d90368eff05.png
Со временем вы заметите, что Ghostery и RequestPolicy пересекаются в блокировании некоторых элементов, например, Google Analytics, Yandex.Metrics и пр.

HTTP-referer

HTTP-referer — это http-заголовок, с помощью которого веб-сайт может определить, откуда к нему идёт траффик. Если вы кликнули по ссылке, которая передает http-referer, то сайт, на который данная ссылка ведёт, сможет узнать, с какого именно сайта вы на него перешли.
Firefox имеет интересную настройку в about:config: network.http.sendRefererHeader. Данный пункт определяет, в каких случаях будет отсылаться HTTP-referer. Есть три варианта:
  • 0 – никогда не отсылать HTTP-referer
  • 1 – отсылать только по кликнутым ссылкам
  • 2 – отсылать для ссылок и картинок (по умолчанию)

Проведем эксперимент. Есть сайт: www.whatismyreferer.com, цель которого – показывать наш HTTP-referer.
Используем установленное по умолчанию значение network.http.sendRefererHeader = 2.
Кликаем по ссылке: www.whatismyreferer.com, видим наш реферер, выделенный красным цветом (в вашем случае он будет немного отличаться):
0b96dbfa810c4952931bfb0032cf34c5.png
Сделаем то же самое: www.whatismyreferer.com, но с network.http.sendRefererHeader = 0. Опа!
bfa1f508cc3649f3416de7e034c65bcf.png
Ставьте network.http.sendRefererHeader = 0, и реферер передаваться не будет.
В настройках есть еще один схожий параметр, network.http.sendSecureXSiteReferrer, он отвечает за передачу реферера между двумя https-сайтами. Однако не заморачивайтесь, он не работает после отключения предыдущей настройки.

Кстати все слышали про поисковик DuckDuckGo? В том, что он рефереры не отправляет, я был уверен. Но кликнув левой кнопкой мыши по первой ссылке (после рекламы) в его поисковой выдаче по запросу: duckduckgo.com/?q=www.whatismyreferer.com с установленным network.http.sendRefererHeader = 2, я увидел следующее:
ea21835ba2a4818a7536e9bee4a7b7e2.png
Если кликнуть средней кнопкой мыши (открыть новую вкладку), то всё ок, реферер действительно не показывается.
Будьте внимательны: рефереры используются в работе многих интернет-ресурсов, их отключение может привести к самым неожиданным последствиям, меня, например, после отключения реферера не пускало логиниться в TM ID.

Прочее

Совершенно лишним будет отправлять какую-либо служебную информацию в Mozilla.
10a9392e449fec2b69bb085c945ad618.png
Для пущей анонимности я бы советовал вообще не хранить пароли, хотя Firefox имеет возможность использования мастер-пароля, с помощью которого шифруются все остальные пароли, так что вытащить их в открытом виде нельзя.
9000335c488f99a5fba49302084a5c67.png

HTTPS Everywhere

Данный аддон нужен для того, чтобы принудительно использовать только https-соединение для сайтов, которые это поддерживают.
67b2ca6d5e13fc351946a8dcb8937b9a.png

Adblock Plus

Не столько безопасно, сколько просто полезно. Adblock Plus нужен для блокировки всей возможной рекламы при этом он имеет регулярно обновляемый список фильтров. Я отмечу, что в настройках есть галочка: «Разрешить некоторую ненавязчивую рекламу», которую при желании можно убрать.
9529bff11be2ba3d08c573aaeedbd8da.png
Последний совет для тех, кто активно пользуется SOCKS при веб-серфинге. Настройка network.proxy.socks_remote_dns определяет, где будут выполняться DNS-запросы при использовании SOCKS5. Значение «true» устанавливает, что они будут выполняться через SOCKS-прокси, а не на самом клиенте. Так мы защитимся от DNS-leaks.

Подробнее о каждой настройке из about:config Firefox можно почитать тут. А по этой ссылке часть их расписана по-русски.

Уффф, вроде всё! Сам использую описанную конфигурацию Firefox. Сначала нужно было немного привыкнуть, но я понимаю, зачем всё это нужно.
Спасибо! Готов ответить на все вопросы.
 
Последнее редактирование:
Назад
Сверху Снизу