Уязвимость в модификациях ядра, сделанных Samsung для повышения безопасности Android

12 февраля 2020 года

Исследователи безопасности из группы Zero, созданной компанией Google для предотвращения атак, совершаемых с использованием ранее неизвестных уязвимостей, выявили уязвимость в используемом компанией Samsung модифицированном варианте ядра Linux, применяемом в Android-прошивке смартфонов Galaxy A50. Проблема позволяет добиться перезаписи данных в памяти и может использоваться для повышения своих привилегий и получения полного контроля за устройством.

Примечательно, что уязвимость вызвана ошибкой в подсистеме PROCA (Process Authenticator), разработанной Samsung для повышения защищённости платформы Android. PROCA обеспечивает отслеживание подлинности процессов и их соответствие изначально запущенным исполняемым файлам. Проверка осуществляется на основе цифровой подписи, хранящейся в расширенных атрибутах файла.

Из-за логической ошибки не исключена ситуация, когда аутентифицированный процесс завершился, а с тем же PID создан другой процесс, и PROCA посчитает этот процесс аутентифицированным. Более того, в случае несоответствия отслеживаемого и реального состояний процесса возможно возникновение состояния гонки (race condition), при котором создаются условия для перезаписи других структур в памяти (исходный буфер в ядре оказывается освобождённым и на его месте находятся уже другие данные).

Исследователи смогли подготовить прототип эксплоита, способного читать и записывать любые данные в памяти ядра. Несмотря на включение в ядре Samsung механизмов защиты от эксплуатации уязвимостей, таких как CONFIG_RKP_KDP, полученная возможность чтения и записи может быть использована для извлечения конфиденциальных данных из кэша ФС. Например, в прототипе эксплоита продемонстрировано определение содержимого БД учётных записей /data/system_ce/0/accounts_ce.db, включающей токены аутентификации.

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

Источники

править
 
 
Creative Commons
Эта статья содержит материалы из статьи «Уязвимость в модификациях ядра, сделанных Samsung для повышения безопасности Android», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.