?Компания Facebook исправила критическую уязвимость в приложении обмена сообщениями Facebook Messenger для Android. Ее эксплуатакция позволяла вызывающим абонентам без разрешения прослушивать окружение других пользователей до того, как абонент на другом конце ответил на звонок.
Злоумышленники могли воспользоваться этой проблемой путем отправки сообщения особого типа, известного как SdpUpdate, которое заставило бы вызов подключиться к устройству вызываемого абонента до того, как на него ответят.
«Если это сообщение отправляется вызываемому устройству во время звонка, оно немедленно начинает передачу звука, что позволяет злоумышленнику подслушивать окружение вызываемого», — пояснила Натали Сильванович (Natalie Silvanovich) из Google Project Zero.
Проблема была обнаружена в версии Facebook Messenger для Android 284.0.0.16.119 в прошлом месяце. Сильванович также предоставила основанный на языке Python PoC-код для эксплуатации уязвимости для воспроизведения проблемы в системе отслеживания ошибок Project Zero.
Для автоматического подключения вызова, PoC-код для эксплуатации уязвимости включает следующие следующие шаги:
Ожидание отправки предложения и сохранение поля sdpThrift из предложения;
Отправка сообщения SdpUpdate с sdpThift цели;
Отправка поддельного сообщения SdpAnswer злоумышленнику, чтобы устройство считало, что на звонок ответили, и воспроизвело входящий звук.
«Чтобы воспользоваться этой проблемой, злоумышленник должен уже иметь разрешения на вызов конкретного человека, минуя определенные проверки на соответствие требованиям (например, дружба на Facebook). Ему также потребуется использовать инструменты обратного проектирования, чтобы манипулировать своим приложением Messenger и заставить его отправить кастомное сообщение», — пояснила Сильванович.
Злоумышленники могли воспользоваться этой проблемой путем отправки сообщения особого типа, известного как SdpUpdate, которое заставило бы вызов подключиться к устройству вызываемого абонента до того, как на него ответят.
«Если это сообщение отправляется вызываемому устройству во время звонка, оно немедленно начинает передачу звука, что позволяет злоумышленнику подслушивать окружение вызываемого», — пояснила Натали Сильванович (Natalie Silvanovich) из Google Project Zero.
Проблема была обнаружена в версии Facebook Messenger для Android 284.0.0.16.119 в прошлом месяце. Сильванович также предоставила основанный на языке Python PoC-код для эксплуатации уязвимости для воспроизведения проблемы в системе отслеживания ошибок Project Zero.
Для автоматического подключения вызова, PoC-код для эксплуатации уязвимости включает следующие следующие шаги:
Ожидание отправки предложения и сохранение поля sdpThrift из предложения;
Отправка сообщения SdpUpdate с sdpThift цели;
Отправка поддельного сообщения SdpAnswer злоумышленнику, чтобы устройство считало, что на звонок ответили, и воспроизвело входящий звук.
«Чтобы воспользоваться этой проблемой, злоумышленник должен уже иметь разрешения на вызов конкретного человека, минуя определенные проверки на соответствие требованиям (например, дружба на Facebook). Ему также потребуется использовать инструменты обратного проектирования, чтобы манипулировать своим приложением Messenger и заставить его отправить кастомное сообщение», — пояснила Сильванович.