Рубрика развивается при поддержке

Специалист по кибербезопасности нашёл в сервисе Zoom уязвимость — она позволяла удалённо включать веб-камеры на macOS Материал редакции

Исследователь предупредил компанию несколько месяцев назад, но она пообещала исправить проблему только после того, как он рассказал о ней публично.

В закладки
Аудио

Исследователь в сфере кибербезопасности Джонатан Лейтшу обнаружил в сервисе для видеоконференций Zoom для macOS уязвимость, позволяющую злоумышленникам получить доступ к веб-камерам пользователей.

По словам Лейтшу, причина уязвимости кроется в функции, которая позволяет пользователям присоединяться к видеоконференциям по ссылке. Для этого Zoom устанавливает на устройства веб-сервер, который получает запросы по протоколу HTTPS GET. Отправлять их может любой сайт, открытый в браузере.

Чтобы активировать веб-камеры пользователей, злоумышленникам нужно создать ссылку-приглашение на конференцию и встроить её в код сайта. Локальный сервер Zoom работает в фоновом режиме, поэтому на компьютерах пользователей, открывающих вредоносный сайт, принудительно запустится приложение видеосервиса с активированной камерой. Также Лейтшу научился подключаться к звонкам, созданным другими пользователями.

Для доказательства уязвимости исследователь встроил вредоносный код в свой сайт. Попадая на сайт, пользователи с установленным клиентом Zoom подключаются к звонку с веб-камерой без разрешения. При отсутствии программы на сайте отображается диалоговое окно с просьбой дать необходимые разрешения, после выдачи которых видеоконференция не запускается.

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

Исследователь сообщил об уязвимости Zoom в марте 2019 года, дав сервису 90 дней на устранение проблемы. По его словам, компания лишь частично исправила проблему: в новом обновлении можно отключить веб-камеру при добавлении к звонкам.

Настройка, позволяющая автоматически выключать веб-камеру при подключении к конференции

Представители сервиса заявили, что используют сервер для экономии кликов пользователей. Они назвали присоединение к звонкам «в один клик» своей «отличительной особенностью». Zoom пообещала, что в одном из следующих обновлений при первом звонке сервис будет спрашивать пользователей о настройках видео и аудио для будущих звонков.

На фоне обнаружения уязвимости акции Zoom упали на 1,1% до $89,75.

{ "author_name": "Тимофей Морозов", "author_type": "editor", "tags": ["\u043d\u043e\u0432\u043e\u0441\u0442\u044c","\u043d\u043e\u0432\u043e\u0441\u0442\u0438","zoom"], "comments": 45, "likes": 36, "favorites": 9, "is_advertisement": false, "subsite_label": "services", "id": 74685, "is_wide": false, "is_ugc": false, "date": "Tue, 09 Jul 2019 22:08:07 +0300", "is_special": false }
Облачная платформа
Основа для цифровизации бизнеса
0
{ "id": 74685, "author_id": 63199, "diff_limit": 1000, "urls": {"diff":"\/comments\/74685\/get","add":"\/comments\/74685\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/74685"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 200396, "last_count_and_date": null }
45 комментариев
Популярные
По порядку
Написать комментарий...
27

НЕ ЗРЯ ЗАКЛЕИВАЛ

Ответить
0

Вы про камеру или просто месье знает толк в извращенияхъ?)

Ответить
7
Ответить
32

Еще бы он не заклеивал! Он лучше всех знает что такое гавнокод и хуевая безопасность.

Ответить
1

Это типа его рабочее место? Сидеть вместе со всеми?🤔

Ответить
8

Он так чморит народ, вот, типа, я сижу тут с вами в маечке, в общей комнате, но у меня охуллиард миллиардов!

Ответить
0

показывает типа "даже миллиардеры так работают" не нойте про нормальный офис - опенспейс норм

Ответить
9

Самое эпичное, это как они решили встраивать всем на MacOS локальный веб-сервер, потому что видите ли, Safari задает лишний вопрос при попытке открыть Zoom через ссылку (это правда их оправдание, на самом деле они хотели устанавливать клиент всем, кто вдруг его удалил).

Ответить
5

Ну потому что маркетологи хотят 1 клик и пофиг на технические костыли! Давайте делайте! Юзеры хотят! Чо самый умный что ли тут?

Ответить
2

Это не костыль, это изящное техническое решение. Другое дело, что оно очень, очень неэтичное

Ответить
0

Изящного тут ничего нет, оно очевидное и настолько неэтичное что его никто не использует.

Ответить
4

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

Кстати, советую утилитки Патрика Уордла, одна из них прекрасно показывает какой процесс пытается подцепиться к включенной камере или активировать ее. Можно или разрешить или запретить процесс.

Ответить
2

Надо срочно выпустить iTape for iMac

Ответить
–3

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

Ответить
1

Шеф, в данном случае речь в статье идет про маки, и комментарий мой относится к макам. За остальное железо (различные виндо/линухобуки) не ручаюсь, вполне допускаю что там все не так гладко и продуманно на железячном уровне.
А утверждение что я не шарю в безопасности как то очень уж голословно :)

Ответить
4

У меня есть гарантированный случай, когда камера работала, а диод не горел. Программный баг.

Ответить
2

Выглядеть как диод, работать как диод и быть диодом - вещи разные)))

Ответить
0

Именно на макбуке? И как давно?

Ответить
1

Макбук Про 2015. Пару лет назад или около того. Более не повторялось с тех пор в том же приложении. Так что похоже на баг. Но если такой баг возможен, то уже все возможно)

Ответить
–1

Более того, в данном конкретном случае ещё и приложение zoom откроется на весь экран, это очень сложно не заметить.

Ответить
6

Неплохо было бы добавить в статью, как временно выпилить этот сервер: https://gist.github.com/karanlyons/1fde1c63bd7bb809b04323be3f519f7e

Ответить
–5

Купи ноут за 200000 чтобы на тебя смотрел весь мир.

Ответить
1

Купи шлакоблок на винде за 12к и радуйся жизни

Ответить
–1

Ясен пень, за 12к макбук не купишь.

Ответить
3

Пффф, причем тут ноут за двести? Если проблема в стороннем сервисе и дерьмовой архитектуре спроектированного приложения🤦‍♀️Такое и на лине будет работать и на винде.

Ответить
0

На Hackintosh тоже работает.

Ответить
1

А что он с белым диодом при включении камеры делает?

Ответить
10

Он его заклеил, чтобы не смущал. Оставил только камеру.

Ответить
3

Мой вариант бесплатной заглушки для камеры без наклеек:

Ответить
2

В новом обновлении исправили

Release notes of 4.4.53932.0709:

Remove local web server

-We are discontinuing the use of a local web server on Mac devices. Following the update, the local web server will be completely removed from the Zoom installation

Option to uninstall Zoom

-Zoom users can now uninstall the Zoom desktop application and all of its components through the settings menu

Ответить
0

А раньше было нельзя uninstall the Zoom desktop application and all of its components, прикольный дизайн аппа

Ответить
–1

Думаю нельзя было через само приложение, а только как обычное приложение удалить, но сейчас судя по всему они удаляют все включая веб-сервер

Ответить
1

Не прокатило, удаляем

Ответить
0

Как так? Нам же хипстеры раструбили, что у яблока есть какой-то супер чип безопасности. Т1 или как?

Ответить

Комментарий удален

0

Гуманитарии в диодах не разумеют

Ответить
0

заклеил камеру - нет проблем

Ответить
0

там чтоб камера работала разве не требуются разрешения от приложения?

ну то есть обычно спрашивает "ходите дать доступ к камере/микрофону приложению" если ДА то введите пароль

Ответить
0

Нет веб-камеры - нет проблем )

Ответить
{ "page_type": "article" }

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fizc" } } }, { "id": 4, "label": "Article Branding", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "cfovx", "p2": "glug" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "bugf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjog" } } }, { "id": 10, "disable": true, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "disable": true, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "bscsh", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "bugf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-223676-0", "render_to": "inpage_VI-223676-0-1104503429", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=bugf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Баннер в ленте на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudx", "p2": "ftjf" } } }, { "id": 16, "label": "Кнопка в шапке мобайл", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byzqf", "p2": "ftwx" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fzvc" } } }, { "id": 19, "disable": true, "label": "Тизер на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "p1": "cbltd", "p2": "gazs" } } } ] { "page_type": "default" }