Специалисты восстановили метод взлома EncroChat — полиция использовала публичный эксплойт с GitHub

Хотели анонимности — получили полицию в реальном времени внутри собственного телефона.


8g1z4hfcxjzndz3n8xliz478zt8b03sw.jpg

Одна из самых громких полицейских операций против организованной преступности в Европе неожиданно получила техническое объяснение. Специалисты восстановили, как французские правоохранительные органы в 2020 году проникли в защищённые телефоны EncroChat , и обнаружили, что в инструментах операции использовался код, который был публично доступен на GitHub.

Систему заражали через уязвимость Android CVE-2019-2215 (7.8 High), известную как Bad Binder . Ошибка в механизме Binder позволяла повысить привилегии и получить полный контроль над уязвимым устройством. Команда Project Zero раскрыла проблему в октябре 2019 года, после того как получила сведения о реальных атаках. Уязвимость просуществовала в Android почти два года, хотя в ядре Linux её исправили раньше.

Специалисты проанализировали вредоносную программу, найденную на одном из телефонов EncroChat, и установили, что она связана с опубликованной реализацией CVE-2019-2215. Код, эксплуатирующий уязвимость, был доступен на GitHub . Как удалось восстановить, французская сторона приспособила доступные наработки, чтобы получить привилегированный доступ к аппаратам.

Чтобы проникнуть в систему, одного Bad Binder было недостаточно. EncroChat не позволяла устанавливать обычные приложения и не предоставляла пользователям браузер. Злоумышленнику требовался первоначальный путь внутрь системы. В случае EncroChat таким каналом стала инфраструктура обновлений. После того как программу устанавливали на устройство, она запускалась с максимальными правами и сохраняла доступ, даже когда устройство перезагружали.

Чтобы перехватывать переписку, использовали инструмент динамического анализа Frida. Программа подключалась к приложению EncroChat и отслеживала, как в базе сообщений Realm появляются новые записи. Благодаря такому подходу сообщения копировали прямо на телефоне до того, как их зашифровывали, или после того, как их расшифровывали. Поэтому правоохранительным органам не пришлось взламывать сам алгоритм сквозного шифрования.

Официальные материалы Евроюста подтверждают, что французские власти получили технический доступ к переписке EncroChat, а часть сообщений правоохранители читали практически в реальном времени. Перехватывать сообщения перестали 13 июня 2020 года, когда оператор сети обнаружил, что систему взломали, и предупредил пользователей.

Масштаб операции оказался огромным. По данным Европола , правоохранители получили более 115 млн разговоров примерно 60 тыс. пользователей. После этого провели расследования и арестовали 6558 человек, а сумма изъятых или замороженных преступных активов приблизилась к €900 млн.

Google включила CVE-2019-2215 в бюллетень безопасности Android за октябрь 2019 года. Устройства, которые обновили после 6 октября 2019 года, защищены от уязвимости. История EncroChat показывает, как необычно иногда складывается судьба публичного кода: пример, который разработали, чтобы продемонстрировать опасную ошибку, спустя годы помог восстановить технические детали одной из крупнейших операций, в ходе которой перехватывали зашифрованную переписку.