Усиление безопасности и приватности в Firefox

Усиление безопасности и приватности в Firefox

Firefox – мой любимый браузер. Я использую Firefox как в домашнем Arch Linux, так и на Android смартфоне. Более того, я рекомендую использовать только этот браузер всем своим друзьям и знакомым. Но, как и в любом другом приложении, рассчитанном на массовое использование, настройки в Firefox по умолчанию не оптимальны в плане защиты приватности и безопасности пользователя. Хорошо, что этот замечательный браузер позволяет настроить его “так, как надо”, чем сейчас и займёмся.

Тюнинг Firefox в about:config

Автоматическое применение правил

Чтобы не париться с ручным изменением параметров в about:config, можно всё сделать быстро и просто. Открываем в Firefox страницу:

about:support

В строке “Каталог профиля” смотрим где лежит профиль браузера. Переходим в него:

cd МЕСТОПОЛОЖЕНИЕ_ПРОФИЛЯ_УКАЗАННОЕ_НА_СТРАНИЦЕ_ABOUT_SUPPORT

Например “cd /home/imatvey/.mozilla/firefox/5e4ye5t4.default“.

Сюда нужно положить специальный файл user.js, который автомтатически применит все правила. Находясь в каталоге профиля выполняем:

wget -O user.js https://gitlab.com/madaidan/hardened-firefox-user.js/raw/master/user.js?inline=false

Данная команда скачает файл user.js с необходимыми настройками и положит его в папку профиля Firefox. Теперь осталось перезапустить браузер, после чего тюнинг браузера внутренними настройками закончен.

Вручную

Если по каким-то причинам автоматически применять настройки не хочется/не можется, всё можно сделать вручную. Открываем в Firefox адрес:

about:config

и жмём на клавиатуре ENTER. Само собой, соглашаемся что будем аккуратными. Далее меняем параметры на те значения, которые указаны в таблице. Значение “blank” означает что строку нужно оставить пустой или очистить. Искать значения можно с помощью поисковой строки в верхней части окна about:config.

media.peerconnection.enabled = false
privacy.firstparty.isolate = true
privacy.resistFingerprinting = true
browser.cache.offline.enable = false
browser.sessionstore.max_tabs_undo = 0
browser.urlbar.speculativeConnect.enabled = false
dom.event.clipboardevents.enabled = false
geo.enabled = false
media.eme.enabled = false
media.gmp-widevinecdm.enabled = false
media.navigator.enabled = false
network.cookie.cookieBehavior = 1 
network.cookie.lifetimePolicy = 2
network.http.referer.trimmingPolicy = 2
network.http.referer.XOriginPolicy = 2
network.http.referer.XOriginTrimmingPolicy = 2
webgl.disabled = true
browser.sessionstore.privacy_level = 2
network.IDN_show_punycode = true
extensions.blocklist.url = https://blocklists.settings.services.mozilla.com/v1/blocklist/3/%20/%20/
dom.event.contextmenu.enabled = false
network.http.referer.spoofSource = true
privacy.trackingprotection.enabled = false 
geo.wifi.uri = blank
browser.search.geoip.url = blank
browser.aboutHomeSnippets.updateUrL = blank
browser.startup.homepage_override.mstone = ignore
browser.startup.homepage_override.buildID = blank
startup.homepage_welcome_url = blank
startup.homepage_welcome_url.additional = blank
startup.homepage_override_url = blank
toolkit.telemetry.cachedClientID = blank
browser.send_pings.require_same_host = true
network.dnsCacheEntries = 100
places.history.enabled = false
browser.formfill.enable = false
browser.cache.disk.enable = false
browser.cache.disk_cache_ssl = false
browser.cache.memory.enable = false
browser.cache.offline.enable = false
network.predictor.enabled = false
network.dns.disablePrefetch = true
network.prefetch-next = false
network.http.speculative-parallel-limit = 0
extensions.pocket.enabled = false
extensions.pocket.site = blank
extensions.pocket.oAuthConsumerKey = blank
extensions.pocket.api = blank
browser.newtabpage.activity-stream.feeds.telemetry = false
browser.newtabpage.activity-stream.telemetry = false
browser.ping-centre.telemetry = false
toolkit.telemetry.archive.enabled = false
toolkit.telemetry.bhrPing.enabled = false
toolkit.telemetry.enabled = false
toolkit.telemetry.firstShutdownPing.enabled = false
toolkit.telemetry.hybridContent.enabled = false
toolkit.telemetry.newProfilePing.enabled = false
toolkit.telemetry.reportingpolicy.firstRun = false
toolkit.telemetry.server = blank
toolkit.telemetry.shutdownPingSender.enabled = false
toolkit.telemetry.unified = false
toolkit.telemetry.updatePing.enabled = false
network.allow-experiments = false
browser.tabs.crashReporting.sendReport = false
dom.ipc.plugins.flash.subprocess.crashreporter.enabled = false
toolkit.crashreporter.infoURL = blank
datareporting.healthreport.infoURL = blank
datareporting.healthreport.uploadEnabled = false
datareporting.policy.firstRunURL = blank
privacy.spoof_english = 2
accessibility.force_disabled = 1
network.captive-portal-service.enabled = false
captivedetect.canonicalURL = blank
browser.newtabpage.activity-stream.feeds.snippets = false
gfx.font_rendering.graphite.enabled = false
network.jar.block-remote-files = true
javascript.options.ion = false
javascript.options.native_regexp = false
javascript.options.baselinejit = false
dom.webaudio.enabled = false
media.webaudio.enabled = false
mathml.disabled = true
gfx.font_rendering.opentype_svg.enabled = false
svg.disabled = true

browser.safebrowsing.malware.enabled = false
browser.safebrowsing.phishing.enabled = false
browser.safebrowsing.downloads.enabled = false
browser.safebrowsing.provider.google4.dataSharing.enabled = blank
browser.safebrowsing.provider.google4.updateURL = blank
browser.safebrowsing.provider.google4.reportURL = blank
browser.safebrowsing.provider.google4.reportPhishMistakeURL = blank
browser.safebrowsing.provider.google4.reportMalwareMistakeURL = blank
browser.safebrowsing.provider.google4.lists = blank
browser.safebrowsing.provider.google4.gethashURL = blank
browser.safebrowsing.provider.google4.dataSharingURL = blank
browser.safebrowsing.provider.google4.dataSharing.enabled = false
browser.safebrowsing.provider.google4.advisoryURL = blank
browser.safebrowsing.provider.google4.advisoryName = blank
browser.safebrowsing.provider.google.updateURL = blank
browser.safebrowsing.provider.google.reportURL = blank
browser.safebrowsing.provider.google.reportPhishMistakeURL = blank
browser.safebrowsing.provider.google.reportMalwareMistakeURL = blank
browser.safebrowsing.provider.google.pver = blank
browser.safebrowsing.provider.google.lists = blank
browser.safebrowsing.provider.google.gethashURL = blank
browser.safebrowsing.provider.google.advisoryURL = blank
browser.safebrowsing.downloads.remote.url = blank 

Перезапускаем браузер.

Усиление безопасности с помощью плагинов

Продолжаем усиливать безопасность Firefox. Ставим следующие плагины.

uBlock Origin

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

NoScript

Плагин NoScript позволяет блокировать вредоносный и нежелательный JavaScript код на сайтах, а так же защищает от XSS атак.

Decentraleyes

Данный плагин для Firefox борется с отслеживанием пользователей крупными CDN сетями. Он отдаёт файлы вроде jQuery или AngularJS браузеру локально, вместо осуществления запроса к CDN провайдеру. Как бонус, это несколько ускоряет загрузку страниц с этими ресурсами.

HTTPS Everywhere

Принудительно заставляет браузер использовать протокол HTTPS везде, где это возможно.

Disable JavaScript

Позволятет кнопкой на панели дополнений или с помощью контекстного меню вручную отключать/включать JavaScript на сайтах. В некоторых ситуациях это может быть очень полезно.

Данных плагинов будет достаточно для хорошей защиты Огненной Лисы от различного рода опасеностей в сети.

Полезные советы

  • Firefox не просто так ругается на сертификат. Неправильный SSL сертификат сайта – первый признак атаки MITM!
  • Если есть возможность отключить JavaScript на сайте – его нужно отключить. Абсолютное большинство атак на браузер происходит с помощью JavaScript.
  • Не используйте Flash! Это древняя дырявая технология, которую уже успешно заменил HTML5.
  • Для ещё большей безопасности и анонимности нужно использовать Браузер Tor. Скачать его можно по этой ссылке.
  • Не запускайте исполняемые файлы не проверив их на безопасность. Быстро проверить файл на присутствие зловредных вкраплений можно с помощью Virustotal.
  • Указывайте “левые” личные данные везде, где это возможно: соц. сети, мессенджеры, форумы и т.д. Не загружайте свои реальные фотографии в профили вышеуказанных ресурсов. Злоумышленники могут и будут использовать всю эту информацию для рекламы, фишинга, шантажа и других зловредных действий.

Как настраиваю и что использую я?

Конечно, в повседневной жизни не обязательно выполнять всё, что здесь описано. Лично я в обычном профиле Firefox использую всего пару параметров:

privacy.resistFingerprinting = true
privacy.firstparty.isolate = true
geo.enabled = false
network.http.referer.spoofSource = true
extensions.pocket.enabled = false
toolkit.telemetry.enabled = false
network.allow-experiments = false

Из плагинов использую все, перечисленные выше.

На этом сегодня всё, спасибо за внимание. При подготовке материала использовалась информация с сайта awesome piracy.