Хакер - Сторожевой лис. Как настроить Firefox для повышения приватности

Хакер - Сторожевой лис. Как настроить Firefox для повышения приватности

hacker_frei

https://t.me/hacker_frei

7 марта 2019 г. Nik Zerof.

Содержание статьи

В последнее время браузер Firefox претерпевал достаточно значительные изменения, хорошие и не очень: это и переход на движок Quantum, это и отказ от расширений типа XUL/XPCOM, и переход на WebExtensions, и еще масса других преобразований. Что никак не изменилось — это возможность сделать из него прекрасный хакерский браузер, если немного покрутить конфиги. Как и что крутить, мы обсудим в этой статье.

INFO

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


 

Создание «портативных» настроек

Все интересные настройки Firefox делаются на служебной странице по адресу about:config. Зайти сюда и поменять пару параметров — легко и удобно. Но если говорить о тонкой настройке, то тут менять значения по одному становится слегка утомительно.

Как автоматизировать процесс, не прибегая к сторонним утилитам? Очень просто: создавай файл user.js и прописывай все настройки туда. Далее помещаем этот файл в каталог пользовательского профиля Firefox, который в Windows находится по пути C:\Users\[username]\AppData\Roaming\Mozilla\Firefox\Profiles\[random].default. Формат записей в этом файле прост: например, чтобы включить поддержку WebP, необходимо задать параметру image.webp.enabled значение true. В файле настроек это будет выглядеть вот так:

user_pref("image.webp.enabled", true);

Другими словами, в шаблоне user_pref("...", …); идет параметр и его значение. Итак, с файлом настроек разобрались, теперь приступим к препарированию браузера. Все настройки применялись к последней на момент написания статьи версии браузера.

WARNING

Учитывай, что безопасность и приватность — это всегда компромисс с удобством. Некоторые настройки могут значительно ограничить функциональность сайтов, но сильно увеличить безопасность и приватность при серфинге. А что важнее — выбирать тебе.

 

Отключаем все лишнее

 


WebRTC и Pocket

Mozilla внедрила сервисы WebRTC и Pocket в Firefox и включила их по умолчанию. Многим это не понравилось, и не просто так: в Pocket нашли уязвимости, а WebRTC может допускать утечку IP-адреса при определенных обстоятельствах. Давай отключим и то и другое! Сейчас и далее я привожу готовые строки настроек, которые ты можешь копировать в файл user.js.

// Отключаем Pocket
user_pref("extensions.pocket.api", "");
user_pref("extensions.pocket.enabled", false);
user_pref("extensions.pocket.site", "");
user_pref("extensions.pocket.oAuthConsumerKey", "");

// Отключаем WebRTC
user_pref("media.peerconnection.enabled", false);
user_pref("media.peerconnection.ice.default_address_only", true);
user_pref("media.peerconnection.ice.no_host", true);
user_pref("media.peerconnection.ice.relay_only", true);
user_pref("media.peerconnection.ice.tcp", false);
user_pref("media.peerconnection.identity.enabled", false);
user_pref("media.peerconnection.turn.disable", true);
user_pref("media.peerconnection.use_document_iceservers", false);
user_pref("media.peerconnection.video.enabled", false);
user_pref("media.peerconnection.default_iceservers", "[]");

 


Геолокация

Отключаем доступ к геолокации.

user_pref("geo.enabled", false);
user_pref("geo.provider.ms-windows-location", false);
user_pref("geo.wifi.uri", "");

 


Статистика использования браузера и различные метрики

Перекрываем сбор различных данных.

// Отключаем асинхронные запросы, используемые для аналитики
user_pref("beacon.enabled", false);
user_pref("browser.send_pings", false);
user_pref("browser.send_pings.require_same_host", false);

// Отключаем метрики производительности
user_pref("dom.enable_performance", false);
user_pref("dom.enable_performance_observer", false);
user_pref("dom.enable_performance_navigation_timing", false);
user_pref("browser.slowStartup.notificationDisabled", false);

user_pref("network.predictor.enabled", false);
user_pref("network.predictor.enable-hover-on-ssl", false);
user_pref("network.prefetch-next", false);
user_pref("network.http.speculative-parallel-limit", 0);

// Информация об установленных дополнениях
user_pref("extensions.getAddons.cache.enabled", false);

 


Отключаем доступ к датчикам

Если у тебя обычный ПК, а не планшет, к примеру, то выключаем доступ к датчикам.

user_pref("device.sensors.enabled", false);
user_pref("device.sensors.orientation.enabled", false);
user_pref("device.sensors.motion.enabled", false);

user_pref("device.sensors.proximity.enabled", false);
user_pref("device.sensors.ambientLight.enabled", false);

 


Останавливаем фингерпринтинг

Эти настройки говорят браузеру сопротивляться идентификации.

user_pref("dom.webaudio.enabled", false);
user_pref("privacy.resistFingerprinting", true);

 


Перекрываем информацию о сетевом соединении

user_pref("dom.netinfo.enabled", false);
user_pref("dom.network.enabled", false);

 


Отключаем использование устройств и передачу медиа

Отключаем использование через браузер камер, микрофонов, геймпадов, очков виртуальной реальности и вместе с устройствами — передачу различного медиаконтента, типа скриншотов и прочего. Так же выключаем распознавание речи.

user_pref("dom.gamepad.enabled", false);
user_pref("dom.gamepad.non_standard_events.enabled", false);
user_pref("dom.imagecapture.enabled", false);
user_pref("dom.presentation.discoverable", false);
user_pref("dom.presentation.discovery.enabled", false);
user_pref("dom.presentation.enabled", false);
user_pref("dom.presentation.tcp_server.debug", false);
user_pref("media.getusermedia.aec_enabled", false);
user_pref("media.getusermedia.audiocapture.enabled", false);
user_pref("media.getusermedia.browser.enabled", false);
user_pref("media.getusermedia.noise_enabled", false);
user_pref("media.getusermedia.screensharing.enabled", false);
user_pref("media.navigator.enabled", false);
user_pref("media.navigator.video.enabled", false);
user_pref("media.navigator.permission.disabled", true);
user_pref("media.video_stats.enabled", false);
user_pref("dom.battery.enabled", false);
user_pref("dom.vibrator.enabled", false);
user_pref("dom.vr.require-gesture", false);
user_pref("dom.vr.poseprediction.enabled", false);
user_pref("dom.vr.openvr.enabled", false);
user_pref("dom.vr.oculus.enabled", false);
user_pref("dom.vr.oculus.invisible.enabled", false);
user_pref("dom.vr.enabled", false);
user_pref("dom.vr.test.enabled", false);
user_pref("dom.vr.puppet.enabled", false);
user_pref("dom.vr.osvr.enabled", false);
user_pref("dom.vr.external.enabled", false);
user_pref("dom.vr.autoactivate.enabled", false);
user_pref("media.webspeech.synth.enabled", false);
user_pref("media.webspeech.test.enable", false);
user_pref("media.webspeech.synth.force_global_queue", false);
user_pref("media.webspeech.recognition.force_enable", false);
user_pref("media.webspeech.recognition.enable", false);

 


Отключаем телеметрию и отправку отчетов

Браузер собирает телеметрические данные и сигнализирует разработчикам о падениях компонентов. Для повышения анонимности это можно отключить.

user_pref("toolkit.telemetry.archive.enabled", false);
user_pref("toolkit.telemetry.bhrPing.enabled", false);
user_pref("toolkit.telemetry.cachedClientID", "");
user_pref("toolkit.telemetry.firstShutdownPing.enabled", false);
user_pref("toolkit.telemetry.hybridContent.enabled", false);
user_pref("toolkit.telemetry.newProfilePing.enabled", false);
user_pref("toolkit.telemetry.previousBuildID", "");
user_pref("toolkit.telemetry.reportingpolicy.firstRun", false);
user_pref("toolkit.telemetry.server", "");
user_pref("toolkit.telemetry.server_owner", "");
user_pref("toolkit.telemetry.shutdownPingSender.enabled", false);
user_pref("toolkit.telemetry.unified", false);
user_pref("toolkit.telemetry.updatePing.enabled", false);
user_pref("datareporting.healthreport.infoURL", "");
user_pref("datareporting.healthreport.uploadEnabled", false);
user_pref("datareporting.policy.dataSubmissionEnabled", false);
user_pref("datareporting.policy.firstRunURL", "");
user_pref("browser.tabs.crashReporting.sendReport", false);
user_pref("browser.tabs.crashReporting.email", false);
user_pref("browser.tabs.crashReporting.emailMe", false);
user_pref("breakpad.reportURL", "");
user_pref("security.ssl.errorReporting.automatic", false);
user_pref("toolkit.crashreporter.infoURL", "");
user_pref("network.allow-experiments", false);
user_pref("dom.ipc.plugins.reportCrashUR", false);
user_pref("dom.ipc.plugins.flash.subprocess.crashreporter.enabled", false);

 


Настраиваем информацию для поиска

Приводим поиск браузера в «стандартное» состояние — без поправок на наше местоположение.

user_pref("browser.search.geoSpecificDefaults", false);
user_pref("browser.search.geoSpecificDefaults.url", "");
user_pref("browser.search.geoip.url", "");
user_pref("browser.search.region", "US");
user_pref("browser.search.suggest.enabled", false);
user_pref("browser.search.update", false);

 


Разбираемся с пуш-уведомлениями

Пуш-уведомления могут работать даже тогда, когда ты закрыл страницу.

user_pref("dom.push.enabled", false);
user_pref("dom.push.connection.enabled", false);
user_pref("dom.push.serverURL", "");

А теперь не могут.

 


Убираем утечки DNS

Здесь убираем возможную утечку DNS по IPv6, отключаем упреждающую отправку DNS и настраиваем DoH — DNS over HTTPS.

user_pref("network.dns.disablePrefetch", true);
user_pref("network.dns.disableIPv6", true);
user_pref("network.security.esni.enabled", true);
user_pref("network.trr.mode", 2);
user_pref("network.trr.uri", "https://cloudflare-dns.com/dns-query");

 


Отключаем перенаправления

user_pref("network.captive-portal-service.enabled", false);
user_pref("network.captive-portal-service.maxInterval", 0);
user_pref("captivedetect.canonicalURL", "");

 


Пресекаем слив данных на серверы Google

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

user_pref("browser.safebrowsing.allowOverride", false);
user_pref("browser.safebrowsing.blockedURIs.enabled", false);
user_pref("browser.safebrowsing.downloads.enabled", false);
user_pref("browser.safebrowsing.downloads.remote.block_dangerous", false);
user_pref("browser.safebrowsing.downloads.remote.block_dangerous_host", false);
user_pref("browser.safebrowsing.downloads.remote.block_potentially_unwanted", false);
user_pref("browser.safebrowsing.downloads.remote.block_uncommon", false);
user_pref("browser.safebrowsing.downloads.remote.enabled", false);
user_pref("browser.safebrowsing.malware.enabled", false);
user_pref("browser.safebrowsing.phishing.enabled", false);
user_pref("browser.safebrowsing.downloads.remote.url", "");
user_pref("browser.safebrowsing.provider.google.advisoryName", "");
user_pref("browser.safebrowsing.provider.google.advisoryURL", "");
user_pref("browser.safebrowsing.provider.google.gethashURL", "");
user_pref("browser.safebrowsing.provider.google.reportMalwareMistakeURL", "");
user_pref("browser.safebrowsing.provider.google.reportPhishMistakeURL", "");
user_pref("browser.safebrowsing.provider.google.reportURL", "");
user_pref("browser.safebrowsing.provider.google.updateURL", "");
user_pref("browser.safebrowsing.provider.google4.advisoryName", "");
user_pref("browser.safebrowsing.provider.google4.advisoryURL", "");
user_pref("browser.safebrowsing.provider.google4.dataSharingURL", "");
user_pref("browser.safebrowsing.provider.google4.gethashURL", "");
user_pref("browser.safebrowsing.provider.google4.reportMalwareMistakeURL", "");

 


Отключаем DRM

…просто потому, что можем!

user_pref("browser.eme.ui.enabled", false);
user_pref("media.eme.enabled", false);

Итак, мы рассмотрели некоторые базовые настройки браузера Firefox, которые помогут тебе не делиться ни с кем своими данными. Как видишь, без этих настроек браузер фактически следит за каждым шагом, собирает кучу метрик и отправляет их туда и сюда. Раз все это можно отключить, почему бы не сделать этого?

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

10 полезных плагинов для Firefox

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

  1. Privacy Possum — блокирует различные методы слежения: рефереры, заголовки ETag, сторонние куки, портит данные фингерпринта.

2. uBlock Origin — отличный блокировщик рекламы и не только. Содержит обширные списки блокировки, единственный нюанс — львиную долю списков блокировки нужно будет активировать самостоятельно в настройках, потому что они отключены по умолчанию.

3. uMatrix — расширение, разработанное автором uBlock Origin. Представляет собой мощный блокировщик запросов браузера, а в связке с uBlock становится мощным средством против рекламы и прочей мишуры. Однако требует настройки практически под каждый сайт.

4. Nano Defender — хорошее дополнение к блокировщику рекламы — плагин противодействует антиадблокерам.

5. Decentraleyes — полезный плагин, который препятствует отслеживанию через CDN (Content Delivery Network).

6. Facebook Container — плагин, разработанный в Mozilla. Пытается остановить слежку со стороны Facebook.

7. Google search link fix — расширение, которое чистит поисковую выдачу Yandex и Google, не позволяя поисковику собирать статистику кликов по ссылкам в выдаче.

8. NoScript — популярное расширение, которое блокирует скрипты на сайтах. Очень полезно, потому что как раз скрипты часто нарушают анонимность.

9. HTTPS Everywhere — автоматически переключает соединение на HTTPS, даже когда это явно не было указано в адресной строке.

10. Privacy Badger — еще одно расширение от Фонда электронных рубежей, которое препятствует слежке со стороны сайтов.

Читайте ещё больше платных статей бесплатно: https://t.me/hacker_frei