Ресерчер раскрыл уязвимость Android, которая позволяет экран блокировки фактически любому пользователю, имеющему физический доступ к устройству.
Ошибка повышения привилегий отслеживается как CVE-2022-20465 и была обнаружена исследователем Дэвидом Шутцем, который получил за нее от Google вознаграждение в размере 70 000 долларов США.
Эксплуатация позволяет злоумышленнику разблокировать телефон Android, запустив механизм сброса PIN-кода SIM-карты, который требует от пользователя ввода PUK-кода.
В этом сценарии злоумышленник, имеющий физический доступ к заблокированному устройству, должен будет заменить SIM-карту на свою, а затем ввести неправильный ПИН три раза для запуска процесса его сброса. Он предполагает запрос 8-значного кода персонального ключа разблокировки PUK.
Как только злоумышленник вводит PUK-код, ему открывается полный доступ к устройству без необходимости ввода пароля или графического ключа для разблокировки.
Проблема обусловлена ошибкой в функции .dismiss(), вызываемой после ввода PUK-кода и затрагивает устройства под управлением Android 10, 11, 12 и 13. Она предназначена для закрытия текущего экрана безопасности, который должен был быть подсказкой PUK.
Из-за этой уязвимости компонент, отслеживающий состояние SIM-карты в фоновом режиме, меняет экран безопасности прямо перед вызовом функции .dismiss(), что приводит к закрытию экрана PIN-кода/пароля и в итоге - к разблокировке телефона.
Для исправления Google изменил функцию, добавив новый параметр, в котором вызывающая функция указывает, какой тип экрана безопасности следует закрыть.
Но интересно другое: исследователь сообщил об уязвимости в Google еще в середине июня. Через пару месяцев ему ответили, что отчет является дубликатом и отклонил его.
Однако Шутц решил не останавливаться и продемонстрировал проблему на публичном мероприятий ESCAL8 в Лондоне, что не осталось незамеченным и участниками из инженерного состава Google.
В итоге гигант был вынужден признать ошибку и выплатить гонорар. Уязвимость была закрыта с выпуском ноябрьских исправлений () для Android.
Дело в том, что это вовсе не бага, а фитча, и, вероятно, предназначенная для узкого круга посвященных, учитывая предельную скорость и простоту эксплуатации, как показано на видео