Исследователи нашли изъян в защите хранилища криптоключей Android

Исследователи нашли изъян в защите хранилища криптоключей Android

Исследователи нашли изъян в защите хранилища криптоключей Android

В схеме шифрования KeyStore, средства хранения криптографических ключей Android, обнаружен существенный изъян. В опубликованной на минувшей неделе работе специалисты из исследовательского подразделения телекоммуникационной компании Orange обсуждают метод, которым могут воспользоваться злоумышленники, чтобы ослабить защиту данных.

KeyStore основан на библиотеке OpenSSL и позволяет приложениям для Android сохранять и генерировать свои собственные криптографические ключи. Проблема связана с тем, что он использует метод хеширование-перед-шифрованием (hash-then-encrypt или HtE) схемы аутентификационного шифрования в режиме сцепления блоков шифротектса (CBC). Исследователи утверждают, что такая схема не гарантирует целостность ключей и позволяет злоумышленникам провести фальсификационную (forgery) атаку, пишет xakep.ru.

«К несчастью, разработчики систем по-прежнему склонны выбирать не те криптографические схемы, безопасность которых доказана, а те, которые кажутся более простыми, — пишут авторы работы. — Мы в который раз демонстрируем, что такой выбор неудачен и обычно ведёт к серьёзным последствиям для всей системы».

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

Для проведения атаки на устройстве жертвы должно быть установлено вредоносное приложение, имеющее разрешения на чтение и запись в директории KeyStore. После этого оно может, к примеру, сократить длину ключей HMAC с 256 до 32 разрядов. Защиту, основанную на таких слабых ключах, не составлит труда сломать.

В теории, Android ограничивает доступ к директории KeyStore, однако при желании любое ограничение можно обойти. Исследователи видят два основных способа: вредоносное приложение может либо воспользоваться одной из уязвимостей, допускающих исполнение произвольного кода, либо каким-то образом поднять свои привилегии до уровня администратора или даже ядра.

Это не теоретические рассуждения. В опубликованной ими работе описана успешная атака такого типа, которую исследователям удалось провернуть под одной из свежих сборок Android — android-6.0.1_r22. Авторы работы полагают, что это первая атака против KeyStore, использующая криптоанализ.

Исследователи ещё в январе предоставили информацию о найденном ими метода атаки разработчикам Android в Google. Гугловские специалисты по безопасности признали, что защита KeyStore оставляет желать лучшего, и заверили, что в будущем схему шифрования изменят, но этим всё и ограничилось. Когда произойдут обещанные изменения, исследователи не знают.

Copy Fail в Linux: локальная уязвимость позволяла получить root-доступ

Разработчики популярных Linux-дистрибутивов начали выпускать патчи, закрывающие уязвимость Copy Fail. Брешь получила идентификатор CVE-2026-31431 и позволяет локальному пользователю повысить права до root. Проблеме присвоили высокий уровень опасности — 7,8 балла по CVSS.

Уязвимость связана с логической ошибкой в криптографическом компоненте ядра Linux — authencesn / algif_aead.

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

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

Исследователи подготовили proof-of-concept: эксплойт помещается в Python-скрипт на 10 строк и может модифицировать setuid-бинарник, чтобы получить root на большинстве Linux-дистрибутивов, выпущенных с 2017 года. По словам Theori, Copy Fail напоминает Dirty Cow и Dirty Pipe, но не требует гонку состояний (race condition).

Удалённо сама по себе уязвимость не эксплуатируется, атакующему нужен локальный доступ к системе. Но её можно использовать в цепочке атак, например после компрометации через web-RCE, SSH-доступ или вредоносный CI-runner. Особенно внимательно к патчам стоит отнестись тем, кто использует многопользовательские Linux-системы, контейнеры с общим ядром и CI-среды, где запускается недоверенный код.

Theori также считает, что Copy Fail можно использовать для побега из контейнера, поскольку кеш общий для хоста. Патчи уже выпустили разработчики Debian, Ubuntu, SUSE и Red Hat.

RSS: Новости на портале Anti-Malware.ru