17.04.2024

В Android 14 пользователь не сможет изменить системные сертификаты, даже при наличии root-доступа

Разработчики HTTP Toolkit, открытого инструментария для инспектирования HTTPS-трафика, обратили внимание на изменение способа обновления сертификатов удостоверяющих центров (CA) в будущем выпуске платформы Android 14. Системные сертификаты больше не будут привязаны к прошивке, а станут доставляться отдельным пакетом, обновляемым через Google Play.

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

Вместо каталога /system/etc/security/cacerts сертификаты в Android 14 загружаются из каталога /apex/com.android.conscrypt/cacerts, размещённого в отдельном контейнере APEX (Android Pony EXpress), содержимое которого доставляется через Google Play, а целостность контролируется цифровой подписью Google. Таким образом, даже полностью контролируя систему с правами root пользователь не сможет изменить содержимое списка системных сертификатов. Новая схема хранения сертификатов может привести к трудностям у разработчиков, занимающихся обратным инжинирингом, инспектированием трафика или исследованием прошивок, а также потенциально может усложнить разработку проектов, развивающих альтернативные прошивки на базе Android, такие как GrapheneOS и LineageOS.

Изменение касается только системных CA-сертификатов, по умолчанию используемых во всех приложениях на устройстве, и не затрагивает обработку пользовательских сертификатов и возможность добавить дополнительные сертификаты для отдельных приложений (например, сохраняется возможность добавить дополнительные сертификаты для браузера). При этом проблема не ограничивается только пакетом с сертификатами — по мере выноса функциональности системы в отдельно обновляемые пакеты APEX, будет увеличиваться число системных компонентов, недоступных для контроля и изменения пользователем, независимо от наличия root-доступа к устройству.

Источник: https://www.opennet.ru/opennews/art.shtml?num=59722 Источник.