Критическая уязвимость в процессорах ARM (CVE‑2025‑10263) позволяет повышать привилегии через рассинхронизацию кэша трансляции

Arm

ARM раскрыла информацию об уязвимости CVE‑2025‑10263 в нескольких моделях своих процессоров. Проблема связана с операциями инвалидации TLB (кэша трансляции виртуальных адресов в физические) и может привести к записи в ресурсы, принадлежащие более высокому уровню исключений (Exception Level). В случае эксплуатации уязвимости злоумышленник способен добиться повышения привилегий в системе. Особую опасность это представляет для сред виртуализации на базе гипервизора Xen: гостевая операционная система может получить возможность записи в память гипервизора, что полностью разрушает изоляцию между виртуальными машинами.

Уязвимости присвоен базовый балл 9.1 по шкале CVSS (Common Vulnerability Scoring System), что соответствует критическому уровню опасности. Проблема проявляется только на многоядерных процессорах ARM, поскольку она возникает из‑за рассинхронизации между инструкциями TLBI (TLB Invalidation - очистка записи в кэше трансляции) и DSB (Data Synchronization Barrier - барьер синхронизации данных) при одновременной работе нескольких ядер.

Анализ и контекст

Техническая причина уязвимости кроется в особенностях выполнения последовательности операций TLBI и DSB на разных ядрах. Инструкция DSB должна фиксировать завершение операции TLBI, то есть гарантировать, что изменения в кэше трансляции уже видны всем другим ядрам. Однако из‑за архитектурных особенностей процессоров DSB на одном ядре может завершиться раньше, чем операция записи на другом ядре станет глобально видна. В результате операция записи может быть выполнена уже после того, как через TLBI были изменены права доступа к памяти. Таким образом, злоумышленник способен обойти механизмы контроля доступа, основанные на таблицах трансляции виртуальных адресов (Stage 1) и трансляции адресов виртуальной машины (Stage 2), а также защиту целостности памяти GPT (Granule Protection Table - таблица защиты гранул, используемая для изоляции областей памяти). Например, гипервизор может выполнить TLBI для запрета доступа к определённой области памяти для гостевой системы, но из‑за рассинхронизации гостевая система продолжит запись в эту память, несмотря на формальное подтверждение прекращения доступа.

Под удар попадают как потребительские, так и серверные процессоры. В бюллетене безопасности ARM приведён полный список затронутых моделей: C1‑Ultra, C1‑Premium, Neoverse V3 и V3AE, Neoverse V2, Neoverse V1, Neoverse N2, Neoverse N1, Cortex‑X925, Cortex‑X4, Cortex‑X3, Cortex‑X2, Cortex‑X1 и X1C, Cortex‑A710, Cortex‑A78, A78AE и A78C, Cortex‑A77, Cortex‑A76 и A76AE, а также NVIDIA Olympus. Это означает, что многие современные мобильные устройства, встраиваемые системы, серверы и облачные инфраструктуры на базе ARM потенциально уязвимы. Особенно критичной угроза становится для провайдеров облачных услуг, использующих процессоры Neoverse в сочетании с гипервизором Xen: эксплуатация уязвимости позволяет гостевой системе скомпрометировать гипервизор, а затем и другие виртуальные машины на том же физическом узле.

Рекомендации и исправления

ARM уже выпустила патчи для ядра Linux и Trusted Firmware‑A, а также для самого гипервизора Xen. Соответствующее предупреждение (XSA‑493) опубликовано на сайте Xen Project. Пока корректирующие обновления не вошли в состав официальных дистрибутивов, вендор предлагает обходной путь: для любого программного обеспечения, выполняющего инвалидацию TLB, применяемую к информации Stage 1 или Stage 1 и 2, необходимо выполнить дополнительную инструкцию TLBI и DSB. Точная последовательность действий зависит от конкретной модели процессора и описана в документе с описанием errata (ошибки проектирования) для каждого затронутого чипа.

В примечании ARM говорится: "Чтобы обойти эту проблему, любое программное обеспечение, выполняющее инвалидацию TLB, применяемую к информации Stage 1 или Stage 1 и 2, должно выполнить дополнительную TLBI и DSB. Более подробные сведения о точной последовательности можно найти в errata для каждого затронутого процессора".

Резюме

Уязвимость CVE‑2025‑10263 представляет собой серьёзную угрозу для систем, использующих многоядерные процессоры ARM, особенно в виртуализированных средах. Она позволяет обойти аппаратные механизмы изоляции памяти и повысить привилегии до уровня гипервизора. Организациям рекомендуется как можно скорее установить патчи, выпущенные ARM и Xen Project, либо применить описанные обходные меры. Промедление с обновлением может привести к тому, что злоумышленник, имеющий доступ к гостевой системе, получит полный контроль над гипервизором и всеми виртуальными машинами. Необходимо также проверить, какие модели процессоров используются в инфраструктуре, и при необходимости обратиться к вендору оборудования за дополнительными рекомендациями.

Ссылки

Комментарии: 0