- Сообщения
- 76
Mozilla Firefox - настоящий долгожитель, этот браузер, разрабатываемый условно-независимой некоммерческой организацией (донатит им в основном Google) остается предпоследней надеждой на приватность. Во всяком случае, так нам говорят его разработчики. На самом же деле он нафарширован всякими механизмами слежки за пользователем, НО: их можно выключить. И я таки расскажу вам как это сделать.
Эта статья - гибрид двух тем. С одной стороны, это полноценный гайд по тому как привлечь Firefox на сторону анонимуса, изменив настройки. С другой, это еще и анализ того, какие из этих настроек “из коробки” правильно проставлены в новом браузере, претендующем на анонимность и приватность без допиливания.
Браузер Mullvad - новинка от разработчиков Mullvad VPN и команды Tor Project. Ничего себе кроссовер, да? Вот и я так подумал, и решил протестировать браузер. У меня на канале сегодня будет (или уже) опубликован видеообзор нового претендента на роль "приватного и защищенного браузера". Здесь же я пройдусь по настройкам, которые рекомендуется внести в Firefox для оптимальной защиты от фингерпринтинга, чтобы посмотреть, какие из них уже выставлены нужным образов в Mullvad Browser.
В качестве "эталона" по настройкам я буду отталкиваться от гайда https://brainfucksec.github.io/firefox-hardening-guide#firefox-preferences (англ), и для моих не владеющих языком и не понимающих некоторых настроек читателей я дам комментарии к некоторым пунктам. Да, это будет чертов лонгрид.
Эта статья - гибрид двух тем. С одной стороны, это полноценный гайд по тому как привлечь Firefox на сторону анонимуса, изменив настройки. С другой, это еще и анализ того, какие из этих настроек “из коробки” правильно проставлены в новом браузере, претендующем на анонимность и приватность без допиливания.
Браузер Mullvad - новинка от разработчиков Mullvad VPN и команды Tor Project. Ничего себе кроссовер, да? Вот и я так подумал, и решил протестировать браузер. У меня на канале сегодня будет (или уже) опубликован видеообзор нового претендента на роль "приватного и защищенного браузера". Здесь же я пройдусь по настройкам, которые рекомендуется внести в Firefox для оптимальной защиты от фингерпринтинга, чтобы посмотреть, какие из них уже выставлены нужным образов в Mullvad Browser.
В качестве "эталона" по настройкам я буду отталкиваться от гайда https://brainfucksec.github.io/firefox-hardening-guide#firefox-preferences (англ), и для моих не владеющих языком и не понимающих некоторых настроек читателей я дам комментарии к некоторым пунктам. Да, это будет чертов лонгрид.
Поиск
Первым делом рекомендуется начать использовать поисковый движок, который не собирает огромную кучу данных про пользователя. Рекомендуется использовать DuckDuckGo
В MullvadBrowser по умолчанию он и стоит.
В любом браузере на базе Firefox эта опция переключается так:
В MullvadBrowser по умолчанию он и стоит.
В любом браузере на базе Firefox эта опция переключается так:
- вводим в строку браузера about
references#search
- выбираем DuckDuckGo
Тонкая настройка -about:config
То, какие настройки мы можем лицезреть и всячески менять, выбрав в меню браузера Settings или введя about
references в строку браузера - это всего лишь верхушка айсберга. Настоящая, тонкая настройка осуществляется в специальном интерфейсе, который открывается введением в строку браузера about:config
Опции в этом разделе это не кнопочки и переключалочки, а значения option = value, и когда вы заходите в этот раздел браузер вас предупреждает, что тут серьезные дяди и тети работают, если ты не уверен в своей серьезности, то руки в карманы и иди смотри лучше мультики. Проще говоря, вам показывают ворнинг что тут можно поломать браузер кривой настройкой.
Дальше, чтобы вы не запутались, будет идти настройка и значение, которое ей нужно задать. Если рядом с настройкой стоит символ
значит в Mullvad Browser настройка совпадает с оптимальной и менять ничего не надо. Если стоит символ
значит нужно поменять эту настройку.
Опции в этом разделе это не кнопочки и переключалочки, а значения option = value, и когда вы заходите в этот раздел браузер вас предупреждает, что тут серьезные дяди и тети работают, если ты не уверен в своей серьезности, то руки в карманы и иди смотри лучше мультики. Проще говоря, вам показывают ворнинг что тут можно поломать браузер кривой настройкой.
Дальше, чтобы вы не запутались, будет идти настройка и значение, которое ей нужно задать. Если рядом с настройкой стоит символ


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



Значение в Mullvad: about:mullvad-browser
Результаты: 2 из 3
Запрещаем Activity Stream
Activity Stream - это показ на пустой вкладке страниц, которые вы недавно посещали или куда заходили часто. Настройки ниже отключают все, связанное с этой удобной для отслеживания пользователя функциональностью браузера.
browser.newtabpage.enabled = false
browser.newtab.preload = false
browser.newtabpage.activity-stream.feeds.telemetry = false
browser.newtabpage.activity-stream.telemetry = false
browser.newtabpage.activity-stream.feeds.snippets = false
browser.newtabpage.activity-stream.feeds.section.topstories = false
browser.newtabpage.activity-stream.section.highlights.includePocket = false
browser.newtabpage.activity-stream.feeds.discoverystreamfeed = false
browser.newtabpage.activity-stream.showSponsored = false
browser.newtabpage.activity-stream.showSponsoredTopSites = false
browser.newtabpage.activity-stream.default.sites = ""
**Результаты: 9 из 14 пунктов настроены как надо.











**Результаты: 9 из 14 пунктов настроены как надо.
Геолокация
Наш любимый раздел, про то как браузер может отслеживать наше местоположение. И конечно же про то, что мы ему на это скажем.
geo.provider.network.url = "https://location.services.mozilla.com/v1/geolocate?key=%MOZILLA_API_KEY%"
Ниже параметры, которые запрещают браузеру пользоваться вшитыми в ОС службами геолокации. Для разных ОС параметры разные.
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 = ""
browser.region.update.enabled = false
За настройки геолокации Mullvad Browser получает 7 из 7.

Ниже параметры, которые запрещают браузеру пользоваться вшитыми в ОС службами геолокации. Для разных ОС параметры разные.




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


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


Результат Mullvad Browser: 1 из 2
Автоматические обновления и рекомендации
Здесь мы ступаем на тонкий лёд. Если это ваш "боевой" браузер для OSINT и прочих шалостей, обновления рекомендуется отключить, и устанавливать их строго вручную, предварительно изучив что нового напридумывали разработчики. Это нужно сделать для того, чтобы не оказалось, что в обновленной версии браузера появился новый замечательный параметр, который позволяет нейросети, масонам или рептилоидам смотреть за вашими сетевыми похождениями, а вы его не отключили просто потому что ни вы, ни кто-то еще не мог предугадать появление такого параметра.
Также, при установке обновы у вас могут поотлетать всякие браузерные дополнения, в общем при автообновлениях вы теряете контроль над браузером. Если уж ты решил превратить дедову "волгу" в свой личный бэтмобиль, не спрашивай у производителя про гарантийное обслуживание. Ты теперь сам за него отвечаешь.
app.update.background.scheduling.enabled = false
app.update.auto = false
Параметры ниже используют Google Analytics, а также историю посещенных сайтов и список уже установленных у нас в браузере дополнений чтобы посоветовать нам какие дополнения поставить.
extensions.getAddons.showPane = false
extensions.htmlaboutaddons.recommendations.enabled = false
browser.discovery.enabled = false
Результат: 3 из 5
Также, при установке обновы у вас могут поотлетать всякие браузерные дополнения, в общем при автообновлениях вы теряете контроль над браузером. Если уж ты решил превратить дедову "волгу" в свой личный бэтмобиль, не спрашивай у производителя про гарантийное обслуживание. Ты теперь сам за него отвечаешь.


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



Результат: 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
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 = ""
browser.ping-centre.telemetry = false
beacon.enabled = false
Результат по телеметрии: 10 из 16
















Результат по телеметрии: 10 из 16
Исследования
Это тоже вид слежки, но немного другой. Телеметрия - это данные, которые (предположительно) собираются, чтобы оценивать работоспособность браузера и отлавливать ошибки. А вот исследования (studies) изучают поведение пользователей.
app.shield.optoutstudies.enabled = false
app.normandy.enabled = false
app.normandy.api_url = ""
Результат: 3 из 3



Результат: 3 из 3
Сообщения о падении браузера
В crash report-ах все так же на сервера разработчиков браузера может утекать инфа о нашем устройстве, просто повод для отправки другой.
breakpad.reportURL = ""
browser.tabs.crashReporting.sendReport = false
В целом хорошо что служба отключена, но URL не удалили. 1 из 2


В целом хорошо что служба отключена, но URL не удалили. 1 из 2
Captive portal detection - страница авторизации WiFi
Когда вы подключаетесь к какой-то WiFi точке впервые, браузер по умолчанию делает проверку на наличие страницы авторизации. На тот случай, если нужно осуществить вход через СМС или как-то еще. Браузер делает это пытаясь загрузить файл http://detectportal.firefox.com/success.txt. Если файл удалось загрузить - значит интернет есть, а значит искать и показывать страницу авторизации не нужно. Но такое поведение означает, что когда вы подключитесь к WiFi, браузер совершенно вас об этом не спрашивая сделает HTTP-запрос к серверу разработчиков.
captivedetect.canonicalURL = ""
network.captive-portal-service.enabled = false
В целом хорошо что служба отключена, но URL не удалили. 1 из 2


В целом хорошо что служба отключена, но 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














Результат: 10 из 14
Сеть, DNS, прокси и IPv6
Готовьтесь, в этом разделе вас ждет реальное дерьмо - целый рассадник разных компонентов браузера, которые анализируют ваше поведение и создают кучу "левых" сетевых запросов.
network.prefetch-next = false
network.dns.disablePrefetch = true
network.predictor.enabled = false
network.http.speculative-parallel-limit = 0
browser.places.speculativeConnect.enabled = false
network.dns.disableIPv6 = true
network.gio.supported-protocols = ""
network.file.disable_unc_paths = true
permissions.manager.defaultsUrl = ""
network.IDN_show_punycode = true
Результат: 7 из 10, но отмечу что самые пакостные компоненты слежки выключены по умолчанию










Результат: 7 из 10, но отмечу что самые пакостные компоненты слежки выключены по умолчанию
Настройки поиска
Из-за того, что адресная строка браузера интегрирована с поиском, браузер по умолчанию всячески пытается предсказать, что же мы от него хотим, когда начинаем что-то туда вводить. Вводимые нами символы отправляются в сеть еще до того как мы нажмем Enter, чтобы показать нам всякие поисковые подсказки, что создает угрозу анонимности и приватности.
browser.search.suggest.enabled = false
browser.urlbar.suggest.searches = false
browser.fixup.alternate.enabled = false
browser.urlbar.trimURLs = false
browser.urlbar.speculativeConnect.enabled = false
Далее отключаем настройки автозаполнения всяких форм
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





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






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




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




Результат: 3 из 4
Кэш и память






Результат: 5 из 6
HTTPS / SSL/TLS / OSCP / CERTS - сертификаты безопасности









Результат: 3 из 9
Заголовки и реферреры


Результат: 1 из 2
Аудио и видео: WebRTC, WebGL, DRM






Результат: 0 из 6
Загрузки


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




Результат: 1 из 4
Интерфейс






Результаты: 5 из 6
Дополнения



Результаты: 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











Результат: 7 из 11
Фингерпринтинг





Результат: 3 из 5
Итоги
95 из 150 параметров, которые требуется изменить в браузере Mozilla Firefox, в случае с Mullvad Browser имеют рекомендованное значение и не требуют вмешательства. Можно сказать, что это очень неплохой результат, потому что почти все эти 95 параметров относятся к тем, которые максимально критичны для приватности и анонимности, а многие из требующих ручного вмешательства 55 параметров нужны чтобы "докрутить" браузер до максимально возможной защиты наших данных, порой в ущерб функциональности.