Выступление представителей Zoom на RSA Conference 2021 было посвящено сквозному шифрованию в Zoom Cloud Meetings. Они рассказали, почему разработчики платформы уделяют этому вопросу особое внимание, что планируется сделать для того, чтобы звонки стали безопасней и какие еще нововведения ждут пользователей.
Немного истории
Пандемия заставила многих из нас подолгу оставаться дома и общаться с коллегами и близкими через сервисы онлайн-звонков — и для этого люди часто выбирали Zoom. Высокая популярность сервиса привлекла к нему повышенный интерес специалистов по безопасности, и вскоре выяснилось, что дела с этим у сервиса обстоят не так уж гладко. К примеру, в Zoom были обнаружены уязвимости, которые позволяли злоумышленникам шпионить за пользователями через камеру и микрофон, а рейды троллей на конференциях даже получили собственное название: зумбомбинг (Zoombombing). Следует отметить, что в Zoom весьма оперативно и адекватно реагировали на обнаруживавшиеся проблемы, но их не всегда получалось решить быстро.
Одна из основных претензий к Zoom заключалась в том, что вместо сквозного шифрования (end-to-end encryption, сокращенно E2EE) платформа использовала систему P2PE — point-to-point encryption. Что с ней не так, спросите вы? Сейчас разберемся.
E2EE против P2PE
На первый взгляд может показаться, что эти системы не так уж сильно отличаются: и в том, и в другом случае информация, которой обмениваются пользователи, шифруется. Основная разница в том, что в случае P2PE сервер имеет доступ к переписке пользователей, а при сквозном шифровании информация шифруется на устройстве отправителя и расшифровывается только на устройстве получателя. И именно в этой детали и кроется потенциальная проблема. В частности, на конференции разработчики Zoom упоминали следующие риски своего старого подхода.
- Киберпреступники могут взломать сервер и украсть хранящиеся на нем ключи шифрования, а затем присоединяться к собраниям от имени других пользователей или подменять их сообщения.
- Недобросовестные работники на стороне облачного провайдера или самого Zoom могут получить доступ к ключам и опять-таки украсть данные пользователей.
Вряд ли кто-то захочет, чтобы по той или иной причине личный разговор с семьей и друзьями — а тем более секретные коммерческие переговоры — стали достоянием общественности. Причем в случае, если бы взломщики использовали украденные ключи только для пассивного подслушивания чужих разговоров, это было бы крайне нелегко обнаружить.
Сквозное шифрование решает эти проблемы, ведь в случае E2EE ключи для расшифровки хранятся только на устройствах пользователей. Это означает, что взлом сервера не поможет злоумышленнику получить доступ к чужим видеоконференциям. Поэтому вполне закономерно, что многие давно ждали от Zoom перехода на сквозное шифрование — тем более что в мессенджерах его использование уже стало привычным.
Сквозное шифрование в Zoom: текущая ситуация
Разработчики прислушались к критике и постарались улучшить безопасность звонков. Вот основные из принятых ими мер.
Осенью 2020 года сквозное шифрование наконец появилось в Zoom и теперь применяется как к самим звонкам — и аудио, и видео — так и к содержимому чата. При включении E2EE все данные участников защищает так называемый ключ шифрования конференции. Этот ключ не хранится на серверах Zoom, поэтому даже разработчики не смогут расшифровать содержимое разговоров. На платформе хранятся только зашифрованные идентификаторы участников, а также некоторые метаданные встречи, например длительность звонка.
Для защиты от подключения посторонних разработчики ввели так называемый heartbeat — специальный сигнал, который приложение организатора автоматически отправляет другим пользователям. В нем, помимо прочего, содержится список участников встречи, которым был отправлен текущий ключ шифрования, — то есть полный список ожидаемых участников. Если же на встрече присутствует кто-то неожиданный — тот, кого в этом списке нет — всем сразу становится понятно, что что-то идет не так.
Другой способ скрыться от чужих ушей и глаз — зафиксировать список участников (Lock Meeting), когда все гости уже собрались. Закрыть встречу можно только вручную, зато после нажатия соответствующей кнопки посторонние к разговору уже точно не смогут присоединиться.
Также Zoom позволяет защититься от атаки типа Man-in-the-middle с подменой ключей шифрования, которая в теории может позволить постороннему подслушивать звонок. Чтобы удостовериться в том, что этого не произошло, организатор встречи может в любой момент нажать кнопку и сгенерировать на основе известного ему ключа шифрования встречи код безопасности. В этот момент тем же образом код будет сгенерирован у остальных участников встречи автоматически. Организатору остается зачитать вслух этот код и если он у всех совпадает, это будет значить, что все пользуются одним и тем же ключом, и, следовательно, все идет хорошо.
В Zoom есть и еще один удобный защитный механизм: каждый раз, когда организатор встречи покидает ее и организатором становится кто-то другой, это отображается в приложении. Если эта смена организатора встречи выглядит для других участников подозрительно, то они могут прервать обсуждение секретных тем до выяснения обстоятельств.
Конечно, если вы просто проводите зум-вечеринку с друзьями, то вряд ли есть смысл так сильно «шифроваться». Но если речь идет о коммерческих секретах или, тем более, государственных тайнах, то эти защитные механизмы могут быть очень полезны — участникам встреч желательно о них знать и уметь их использовать.
Несмотря на все нововведения, разработчики признают, что им есть к чему стремиться. Доклад на RSA 2021 посвятил слушателей в перспективы развития Zoom.
Что ждет Zoom в будущем
На конференции разработчики обозначили ряд угроз, способы противостояния которым им еще предстоит реализовать. Одна из них — проникновение посторонних на встречи под видом приглашенных пользователей. Другая кроется в том, что несмотря на защиту звонка сквозным шифрованием, злоумышленники могут узнать некоторые метаданные, например длительность совещания, список участников и IP-адресов. Из числа рисков нельзя исключать и уязвимости самой программы — в теории киберпреступники способны встроить в Zoom вредоносный код.
Исходя из этих угроз, разработчики Zoom сформулировали цели, которых они хотят достигнуть:
- доступ к мероприятиям должны получать только приглашенные и одобренные организатором участники;
- удаленные из мероприятия участники больше не должны иметь возможность подключиться к нему;
- не допущенные на мероприятие люди не должны иметь возможность испортить содержание встречи;
- добросовестные участники мероприятия должны иметь возможность сообщить службе безопасности Zoom о злоупотреблениях других участников.
Дорожная карта
Для достижения этих целей была разработана дорожная карта, которая включает четыре этапа. Первый этап уже реализован. Как мы рассказали выше, разработчики изменили систему управления ключом шифрования конференции, чтобы он хранился только на устройствах пользователей, а также усовершенствовали средства защиты от подключения к встрече посторонних.
На втором этапе в Zoom планируют перейти на проверку личности пользователей без обращения к серверам самого Zoom. Он будет основан на технологии единого входа (SSO) с привлечением независимых систем идентификации (IDP).
В результате злоумышленник не сможет подделать личность пользователя, даже если каким-то образом получит контроль над сервером Zoom. Если же кто-то присоединится к мероприятию под видом приглашенного участника, но с новым открытым ключом, то остальные получат предупреждение о потенциальной угрозе.
На третьем этапе будет введено так называемое «дерево прозрачности». Согласно этой концепции, на серверах Zoom и у провайдеров SSO будут в неизменном виде храниться подписанные ими данные о том, кому из пользователей какой открытый ключ принадлежит. Каждое приложение сможет отправить запрос и получить в ответ данные о подлинности ключей того или иного участника.
Аналогичную функцию возложат и на доверенные независимые центры, которые будут проводить аудит автоматически и предупреждать остальных участников встречи о подмене ключей того или иного пользователя. Таким образом планируется защитить платформу от атак типа Man-in-ihe-middle.
На последнем четвертом этапе разработчики планируют ввести дополнительную проверку подлинности устройств при подключении к аккаунту. Чтобы привязать новый гаджет, потребуется подтвердить его легитимность, например считав QR-код с экрана доверенного телефона или компьютера. Это не позволит злоумышленнику привязать свое устройство к чужой учетной записи, даже если он получит контроль над сервером и ключами ее хозяина.
Безопасность не в ущерб удобству
При внедрении дополнительных механизмов защиты важно учитывать, как они повлияют на взаимодействие обычных людей с платформой. Разработчики Zoom продумывают и эту сторону вопроса. Так, в качестве одного из нововведений предлагают «облака устройств» (Personal device clouds). Эта технология упростит процесс добавления новых гаджетов к учетной записи и в то же время поможет защитить аккаунт от взлома.
Представьте, что изначально вы общались с коллегами через компьютер, а спустя пару дней скачали Zoom на смартфон. Вы можете открыть программу на компьютере и увидеть, что в вашу учетную запись выполнен вход с нового гаджета. Если вы одобрите его, оба устройства будут связаны в единое «облако».
Таким образом, когда вы позвоните коллегам с телефона, они будут знать, что в разговоре участвуете именно вы, а не злоумышленник, который украл пароль и вошел в вашу учетную запись на своем гаджете. Также «облака устройств» позволяют проверить, с каких гаджетов выполнен вход в аккаунт, и отменить доверенный статус устройства, если его добавили не вы.
Помимо этого разработчики планируют добавить возможность переключаться на сквозное шифрование прямо во время встречи и много других полезных мелочей. Узнать больше о планах команды Zoom можно из технического документа, опубликованного на GitHub.
Станут ли разговоры в Zoom безопаснее?
Краткий ответ: да. В Zoom уже сделали немало для защиты видеоконференций от посторонних и собираются ввести еще больше защитных механизмов. Особенно приятно видеть, что разработчики Zoom стараются подружить безопасность с легкостью использования приложения. К сожалению, не у всех сервисов это получается.
Конечно, многое зависит и от самих людей. Как и везде в Интернете, находясь на видеоконференции, следует проявлять разумную осторожность, знать предлагаемые сервисом механизмы защиты и уметь ими пользоваться, обращать внимание на предупреждения платформы и воздерживаться от секретных переговоров, если что-то выглядит подозрительно и нет уверенности в том, что утечка данных исключена.