Баг в Google Chrome позволяет сайтам незаметно записывать аудио и видео
На модерации
Отложенный
Сотрудник компании AOL, Ран Бар-Зик (Ran Bar-Zik) обнаружил проблему в браузере Google Chrome, благодаря которой сайты могут записывать аудио и видео, не отображая при этом соответствующий индикатор.
В сущности, баг не так страшен, ведь любому вредоносному ресурсу все равно придется запрашивать разрешение пользователя для доступа к камере и микрофону. Однако исследователь утверждает, что существует несколько векторов атак, которые позволят записывать аудио и видео без ведома жертвы. Краеугольным камнем проблемы является иконка «красный круг с точкой», которой Chrome обычно отмечает вкладки, записывающие аудио- или видеопоток, передаваемый пользователем.
Специалист заметил проблему, когда работал с сайтом, поддерживающим WebRTC. Данный протокол позволяет организовать передачу потоковых данных между браузерами или другими поддерживающими его приложениями по технологии точка-точка. Чтобы стримить контент с помощью WebRTC, пользователь сначала должен дать сайту доступ к своим аудио- и видеоустройствам. Как только разрешение получено, запускается JavaScript, который записывает контент пользователя перед отправкой другим участникам WebRTC-стрима. За этот процесс отвечает MediaRecorder API.
Ран Бар-Зик обнаружил, что код, осуществляющий запись, может работать не только в той вкладке, к которой пользователь предоставил доступ. Так как разрешение на доступ к аудио- и видеоустройствам выдается всему домену, исследователь сумел открыть popup-окно, которое тоже могло записывать аудио или видео. Так как popup является отдельным окном, он не отображается на панели вкладок, соответственно, жертва не видит иконку, сигнализирующую о том, что ведется запись.
Исследователь создал специальную демо-страницу, на которой баг может увидеть и «опробовать» любой желающий. Также Бар-Зик опубликовал proof-of-concept эксплоит для данной проблемы, который свободно доступен здесь.
Хотя специалист уже уведомил разработчиков Chrome о баге, те ответили, что это нельзя классифицировать как проблему с безопасностью, хотя и пообещали сделать все возможное:
«Это не совсем уязвимость с точки зрения безопасности. К примеру, на мобильных устройствах WebRTC вообще не отображает никаких индикаторов в браузере. Иконка – это первая попытка [решить проблему], которая работает только на десктопах, когда доступно chrome UI space. Однако, как уже было сказано, мы работаем над способами улучшения ситуации».
Исследователь не согласен с точкой зрения разработчиков. Он говорит, что большинство пользователей предоставляют приложениям и сайтам любые разрешения, даже не читая, на что именно они кликают. Бар-Зик объясняет, что злоумышленник может замаскировать свою атаку под совсем небольшой popup, который легко не заметить, или выдать всплывающее окно за рекламу. Если пользователь предоставит сайту доступ к своему микрофону и камере, а после не потрудится закрыть появившееся окно, атакующий сможет часами наблюдать за своей жертвой, как в шпионских боевиках.
Хуже того, атакующий может даже не создавать собственный вредоносный сайт, вместо этого можно использовать XSS-уязвимость на другом легитимном ресурсе, который уже имеет доступ к аудио- и видеоустройствам пользователя.
Комментарии