Настройки Mozilla Firefox для параноиков и тест Mullvad Browser

D2

Администратор
Регистрация
19 Фев 2025
Сообщения
4,380
Реакции
0
Mozilla Firefox - настоящий долгожитель, этот браузер, разрабатываемый условно-независимой некоммерческой организацией (донатит им в основном Google) остается предпоследней надеждой на приватность. Во всяком случае, так нам говорят его разработчики. На самом же деле он нафарширован всякими механизмами слежки за пользователем, НО: их можно выключить. И я таки расскажу вам как это сделать.

Эта статья - гибрид двух тем. С одной стороны, это полноценный гайд по тому как привлечь Firefox на сторону анонимуса, изменив настройки. С другой, это еще и анализ того, какие из этих настроек “из коробки” правильно проставлены в новом браузере, претендующем на анонимность и приватность без допиливания.

Браузер Mullvad - новинка от разработчиков Mullvad VPN и команды Tor Project. Ничего себе кроссовер, да? Вот и я так подумал, и решил протестировать браузер. У меня на канале сегодня будет (или уже) опубликован видеообзор нового претендента на роль "приватного и защищенного браузера". Здесь же я пройдусь по настройкам, которые рекомендуется внести в Firefox для оптимальной защиты от фингерпринтинга, чтобы посмотреть, какие из них уже выставлены нужным образов в Mullvad Browser.

В качестве "эталона" по настройкам я буду отталкиваться от гайда https://brainfucksec.github.io/firefox-hardening-guide#firefox-preferences (англ), и для моих не владеющих языком и не понимающих некоторых настроек читателей я дам комментарии к некоторым пунктам. Да, это будет чертов лонгрид.

Поиск

Первым делом рекомендуется начать использовать поисковый движок, который не собирает огромную кучу данных про пользователя. Рекомендуется использовать DuckDuckGo

В MullvadBrowser по умолчанию он и стоит.
В любом браузере на базе Firefox эта опция переключается так:
  • вводим в строку браузера about:preferences#search
  • выбираем DuckDuckGo

Тонкая настройка -about:config

То, какие настройки мы можем лицезреть и всячески менять, выбрав в меню браузера Settings или введя about:preferences в строку браузера - это всего лишь верхушка айсберга. Настоящая, тонкая настройка осуществляется в специальном интерфейсе, который открывается введением в строку браузера about:config

Опции в этом разделе это не кнопочки и переключалочки, а значения option = value, и когда вы заходите в этот раздел браузер вас предупреждает, что тут серьезные дяди и тети работают, если ты не уверен в своей серьезности, то руки в карманы и иди смотри лучше мультики. Проще говоря, вам показывают ворнинг что тут можно поломать браузер кривой настройкой.

Дальше, чтобы вы не запутались, будет идти настройка и значение, которое ей нужно задать. Если рядом с настройкой стоит символ 🟢 значит в Mullvad Browser настройка совпадает с оптимальной и менять ничего не надо. Если стоит символ 🔴 значит нужно поменять эту настройку.

Настройки запуска

Настраиваем домашнюю страницу и поведение при запуске


🔴 browser.aboutConfig.showWarning = false
Эта настройка всего лишь уберет предупрежедние о том, что заходя в конфиг надо быть бдительным. Не влияет на приватность и анонимность.
Нажмите, чтобы раскрыть...

🟢 browser.startup.page = 1
Этот параметр определяет, что будет открыто после запуска браузера. Значение 1 означает, что будет открыта пустая вкладка.
Нажмите, чтобы раскрыть...

🟢 browser.startup.homepage = "about:home"

Значение в Mullvad: about:mullvad-browser
Определяет домашнюю страницу, то есть открываемую браузером по умолчанию или по нажатию на "домашняя страница". В случае с mullvad-browser выставленный в нем параметр это и есть home, если ввести about:mullvad-browser или about:home поведение абсолютно одинаковое.
Нажмите, чтобы раскрыть...

Результаты: 2 из 3

Запрещаем Activity Stream​

Activity Stream - это показ на пустой вкладке страниц, которые вы недавно посещали или куда заходили часто. Настройки ниже отключают все, связанное с этой удобной для отслеживания пользователя функциональностью браузера.

🟢 browser.newtabpage.enabled = false
Если значение выставлено как true, браузер будет при открытии новой вкладки показывать вам историю и часто посещаемые страницы
Нажмите, чтобы раскрыть...

🔴 browser.newtab.preload = false
Если этот параметр указан как true, браузер начнет загружать домашнюю страницу в фоновом режиме при запуске браузера, до того как вы вообще хоть что-то нажмете или введете адрес. Переводя значение в false мы снижаем нагрузку на оперативную память.
Нажмите, чтобы раскрыть...

🟢 browser.newtabpage.activity-stream.feeds.telemetry = false
Если этот параметр выставлен как true, браузер будет отправлять разработчикам сведения о том, как у вас используется функция вывода истории и часто посещаемых страниц
Нажмите, чтобы раскрыть...

🟢 browser.newtabpage.activity-stream.telemetry = false
Если этот параметр выставлен как true, браузер будет отправлять разработчикам сведения о том, как у вас используется функция вывода истории и часто посещаемых страниц
Нажмите, чтобы раскрыть...

🔴 browser.newtabpage.activity-stream.feeds.snippets = false
Если этот параметр выставлен как true, то при включенном фиде посещенных сайтов браузер будет загружать и отображать сниппет страницы (краткую текстовую выжимку и картинку), то есть будет отправлять запросы туда, куда мы его не просили.
Нажмите, чтобы раскрыть...

🟢 browser.newtabpage.activity-stream.feeds.section.topstories = false
В положении true этот параметр выводит на пустую вкладку контент от партнеров (рекламодателей) Firefox. Это дополнительные запросы которых мы не хотели, дополнительная нагрузка на систему и взаимодействие с трекерами на сайтах, куда мы не имели намерения заходить.
Нажмите, чтобы раскрыть...

🔴 browser.newtabpage.activity-stream.section.highlights.includePocket = false
Если выставлен как true, этот параметр позволит браузеру выводить на пустую вкладку контент из Firefox Pocket, облачного сервиса куда вы можете (но не рекомендуется) сохранять всякие находки в сети.
Нажмите, чтобы раскрыть...

🔴 browser.newtabpage.activity-stream.feeds.discoverystreamfeed = false
Этот параметр требуется создать, если он выставлен в положение true, позволяет браузеру, основываясь на ваших интересах (слежке за вашим серфингом) подсказывать вам рекомендации контента. Нам такого не надо.
Нажмите, чтобы раскрыть...

🟢 browser.newtabpage.activity-stream.showSponsored = false
Если значение true, браузер будет показывать вам "контент от спонсоров", то есть рекламу. Что мы говорим богу интернет-рекламы?
Нажмите, чтобы раскрыть...

🟢 browser.newtabpage.activity-stream.showSponsoredTopSites = false
Браузер будет показывать в рекомендациях спонсорские сайты, если значение true.
Нажмите, чтобы раскрыть...

🟢 browser.newtabpage.activity-stream.default.sites = ""
Еще одна попытка показать вам "топ сайтов", теперь уже по параметру их общей популярности. Покажет гугл, ютуб и тому подобное. **Параметр удален из Mullvad Browser.
Нажмите, чтобы раскрыть...

**Результаты: 9 из 14 пунктов настроены как надо.

Геолокация​

Наш любимый раздел, про то как браузер может отслеживать наше местоположение. И конечно же про то, что мы ему на это скажем.

🟢 geo.provider.network.url = "https://location.services.mozilla.com/v1/geolocate?key=%MOZILLA_API_KEY%"
Этот параметр определит, какой службой воспользуется браузер если мы дадим разрешение на определение геопозиции. Параметр удален из Mullvad Browser
Нажмите, чтобы раскрыть...
Ниже параметры, которые запрещают браузеру пользоваться вшитыми в ОС службами геолокации. Для разных ОС параметры разные.

🟢 geo.provider.ms-windows-location = false (Windows)
🟢 geo.provider.use_corelocation = false (macOS)
🟢 geo.provider.use_gpsd = false (Linux)
🟢 geo.provider.use_geoclue = false (Linux)

Два параметра ниже определяют возможность браузера определять ваш регион

🟢 browser.region.network.url = ""
Параметр выпилен из Mullvad Browser, а так он определяет URL по которому браузер будет обращаться к службе определения региона
Нажмите, чтобы раскрыть...
🟢 browser.region.update.enabled = false
В целом определяет, включена ли функция определения региона. Если true - значит включена.
Нажмите, чтобы раскрыть...

За настройки геолокации Mullvad Browser получает 7 из 7.

Язык и локаль​

🟢 intl.accept_languages = "en-US, en"
Указываем, что по умолчанию мы хотим видеть сайты на английском языке. Английский это "универсальный язык", он есть во всех ОС. А вот предпочтение смотреть контент на русском, например, четко указывает что вы вероятнее всего носитель языка, и тем самым "палите" свою национальность.
Нажмите, чтобы раскрыть...

🔴 javascript.use_us_english_locale = true
Параметр требуется создать и указать тип значения Boolean, и установить как True. Этот параметр задает значение по умолчанию для javascript-кода, относительно того как требуется форматировать строки применительно к числам и датам. Если параметр задан как true, браузер будет использовать форматирование, принятое в US English: запятые как разделитель в дробном числе, даты в американском формате. Если он не создан или указан как false, то будет использован тип форматирования из вашей ОС.
Нажмите, чтобы раскрыть...

Результат Mullvad Browser: 1 из 2

Автоматические обновления и рекомендации​

Здесь мы ступаем на тонкий лёд. Если это ваш "боевой" браузер для OSINT и прочих шалостей, обновления рекомендуется отключить, и устанавливать их строго вручную, предварительно изучив что нового напридумывали разработчики. Это нужно сделать для того, чтобы не оказалось, что в обновленной версии браузера появился новый замечательный параметр, который позволяет нейросети, масонам или рептилоидам смотреть за вашими сетевыми похождениями, а вы его не отключили просто потому что ни вы, ни кто-то еще не мог предугадать появление такого параметра.

Также, при установке обновы у вас могут поотлетать всякие браузерные дополнения, в общем при автообновлениях вы теряете контроль над браузером. Если уж ты решил превратить дедову "волгу" в свой личный бэтмобиль, не спрашивай у производителя про гарантийное обслуживание. Ты теперь сам за него отвечаешь.

🔴 app.update.background.scheduling.enabled = false
Параметр требуется создать
Нажмите, чтобы раскрыть...

🔴 app.update.auto = false
В целом включает (true) или выключает (false) автообновления
Нажмите, чтобы раскрыть...

Параметры ниже используют Google Analytics, а также историю посещенных сайтов и список уже установленных у нас в браузере дополнений чтобы посоветовать нам какие дополнения поставить.

🟢 extensions.getAddons.showPane = false
🟢 extensions.htmlaboutaddons.recommendations.enabled = false
🟢 browser.discovery.enabled = false

Результат: 3 из 5

Телеметрия​

Ну а это уже прям слежка-слежка, телеметрия это всякие разные показатели того, как же вы пользуетесь браузером. Служба телеметрии регулярно формирует отчет и отправляет его разработчикам, если мы это не выключим.

🟢 datareporting.policy.dataSubmissionEnabled = false
🟢 datareporting.healthreport.uploadEnabled = false
🟢 toolkit.telemetry.enabled = false
🟢 toolkit.telemetry.unified = false
🟢 toolkit.telemetry.server = "data:,"
🟢 toolkit.telemetry.archive.enabled = false
🔴 toolkit.telemetry.newProfilePing.enabled = false
Ну вот, так хорошо все начиналось. Но разработчики Mullvad Browser не смогли себе отказать в самой базовой телеметрии. Этот параметр отсылает им "пинг" каждый раз, когда вы создаете новый профиль браузера.
Нажмите, чтобы раскрыть...

🔴 toolkit.telemetry.shutdownPingSender.enabled = false
Этот параметр, будучи включенным, позволит браузеру отправлять на сервера разработчиков сведения о закрытии браузера, о причине закрытия (пользователь закрыл или браузер сам упал), а также дату и время события.
Нажмите, чтобы раскрыть...
🟢 toolkit.telemetry.updatePing.enabled = false
🟢 toolkit.telemetry.bhrPing.enabled = false
🔴toolkit.telemetry.firstShutdownPing.enabled = false
Тот же пинг при выключении, но отправляемый только один раз, при первом закрытии браузера. Видимо по мнению разрабов один раз не ....
Нажмите, чтобы раскрыть...
🟢 toolkit.telemetry.coverage.opt-out = true
🟢 toolkit.coverage.opt-out = true
🔴toolkit.coverage.endpoint.base = ""
Параметр нужно создать и оставить значение пустым. Вообще же параметр содержит URL по которому браузер отправлял бы некоторые отчеты.
Нажмите, чтобы раскрыть...
🟢 browser.ping-centre.telemetry = false
🟢beacon.enabled = false

Результат по телеметрии: 10 из 16

Исследования​

Это тоже вид слежки, но немного другой. Телеметрия - это данные, которые (предположительно) собираются, чтобы оценивать работоспособность браузера и отлавливать ошибки. А вот исследования (studies) изучают поведение пользователей.

🟢 app.shield.optoutstudies.enabled = false
Если этот параметр включен (true), браузер будет собирать о вас данные, если вы отдельно не запретите это.
Нажмите, чтобы раскрыть...
🟢 app.normandy.enabled = false
🟢 app.normandy.api_url = ""
Normandy это как поправки к конституции: снаружи красивый фантик, а внутри сюрприз. Эта служба вроде как делает ценную работу - позволяет разрабам особо важные обновления, закрывающие какие-то уязвимости браузера, устанавливать без необходимости обновлять браузер целиком. Однако, еще эта служба используется и для того, чтобы собирать данные в рамках тех самых исследований вашего поведения.
Нажмите, чтобы раскрыть...

Результат: 3 из 3

Сообщения о падении браузера​


В crash report-ах все так же на сервера разработчиков браузера может утекать инфа о нашем устройстве, просто повод для отправки другой.
🔴 breakpad.reportURL = ""
🟢 browser.tabs.crashReporting.sendReport = false

В целом хорошо что служба отключена, но URL не удалили. 1 из 2

Captive portal detection - страница авторизации WiFi​


Когда вы подключаетесь к какой-то WiFi точке впервые, браузер по умолчанию делает проверку на наличие страницы авторизации. На тот случай, если нужно осуществить вход через СМС или как-то еще. Браузер делает это пытаясь загрузить файл http://detectportal.firefox.com/success.txt. Если файл удалось загрузить - значит интернет есть, а значит искать и показывать страницу авторизации не нужно. Но такое поведение означает, что когда вы подключитесь к WiFi, браузер совершенно вас об этом не спрашивая сделает HTTP-запрос к серверу разработчиков.

🔴 captivedetect.canonicalURL = ""
🟢 network.captive-portal-service.enabled = false
Как видите, такой функционал в целом в Mullvad Browser отключен, но лучше в целом устранить его, удалив из браузера URL для таких запросов.
Нажмите, чтобы раскрыть...

В целом хорошо что служба отключена, но URL не удалили. 1 из 2
Проверка сети средствами ОС

Если нижеуказанный пункт настроек включен (true), браузер будет проверять статус и параметри сетевого соединения, запрашивая его у ОС. А ОС на свое усмотрение будет использовать те механизмы, которые в ней имеются.

🟢network.connectivity-service.enabled = false

Безопасный просмотр​

Служба безопасного просмотра использует Google Safe Browsing - набор служб понятно от кого. Ее задача - защищать пользователя от вредоносов и фишинговых сайтов. Если сайт помечен как распространяющий вредоносное ПО или как фишинговый, браузер откажется его загружать. Для рядового пользователя это действительно защита. Для нас же - еще один слой слежки и цензуры, поэтому мы это отключаем. Делайте это осознавая риски, желательно в защищенной ОС.

🟢 browser.safebrowsing.malware.enabled = false
🟢 browser.safebrowsing.phishing.enabled = false
🟢 browser.safebrowsing.blockedURIs.enabled = false
🟢 browser.safebrowsing.provider.google4.gethashURL = ""
🟢 browser.safebrowsing.provider.google4.updateURL = ""
🟢 browser.safebrowsing.provider.google.gethashURL = ""
🟢 browser.safebrowsing.provider.google.updateURL = ""
🔴 browser.safebrowsing.provider.google4.dataSharingURL = ""
🟢 browser.safebrowsing.downloads.enabled = false
🟢 browser.safebrowsing.downloads.remote.enabled = false
🟢 browser.safebrowsing.downloads.remote.url = ""
🔴 browser.safebrowsing.downloads.remote.block_potentially_unwanted = false
🔴 browser.safebrowsing.downloads.remote.block_uncommon = false
🔴 browser.safebrowsing.allowOverride = false

Результат: 10 из 14
Сеть, DNS, прокси и IPv6

Готовьтесь, в этом разделе вас ждет реальное дерьмо - целый рассадник разных компонентов браузера, которые анализируют ваше поведение и создают кучу "левых" сетевых запросов.

🟢 network.prefetch-next = false
Если настройка включена (true), то браузер будет заранее запрашивать и загружать страницы, ссылки на которые есть на той страницы, которую вы просматриваете. Это сделано для ускорения, чтобы когда вы ходите по сайту было ощущение "мгновенной загрузки".
Нажмите, чтобы раскрыть...
🟢 network.dns.disablePrefetch = true
Если настройка выключена (false), то в дополнение к предзагрузке самих веб-страниц из пункта выше, браузер будет также предзагружать инфу из DNS по доменам, на которые ссылается страница.
Нажмите, чтобы раскрыть...
🟢 network.predictor.enabled = false
Этот пункт управляет тем, включен ли "предиктор", или предсказатель браузера. Эта штуковина пытается предсказать, какие ссылки вы скорее всего нажмете на загруженном сайте, и заранее подгружает документы по этим ссылкам в кэш браузера. И делает браузер это (если функция включена) анализируя: историю вашего браузера, закладки, частоту посещения тех или иных сайтов, clickstream - паттерны того как вы кликаете мышкой, а также сетевую информацию.
Нажмите, чтобы раскрыть...
🟢 network.http.speculative-parallel-limit = 0
В этом пункте устанавливается лимит на то, сколько таких "предсказанных" страниц браузеру позволено предзагрузить в кэш.
Нажмите, чтобы раскрыть...
🟢 browser.places.speculativeConnect.enabled = false
Этот пункт настроек, если включен, позволяет браузеру предзагружать сайты из ваших закладок (bookmarks а не то что вы подумали).
Нажмите, чтобы раскрыть...
🔴 network.dns.disableIPv6 = true
IPv6 на текущем этапе в целом внедрен слабо, но он может создавать серезные проблемы анонимности. Все дело в том, что в IPv6 такое большое пространство адресов, что использовать NAT который красиво маскирует IP адрес вашего устройства, подменяя его публичным адресом провайдера нет необходимости. Более того, у IPv6 другая структура сетевого пакета, и привычные нам VPN-решения требуют донастройки для того, чтобы они еще и IPv6 трафик туннелировали. В итоге это может привести к утечке вашего реального IPv6 адреса, который четко укажет на ваше устройство. Так что если к угрозе "я тебя по IP вычислю" добавить "v6", звучит куда более реалистично. Во избежание таких проблем лучше в целом запретить браузеру работать с IPv6.
Нажмите, чтобы раскрыть...
🟢 network.gio.supported-protocols = ""
Настройка актуальная для пользователей Linux, GIO = GNOME Input/Output и управляет разными протоколами, которые, будучи перечисленными в настройке, разрешены к использованию браузером (помимо его базового функционала).
Нажмите, чтобы раскрыть...
🟢 network.file.disable_unc_paths = true
Эта настройка, будучи отключенной (false), позволяет использовать пути UNC (Universal Naming Convention) вида \\servername\sharename\path\to\file для доступа к файлам по сети. Проблема в том, что UNC частенько используется как вектор загрузки вредоносного ПО, поэтому если вы не уверены, что оно вам надо - лучше вырубить.
Нажмите, чтобы раскрыть...
🔴 permissions.manager.defaultsUrl = ""
В этой настройке содержится путь к файлу с разрешениями на предоставление сайту тех или иных функций (доступ к геопозиции, к камере, микрофону и т.п.). В этом файле браузер хранит значения по умолчанию, а также те что вы проставили, если дали сайту доступ к чему-то. Но т.к. мы настраиваем браузер на максимальную защиту от слежки и деанонимизации, мы изначально не планируем никому никаких разрешений давать.
Нажмите, чтобы раскрыть...
🔴 network.IDN_show_punycode = true
Эта настройка, будучи включенной, будет отображать не-латинские домены в формате punycode. Это могут быть домены в зоне .рф или любые другие, где используются non-latin символы. Если мы включаем ее, сайт résumé.com будет отображен как xn--rsum-bpad.com. Зачем? Чтобы снизить риски фишинга и обфускации, с этими хитрыми юникод-символами, наподобие é вообще связано много проблем в безопасности.
Нажмите, чтобы раскрыть...

Результат: 7 из 10, но отмечу что самые пакостные компоненты слежки выключены по умолчанию

Настройки поиска​

Из-за того, что адресная строка браузера интегрирована с поиском, браузер по умолчанию всячески пытается предсказать, что же мы от него хотим, когда начинаем что-то туда вводить. Вводимые нами символы отправляются в сеть еще до того как мы нажмем Enter, чтобы показать нам всякие поисковые подсказки, что создает угрозу анонимности и приватности.

🟢 browser.search.suggest.enabled = false
Отключаем поисковые подсказки в поиске
Нажмите, чтобы раскрыть...
🟢 browser.urlbar.suggest.searches = false
Отключаем поисковые подсказки в строке адреса
Нажмите, чтобы раскрыть...
🟢 browser.fixup.alternate.enabled = false
Отключаем попытки угадать и автоматически закончить за нас ввод домена который мы вводим
Нажмите, чтобы раскрыть...
🔴 browser.urlbar.trimURLs = false
Отключаем "обрезку" URL, заставляя браузер показать весь путь полностью
Нажмите, чтобы раскрыть...
🟢 browser.urlbar.speculativeConnect.enabled = false
Отключаем предзагрузку введенного адреса. Если параметр включен, то еще до того как мы нажмем enter браузер начнет подгружать сайт в кэш
Нажмите, чтобы раскрыть...

Далее отключаем настройки автозаполнения всяких форм

🟢 browser.formfill.enable = false
🔴 extensions.formautofill.addresses.enabled = false
🔴 extensions.formautofill.available = "off"
🔴 extensions.formautofill.creditCards.available = false
🔴 extensions.formautofill.creditCards.enabled = false
🔴 extensions.formautofill.heuristics.enabled = false

Четыре настройки ниже отключают контекстуальные подсказки в строке адреса. Очередная попытка проанализировав ввод или контекст (содержание документа) предугадать, чего мы могли бы хотеть ввести в адресную строку.

🔴 browser.urlbar.quicksuggest.scenario = "history"
🟢 browser.urlbar.quicksuggest.enabled = false
🟢 browser.urlbar.suggest.quicksuggest.nonsponsored = false
🟢 browser.urlbar.suggest.quicksuggest.sponsored = false

Результат: 8 из 15

Пароли​

🟢 signon.rememberSignons = false
Запрещаем сохранять вводимые пароли
Нажмите, чтобы раскрыть...
🟢 signon.autofillForms = false
Запрещаем автозаполнение логинов и паролей
Нажмите, чтобы раскрыть...
🔴 signon.formlessCapture.enabled = false
Запрещаем перехват браузером паролей вне форм
Нажмите, чтобы раскрыть...
🟢 network.auth.subresource-http-auth-allow = 1
Выставив этот параметр в положение 1, мы запрещаем открывать диалоги входа с cross-origin документов. Проще говоря, если мы зашли на foo.com браузер не разрешит в рамках этого сайта загрузить форму входа с сайта bar.com
Нажмите, чтобы раскрыть...
Результат: 3 из 4

Кэш и память​

🟢 browser.cache.disk.enable = false
Запрещаем браузеру хранить что-то в кэше
Нажмите, чтобы раскрыть...

🟢 browser.sessionstore.privacy_level = 2
Запрещаем хранить данные любых сессий
Нажмите, чтобы раскрыть...
🟢 browser.sessionstore.resume_from_crash = false
Запрещаем восстанавливать сессии, прерванные аварийным выходом из браузера (crash)
Нажмите, чтобы раскрыть...
🟢 browser.pagethumbnails.capturing_disabled = true
Запрещаем создавать мини-скриншоты (thumbnails) посещаемых страниц
Нажмите, чтобы раскрыть...
🔴 browser.shell.shortcutFavicons = false
Запрещаем хранить в папке профиля фавиконки посещенных страниц
Нажмите, чтобы раскрыть...
🟢 browser.helperApps.deleteTempFileOnExit = true
Удаляем временные файлы, открытые сторонними приложениями (если вы загружая файл выбрали "открыть" вместо "сохранить") после закрытия этих приложений
Нажмите, чтобы раскрыть...

Результат: 5 из 6

HTTPS / SSL/TLS / OSCP / CERTS - сертификаты безопасности​

🟢 dom.security.https_only_mode = true
Запрещаем открывать ссылки без шифрования HTTPS
Нажмите, чтобы раскрыть...
🔴 dom.security.https_only_mode_send_http_background_request = false
Запрещаем отправлять HTTP-запросы для проверки поддерживает ли сервер HTTPS
Нажмите, чтобы раскрыть...
🔴 browser.xul.error_pages.expert_bad_cert = true
Выводим подробную информацию о плохих сертификатах (небезопасное соединение)
Нажмите, чтобы раскрыть...
🔴 security.tls.enable_0rtt_data = false
В TLS 1.3 ввели фичу для ускорения Интернета, которая позволяет отправить зашифрованные данные на сервер до того, как будет полноценно установлено зашифрованное соединение. Это сделано для того, чтобы уменьшить задержку от хэндшейка. Проблема в том, что в этом случае данные отправляются до того, как браузер убедится что сертификат сервера подлинный. Нам такого не надо.
Нажмите, чтобы раскрыть...
🔴 security.OCSP.require = true
Online Certificate Status Protocol (OCSP) позволяет проверить сертификат на действительность, не отозван ли он, например, из-за его компрометации злоумышленниками. Включая эту настройку мы говорим браузеру, что он обязан проводить такую проверку для всех URL и не позволять загружать документы с недействительными сертификатами
Нажмите, чтобы раскрыть...
🟢 security.pki.sha1_enforcement_level = 1
Запрещаем использовать сертификаты SHA-1
Нажмите, чтобы раскрыть...
🟢 security.cert_pinning.enforcement_level = 2
Запрещаем со стороны ОС загружать в браузер (инжектить) сертификаты для сайтов, применительно к которым используется SSL-pinning.
Нажмите, чтобы раскрыть...
🔴 security.remote_settings.crlite_filters.enabled = true
Включаем CRLite (Certificate Revocation List Lite), альтернативный механизм проверки сертификатов на валидность и действительность, в дополнение к OCSP
Нажмите, чтобы раскрыть...
🔴 security.pki.crlite_mode = 2
Позволяем браузеру блокировать запросы на основании проверки CRLite
Нажмите, чтобы раскрыть...

Результат: 3 из 9

Заголовки и реферреры​

🔴 network.http.referer.XOriginPolicy = 2
Тут мы запрещаем браузеру добавлять к cross-origin запросам (когда мы с сайта foo.com переходим на bar.com) заголовок с указанием источника перехода. Эти заголовки используются для отслеживания поведения пользователей.
Нажмите, чтобы раскрыть...
🟢 network.http.referer.XOriginTrimmingPolicy = 2
В дополнение к предыдущему пункту, мы запрещаем в принципе отправлять в X-origin заголовках подробную информацию, оставляем только протокол, домен и порт. По умолчанию браузер занес бы туда полный URL.
Нажмите, чтобы раскрыть...

Результат: 1 из 2

Аудио и видео: WebRTC, WebGL, DRM​

🔴 media.peerconnection.enabled = false
Запрещаем WebRTC - одноранговую передачу данных, которая может выдать наш реальный IP удаленному серверу или пользователю
Нажмите, чтобы раскрыть...
🔴 media.peerconnection.ice.proxy_only_if_behind_proxy = true
Запрещаем браузеру устанавливать p2p соединения WebRTC вне прокси, если мы используем прокси и разрешили WebRTC
Нажмите, чтобы раскрыть...
🔴 media.peerconnection.ice.default_address_only = true
Запрещаем браузеру для WebRTC соединений использовать все сетевые интерфейсы, кроме используемого по умолчанию. В противном случае браузер использует все доступные интерфейсы, что может привести к утечке IP-адреса даже если вы используете VPN.
Нажмите, чтобы раскрыть...
🔴 media.peerconnection.ice.no_host = true
Запрещаем браузеру использовать IP из диапазонов приватных сетей (например 192.168.x.x или 10.x.x.x) для WebRTC соединений.
Нажмите, чтобы раскрыть...
🔴 webgl.disabled = true
Запрещаем WebGL, javascript API которое используя мощности видеокарты вашего устройства рендерит 3D-графику на веб-страницах. WebGL используется для фингерпринтинга вашей системы, т.к. разные комбинации ОС, драйвера и чипа видеокарты дают разный хэш рендера одной и той же графики.
Нажмите, чтобы раскрыть...
🔴 media.autoplay.default = 5
Запрещаем любым сайтам автоматически воспроизводить любые медиафайлы (аудио и видео)
Нажмите, чтобы раскрыть...

Результат: 0 из 6

Загрузки​

🟢 browser.download.useDownloadDir = false
Делаем так, чтобы браузер всегда спрашивал нас, куда сохранить файл
Нажмите, чтобы раскрыть...
🟢 browser.download.manager.addToRecentDocs = false
Запрещаем браузеру добавлять скачанные файлы в список "недавних загрузок" в ОС
Нажмите, чтобы раскрыть...

Результат: 2 из 2

Куки​

🔴 browser.contentblocking.category = "strict"
Включаем функцию улучшенной защиты от трекеров
Нажмите, чтобы раскрыть...
🟢 privacy.partition.serviceWorkers = true
Включаем изоляцию процессов разных сайтов внутри браузера. Если опция включена, браузер будет кушать больше системных ресурсов, но зато он изолирует процессы выполнения кода разных страниц друг от друга, снижая риски cross-site атак.
Нажмите, чтобы раскрыть...
🔴 privacy.partition.always_partition_third_party_non_cookie_storage = true
🔴 privacy.partition.always_partition_third_party_non_cookie_storage.exempt_sessionstorage = true
Два параметра выше включают изолированное хранение данных разных сайтов. Это снижает риски отслеживания нас через доступ к кросс-сайтовым кукам для трекеров.
Нажмите, чтобы раскрыть...

Результат: 1 из 4

Интерфейс​

🟢 dom.disable_open_during_load = true
Запрещаем открытие всплывающих окон до полной загрузки страницы
Нажмите, чтобы раскрыть...
🔴 dom.popup_allowed_events = click dblclick mousedown pointerdown
Задаем белый список событий, которые могут вызвать открытие всплывающего окна
Нажмите, чтобы раскрыть...
🟢 extensions.pocket.enabled = false
Отключаем pocket - интерфейс для облачной синхронизации закладок и другой найденной нами и сложенной в это хранилище инфы
Нажмите, чтобы раскрыть...
🟢 extensions.Screenshots.disabled = true
Отключаем встроенное дополнение для создания скриншотов веб-страниц
Нажмите, чтобы раскрыть...
🟢 pdfjs.enableScripting = false
Запрещаем выполнять JS-код, если он находится внутри PDF-файла, который открыт в браузере
Нажмите, чтобы раскрыть...
🟢 privacy.userContext.enabled = true
Включаем возможность создавать "контейнеры" внутри браузера. Контейнер - это изолированное от других вкладок пространство, которое позволяет, например, зайти в рамках одного окна браузера в несколько аккаунтов одного и того же ресурса.
Нажмите, чтобы раскрыть...

Результаты: 5 из 6

Дополнения​

🟢 extensions.enabledScopes = 5
Включаем дополнения для всех профилей браузера
Нажмите, чтобы раскрыть...
🟢 extensions.webextensions.restrictedDomains = ""
Этот параметр позволяет задать список доменов, в контексте которых браузерные дополнения будут выключены. Если вы добавите сюда google.com то при посещении гугла браузерные дополнения будут отключены для этой вкладки.
Нажмите, чтобы раскрыть...
🟢 extensions.postDownloadThirdPartyPrompt = false
Отключаем дополнительный вопрос "А вы точно-преточно уверены что хотите установить это дополнение" при его установке.
Нажмите, чтобы раскрыть...

Результаты: 3 из 3

Параметры выключения​

Настраиваем автоматическую очистку истории, кук, кэша и т.п.
🟢 network.cookie.lifetimePolicy = 2
🔴 privacy.sanitize.sanitizeOnShutdown = true
🟢 privacy.clearOnShutdown.cache = true
🟢 privacy.clearOnShutdown.cookies = true
🟢 privacy.clearOnShutdown.downloads = true
🟢 privacy.clearOnShutdown.formdata = true
🟢 privacy.clearOnShutdown.history = true
🔴 privacy.clearOnShutdown.offlineApps = true
🟢 privacy.clearOnShutdown.sessions = true
🔴 privacy.clearOnShutdown.sitesettings = false
🔴 privacy.sanitize.timeSpan = 0

Результат: 7 из 11

Фингерпринтинг​

🟢 privacy.resistFingerprinting = true
🔴 privacy.window.maxInnerWidth = 1600
🔴 privacy.window.maxInnerHeight = 900
Два пункта выше задают лимит для всплывающих окон, которые могут быть открыты через javascript-функцию window.open(). Это сделано для того, чтобы сайт не мог открыть окно больше, чем ваш экран.
Нажмите, чтобы раскрыть...
🟢 privacy.resistFingerprinting.block_mozAddonManager = true
Настройка при включении блокирует посещаемым сайтом доступ к списку установленных в браузере дополнений
Нажмите, чтобы раскрыть...
🟢 browser.display.use_system_colors = false
Этот параметр, будучи отключенным, запрещает сайтам доступ к вашей цветовой схеме, которая используется в вашей ОС. Многие сайты подстраиваются под тему вашего рабочего интерфейса (темная или светлая). Но отдавая такой параметр удаленному серверу вы даете ему еще один кусочек пазла от вашего уникального отпечатка.
Нажмите, чтобы раскрыть...

Результат: 3 из 5

Сурс:

View hidden content is available for registered users!
 
Сверху Снизу