15 мая 2022 г.

Как Facebook обнаружило Pegasus NSO Group

Сравнительно недавно вы, наверное, слышали про обнаружение шпионского ПО, которое было обнаружено на телефонах многих политиков, оппозиционеров, крупных предпринимателей, журналистов и известных людей. Pegasus от израильской компании NSO Group читало все что происходит на телефоне жертвы и даже в режиме реального времени могло незаметно подслушивать и включать камеру.

Это пост о том как специалисты компании Facebook* обнаружили эксплойт (программный код использующий уязвимости программного обеспечения устройства жертвы) и отследили его разработчика.

2 мая 2019 года один из сотрудников компании Facebook, ответственный за видеозвонки в приложении WhatsApp, работал над автоматическими сообщениями WhatsApp, при инициализации видеозвонка. В одном из таких сообщений обнаружились странные инструкции, которых там не должно было быть.

К слову сказать, подобные странности в такой огромной компании совсем не редкость. Причиной тому может быть более старая версия WhatsApp клиента или например стресс-тест самой Facebook для симуляции кибератаки на инфраструктуру компании.

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

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

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

На совещании с высшим руководством компании Facebook специалистам было дано 48 часов на расследование проблемы и определение количества жертв. Так же было решено пока не сообщать в правоохранительные органы, потому как опасались утечки информации, что тоже может подсказать злоумышленникам, что те обнаружены.

Штаб-квартира NSO Group находится в пригороде Тель-Авива (Израиль). NSO Group держит свои наработки в секрете и обеспечивается это, довольно обширным, отделом информационной безопасности. Он отвечает за то чтобы не было прямого трафика между устройством жертвы и серверами компании, для этого на они покупают VPN-сервера по всему миру. Да и вообще все настроено так, что бы сообщения нельзя было отследить.

Логотип NSO Group

Тем не менее инженерам Facebook удалось отследить трафик и узнать ip-адрес злоумышленника и выяснить количество жертв (примерно 14 тысяч). Среди них оказались правозащитники, журналисты, политики и многие другие.

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

Таким образом не требовалось ни каких действий со стороны владельца телефона и появилась возможность изменить код WhatsApp как нужно злоумышленнику.

Уже через три дня руководство Facebook уведомило правоохранительные органы о действиях NSO Group и обновлениями закрыло уязвимости.

* принадлежат корпорации Meta, которая признана экстремистской и запрещена в РФ

Комментариев нет:

Отправить комментарий