Уязвимость в Android, позволяющая обойти блокировку экрана

Автор Сообщение
news_bot ®

Стаж: 6 лет 2 месяца
Сообщений: 27286

Создавать темы news_bot ® написал(а)
12-Ноя-2022 00:56

В платформе Android выявлена уязвимость (CVE-2022-20465), позволяющая отключить блокировку экрана путём перестановки SIM-карты и ввода PUK-кода. Возможность отключения блокировки продемонстрирована на устройствах Google Pixel, но так как исправление затрагивает основную кодовую базу Android, вероятно, что проблема касается и прошивок от других производителей. Проблема устранена в ноябрьском наборе исправлений проблем с безопасностью для Android. Обративший внимание на проблему исследователь получил от компании Google вознаграждение, размером 70 тысяч долларов.
Проблема вызвана неверной обработкой разблокировки после введения PUK-кода (Personal Unblocking Key), применяемого для возобновления работы SIM-карты, заблокированной после многократного неверного введения PIN-кода. Для отключения блокировки экрана достаточно установить в телефон свою SIM-карту, в которой выставлена защита на основе PIN-кода. После смены SIM-карты, защищённой PIN-кодом, на экран вначале выводится запрос PIN-кода. Если три раза неверно ввести PIN-код, произойдёт блокировка SIM-карты, после чего для разблокировки будет предоставлена возможность ввести PUK-код. Оказалось, что верный ввод PUK-кода не только разблокирует SIM-карту, но приводит к переходу в основной интерфейс в обход хранителя экрана, без подтверждения доступа при помощи основного пароля или графического ключа.
Извините, данный ресурс не поддреживается. :( Уязвимость вызвана ошибкой в логике проверки PUK-кодов в обработчике KeyguardSimPukViewController, отвечающем за отображение дополнительного экрана аутентификации. В Android используется несколько типов экранов аутентификации (для PIN, PUK, пароля, графического ключа, биометрической аутентификации) и эти экраны вызываются последовательно, когда требуется выполнение нескольких проверок, например, когда требуется PIN и графический ключ.
При верном вводе PIN-кода срабатывает вторая стадия проверки, требующая ввода основного кода разблокировки, но при вводе PUK-кода подобная стадия пропускается и доступ предоставляется без запроса основного пароля или графического ключа. Отбрасывание следующего этапа разблокировки производится так как при вызове KeyguardSecurityContainerController#dismiss() не производится сравнение ожидаемого и пройденного метода проверки, т.е. обработчик считает, что смены метода проверки не произошло и завершение проверки PUK-кода свидетельствует об успешном подтверждении полномочий.
Уязвимость была выявлена случайно - у пользователя разрядился телефон и после зарядки и включения он несколько раз ошибся при вводе PIN-кода, после чего снял блокировку PUK-кодом и удивился, что система не запросила основной пароль, используемый для расшифровки данных, после чего зависла с сообщением "Pixel is starting…". Пользователь оказался дотошным, решил разобраться в чём дело и стал разными способами экспериментировать с вводом PIN- и PUK-кодов, пока случайно не забыл перезагрузить устройство после смены SIM-карты и не получил вместо зависания доступ к окружению.
Особый интерес представляет реакция Google на сообщение об уязвимости. Информация о проблеме была отправлена в июне, но до сентября исследователь так и не смог добиться вразумительного ответа. Он посчитал, что подобное поведение объясняется тем, что он не первый, кто сообщил о данной ошибке. Подозрения, что что-то идёт не так возникли в сентябре, когда проблема осталась неисправленной после установки обновления прошивки, впущенного спустя 90 дней, когда уже истёк заявленный период неразглашения.
Так как все попытки узнать состояние отправленного сообщения о проблеме приводили лишь к автоматизированным и шаблонным отпискам, исследователь попытался связаться лично с работниками Google для выяснения ситуации с подготовкой исправления и даже продемонстрировал уязвимость в лондонском офисе Google. Лишь после этого работа по устранению уязвимости сдвинулась с мёртвой точки. В ходе разбора оказалось, что о проблеме уже кто-то сообщал ранее, но Google решил сделать исключение и выплатить вознаграждение за повторное сообщение о проблеме, так как только благодаря настойчивости его автора на проблему обратили внимание.
===========
Источник:
OpenNet.RU
===========

Похожие новости: Теги для поиска: #_android, #_screen, #_lock
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 01-Май 07:59
Часовой пояс: UTC + 5