У каждого контейнера внутри Firefox — собственный набор куков, indexedDB, localStorage и кэш
Работа в Twitter одновременно под рабочим и личным аккаунтами. Фото: Mozilla
Ходят слухи, что на некоторых сайтах какие-то пользователи пишут одновременно под несколькими аккаунтами. Они якобы оставляют однотипные комментарии под разными никами. Игроки в покер и другие онлайн-игры жалуются, что соперники играют как будто сообща, словно договорившись разорить жертву.
Правда это или нет, но в экспериментальной сборке браузера Firefox Nightly только что реализована технология, которая сильно упрощает одновременную работу под несколькими аккаунтами. Теперь для этого не придётся заводить несколько виртуальных машин или открывать несколько браузеров: изоляция окружений реализована непосредственно между вкладками!
Разработчики Mozilla вчера представили новую функцию Contextual Identities для браузера Firefox 50 Nightly.
Формально, изоляция окружений (контейнеры) в Firefox создана для того, чтобы пользователь мог легко отделить свои аккаунты по нескольким сферам. Например, личные, рабочие, финансовые, шоппинг. Соответственно, открывая новую вкладку, пользователь сразу выбирает, из какого контейнера она будет работать.
Идея разработчиков в том, чтобы люди могли защитить свои конфиденциальные данные, если работают на одних и тех же сайтах из разных контейнеров. То есть в истории поисковых запросов для работы не должны появляться конфиденциальные данные, которые имеют отношение к личной жизни человека.
Теоретически, такая изоляция профилей повышает безопасность информации. Например, все финансовые данные и профили хранятся в «банковском» контейнере. Таким образом, при посещении сомнительного сайта из личного контейнера не произойдёт утечки финансовой информации через возможную XSS- или CSRF-атаку. Дополнительная изоляция здесь совсем не помешает.
У каждого контейнера внутри Firefox — свой собственный набор куков, собственный indexedDB, localStorage и кэш, собственная история сёрфинга и т.д. Получается, что если сайт открыт на вкладке из рабочего контейнера, то он не сможет получить доступ к кукам из личного контейнера. С другой стороны, различные вкладки из персонального контейнера будут использовать одни и те же куки, кэш и локальные базы данных.
По умолчанию, новые вкладки в в Firefox Nightly открываются как обычно, то есть как «общие» контейнеры. Чтобы получить изолированное окружение, пользователь должен вручную открыть вкладку внутри дополнительного контейнера. Для создания вкладки в новом контейнере есть несколько способов, в том числе через меню File – New Container Tab. Сейчас разработчики думают добавить ещё несколько способов открытия новой вкладки внутри контейнера, например, длительным нажатием клавиши “+” на клавиатуре.
В данный момент доступны контейнеры Personal, Work, Banking, Shopping. Каждый из них помечен своим цветом: синий, оранжевый, зелёный и розовый, соответственно, чтобы случайно не перепутать. Соответствующая цветная полоска размещается над указателем вкладки.
Для одновременной работы под несколькими аккаунтами удобно также завести каждому контейнеру отдельный IP-адрес (отдельный VPN), чтобы на сайте не догадались, что многочисленные пользователи принадлежат одному лицу. Возможно, в будущих версиях Firefox реализуют такую функцию, она была бы логичным продолжением идеи контейнеров Firefox.
Контейнеры — это, в своём роде, нечто среднее между обычным и приватным режимами сёрфинга в Firefox. Как известно, в режиме Private Mode при выходе из браузера или закрытии вкладки полностью стираются все куки, история и кэш, так что каждый раз начинается работа «с чистого листа».
Нужно иметь в виду, что некоторые сайты запрещают заводить несколько аккаунтов. Например, такое косвенно запрещено в правилах «Хабрахабра» (редакция от 16 мая 2016 года).
Вот список того, чего на ресурсе делать не следует.
Создавать виртуалов. Всегда приятно поговорить с умным человеком, но создавать для этого добавочные аккаунты и накручивать с них карму и голоса за публикации не стоит.
Как обычно, любые экспериментальные технологии организация Mozilla сначала опробует в Firefox Nightly, а затем на основании отзывов пользователей дорабатывает их, исправляет ошибки и очень часто доводит до реализации в стабильной версии браузера.
В данном случае ожидается широкая общественная дискуссия, потому что тема авторизации на сайтах под несколькими аккаунтами из одного браузера обсуждается давно: см. обсуждение в блоге Mozilla от 2010 года и статью от 2013 года для технического комитета IEEE по безопасности и защите конфиденциальных данных, опять от представителей организации Mozilla.
Предстоит решить несколько проблем, в том числе определить, насколько чётко и надёжно пользователи различают контейнеры друг от друга, не путают ли их. Другой вопрос — как разрешать ситуации, когда пользователь спутал контексты и зашёл в аккаунт из другого контейнера, следует ли реализовать функцию «отката» базы и куков с целью исправления ошибки? В принципе, пользовательские данные уже утекли, так что такой откат даёт только ложное чувство безопасности, возможно, его и не надо реализовывать.
Третий вопрос — должен ли браузер подсказывать пользователю, в какой контекст, то есть в какой контейнер лучше перенести новую вкладку и определённый сайт, чтобы пользователям не приходилась выполнять всю работу по управлению контейнерами самостоятельно? Если браузер должен помогать, то какие эвристики использовать для выполнения такой работы?
Mozilla надеется на помощь и подсказки сообщества в обсуждении этих проблем.
Своё мнение о контейнерах сейчас можно высказать, заполнив небольшую анкету.
Если всё пойдёт по плану, то контейнеры Contextual Identities могли бы появиться в стабильной версии Firefox 50, которая запланирована к выходу ориентировочно осенью 2016 года. Но разработчики считают, что контейнеры следует ещё дополнительно тестировать. В следующей версии Aurora/DevEdition 50 контейнеры не будут включены по умолчанию. На осень 2016 года запланировано более подробное исследование на добровольцах по программе Test Pilot.
В любом случае, контейнеры всегда можно будет отключить. Сейчас в Firefox Nightly это делается в
about:config
через настройку privacy.userContext.enabled
(нужно установить значение false
).Mozilla надеется, что новая функция будет полезна людям, которым раньше приходилось запускать второй браузер или несколько виртуальных машин. Теперь у них нет причин выходить из любимого Firefox.
Следует иметь в виду, что у сайтов всё равно остаётся возможность идентифицировать отдельных пользователей, которые пользуются разными аккаунтами. Для этого применяются техники фингерпринтинга, то есть составления «отпечатка» системы по сочетанию нескольких характеристик: версия ОС, user-agent браузера, набор установленных шрифтов, IP-адрес и многие другие. Недавно сайты начали применять более продвинутые техники для отслеживания пользователей: фингерпринтинг по рендерингу Сanvas, через Audio API, путём выявления реального IP-адреса через WebRTC Local IP, через список установленных шрифтов по Canvas-Font. Наилучший эффект даёт сочетание всех этих методов. По указанным ссылкам перечислены сайты из числа самых популярных сайтов интернета, где работают соответствующие скрипты для скрытого фингерпринтинга.
Так что для более надёжной анонимной работы лучше заходить на сайты через сеть анонимайзеров с использованием браузера Tor. Желательно также использовать операционную систему Tails, которая изначально настроена для безопасной работы в интернете. Именно этот дистрибутив Linux раньше использовал Эдвард Сноуден.
Комментарии (51)
berezuev
17.06.2016 15:31+1Если я все правильно понял, то в хроме это реализовано уже несколько лет как. Просто несколько профилей гугловских в браузере подключаешь и переключаешься между ними «на лету». Можно в несколько окон открыть. Особенно дома очень удобно это
BarakAdama
17.06.2016 15:49+1Причем не обязательно гугловских. Просто создается новый чистый браузерный профиль, который изолирован от всего остального.
imbeat
17.06.2016 15:49-2То о чем вы говорите требует НЕСКОЛЬКИХ гугловских аккаунтов. А тут немного другое… что-то типа профилей (не привязанных к конкретным аккаунтам).
BarakAdama
17.06.2016 15:51+5Если синхронизация не нужна, то гугловский аккаунт тоже не нужен.
imbeat
17.06.2016 15:55-5Верно, но вообще нужна электронная почта (для каждого аккаунта отдельная почта). А в FF никаких почт не нужно. Я хоть и пользуюсь сам браузером Chrome, но считаю, что команда FF — молодцы, хорошая идея! Хрому можно взять на заметку.
BarakAdama
17.06.2016 16:00+9Да не нужна там электронная почта. Новый профиль создается в один клик в настройках.
T-362
17.06.2016 15:54+2В лисе есть такое, только работает слегка через магию — нужно отдельно создавать профиль и ярлык браузера с линком на него.
Фича смотрится очень вкусно, еще бы вместо захардкодженых кнопочек дали делать свои — была бы просто сказка. Хотя для части сайтов и целей все равно нужно разные браузеры иметь, где спец-настройки адблока с юзер скриптами, где отдельно все соц-сети, что-бы не гадили в суп своим треккингом, один для работы с дополнительными аддонами типа фаербага.themtrx
17.06.2016 17:14+2Почти уверен, что для всех будет Banking, Work, etc., а для желающих — билеты на увлекательные путешествия в about:config. Собственно, идеальное сочетание юзабилити и конфигурабилити, за что и люблю FF.
Vampireos
17.06.2016 15:58Сомнительное удовольствие, так как каждый раз переключаться меж аккаунтами, это не такое стремительное действие как открыть новую вкладку
SamoilowAlex
17.06.2016 16:23+3В firefox поддержка профилей появилась еще до рождения хромоноги:
firefox -ProfileManager — управлялка
firefox -P — запустить с определенным профилемwebmasterx
18.06.2016 14:13а два firefox окна с разными профилями запустятся одновременно?
darkdaskin
18.06.2016 17:32+1Запустятся, если для дополнительных экземпляров также указать параметр
-no-remote
. Ссылки, открываемые из сторонних приложений будут открываться в экземпляре, в котором-no-remote
не указан.
NikitosZs
18.06.2016 00:07Немного не то вы описали. А вот в Maxthon`е реально это реализовано уже очень давно.
brzsmg
17.06.2016 15:48+2Удобное дополнение к приватным вкладкам!
Для покупок и онлайн-банка, всегда использую приватные вкладки, естественно не куки не пароли не сохранить.
А так можно хотя бы для магазинов использовать отдельный контейнер, что бы реклама Али потом не маячила везде.
Но для банка все равно лучше приватные вкладки, особенно на рабочем ПК.
Vampireos
17.06.2016 15:49+3Лозунг) Огнелис впереди планеты всей, по добавлению по настоящему нужных функций, а не фантиков^ ^ )
kafeman
17.06.2016 15:50+1Зачем это, если давно есть Multifox? А так только будет путать тех, кому это не нужно.
4ecTHblu
22.06.2016 04:34Мультифокс не поддерживает e10s и не будет, это написано в самом расширении, если установить его в брaузер и включить поддержку e10s.
И похожая участь ждет множество расширений, всему виной переход firefox на WebExtenisons и поддержка e10s в будущем.
pnetmon
17.06.2016 16:21>> Теоретически, такая изоляция профилей повышает безопасность информации. Например, все финансовые данные и профили хранятся в «банковском» контейнере. Таким образом, при посещении сомнительного сайта из личного контейнера не произойдёт утечки финансовой информации через возможную XSS- или CSRF-атаку. Дополнительная изоляция здесь совсем не помешает.
— Внутренний параноик заставил использовать виртуальные машины. Перейти с обычным интернетом на виртуалку не получилось — лень матушка. Пришлось переносить банковские операции в виртуалку.dartraiden
17.06.2016 20:26+1От малвари, если она проникнет в систему, даже изоляция профилей не спасёт. Перенос банковских операций в виртуалку (а в идеале, на другую физическую машину) — верное решение.
for611bing
17.06.2016 16:52+1Теперь у фаерфокса появится повод съедать не гиг оперативки, а все два. Отдельное окружение для каждой учётки — как полноценный открытый второй браузер получится.
T-362
17.06.2016 17:06+1Дилемма крестика и трусов, не выходит одновременно и изоляцию вкладок (в данном случае профилей) и один поток. Вон хром с радостью на одну вкладку плодит порой до трех процессов, и каждый легко разрастается метров до ста, так со вкладки по сотке — и лиса уже не кажется такой толстой.
Кстати у лисы в перспективе и разделение вкладок по процессам, насколько я помню их презентации, но не как у хрома где каждый процесс самостоятелен и независимо плодится, а с одним основным мастер-процессом, который будет держать общие компоненты и интерфейс.inoyakaigor
17.06.2016 21:13>Кстати у лисы в перспективе и разделение вкладок по процессам
Если я правильно понимаю происходящее, то будет разделение интерфейса и вкладок по процессам. Только и всего.
Собственно пока так и есть (Fx 49)sumanai
17.06.2016 21:20+1Процессов для вкладок может быть несколько, советуется число, равное числу ядер. Уже сейчас работает на 47, спрятано в about:config и отключается при установленных расширениях (но это можно побороть). С расширениями правда пока проблема, пробовал, но пришлось откатить настройки.
inoyakaigor
20.06.2016 12:25Не подскажете где и что подкрутить, чтоб было?
sumanai
20.06.2016 22:56+1В about:config
browser.tabs.remote.autostart= true
// Ставить равным числу ядер
dom.ipc.processCount= 4
В user.js в профиле, так как иначе будет постоянно слетать
user_pref(«extensions.e10sBlockedByAddons», false);
dartraiden
17.06.2016 22:00Это пока. В будущем не исключается переход к модели «вкладка = процесс», как в Chrome.
sumanai
18.06.2016 15:57Это Firefox, очень надеюсь, что всё отключается и настраивается. Мне вот удобно 3 процесса на вкладки и один на гуй, всё летало при тестах, жду допила дополнений браузера до совместимости.
tsukasa_mixer
18.06.2016 00:30И всеравно это будет меньше, чем ожиревший хром, сожравший всю доступную память.
Sayonji
17.06.2016 17:01+3Если там еще на каждый такой контейнер можно свой мастер-пароль поставить, то вообще идеально.
ponich
18.06.2016 00:30Виртуалку поднимать что бы открыть вкладку? :-) Масштабы у автора конечно безграничные
sim2q
18.06.2016 03:30наконец то!
а то задолбало два браузера запускатьlex_infohunter
18.06.2016 10:26CTRL+SFIFT+P в окне firefox, но в данной реализации наверное будет удобнее.
sim2q
18.06.2016 13:12Тоже пользуюсь, но хотелоось бы всё же «полноценный» браузер, что бы всё сохранялось и тд, но как будто совсем в отдельной системе, что бы куки не пересекались, хистори. Скачал ночную сборку, попробовал, но пока не разбирался.
sumanai
18.06.2016 21:33+2Вообще, было бы классно иметь возможность очищать данные контейнеров по отдельности. Например, отдельный контейнер для поиска- нет нужды хранить куки и кучу других данных для сайтов, на которые заходишь только один раз.
trimtomato
19.06.2016 15:00+1Уверен не только я один для подобных целей использую сейчас несколько разных браузеров. И вместо предложенной инновации я бы предпочел простую возможность независимо установить фаерфокс несколько раз.
Pepka
19.06.2016 17:31Firefox и Tundetbirds сама тормознутые приложения в своих категориях. Тандером пользуюсь только из-за его бесплатности и многофункциональности, но оно такое тормозное и с кучей багов.
Roach13
Отлично, давно ждал.