ITScape (CVE 2026 46316) — це критична вразливість у гіпервізорі KVM для ARM серверів, що дозволяє зловмисній віртуальній машині вирватися за межі ізольованого середовища та виконати довільний код на хості з правами я... Проблема полягає в «стані гонитви» під час інвалідації кешу трансляції переривань віртуального к...

Create a landscape editorial hero image for this Studio Global article: What is the CVE-2026-46316 ("ITScape") vulnerability in Linux KVM/arm64's vGIC-ITS emulation, including its root cause as a race condition i. Article summary: Here is the full breakdown of **CVE-2026-46316 ("ITScape")**, based on the available evidence.. Topic tags: general, general web, user generated, government. Reference image context from search candidates: Reference image 1: visual subject "| CVE-2026-7572An off-by-one error (CWE-193) in the ConsumeUnit16Array and ConsumeUnit64Array functions in Velocidex Velociraptor before version 0.76.5 on Windows and Linux allows" source context "Latest Linux Vulnerabilities" Reference image 2: visual subject "# CVE-2026-23425: Linux Kernel Privilege Escalation Flaw. CVE-2026-23425 is a privilege escalation vulnerability in the Linux kernel affecting KVM ARM64 ID register i
Уразливість типу «використання після звільнення» (use-after-free) у підсистемі KVM/arm64 ядра Linux дає змогу спеціально підготовленій віртуальній машині вирватися зі своєї «пісочниці» та отримати повний контроль над хост-системою. Ця проблема, що отримала ідентифікатор CVE-2026-46316 та назву ITScape, є першим публічно задокументованим успішним експлойтом для втечі з гостьової системи на хост для KVM на архітектурі arm64. Це змушує всіх хмарних провайдерів, що використовують багатокористувацькі ARM-сервери, перейти в режим екстреного оновлення .
Про вразливість повідомив дослідник Хьонву Кім (Hyunwoo Kim) на початку червня 2026 року. Проблема не є суто теоретичною — на GitHub опубліковано повністю робочий код для демонстрації експлойту (Proof-of-Concept). Він ініціює «стан гонитви» за допомогою одночасної роботи декількох потоків віртуального процесора, які надсилають команди DISCARD ITS, поки кеш трансляції LPI проходить процедуру інвалідації . Результат — повна компрометація хосту зсередини ненадійної віртуальної машини.
ITScape — це «стан гонитви» (race condition) у реалізації сервісу трансляції переривань віртуального контролера переривань (vGIC-ITS), що вбудований в ядро KVM. Цей сервіс обробляє трансляцію логічних переривань процесора (LPI) для віртуалізованих гостьових систем на arm64. Коли запис у кеші трансляції потребує інвалідації, ядро проходить по всіх записах та звільняє посилання на них. Вразливість полягає в тому, що функція інвалідації зменшувала лічильник посилань на кожен запис, який повертав ітератор — включаючи ті записи, які паралельна операція вже видалила з кешу .
Це подвійне зменшення лічильника посилань створює класичну ситуацію «використання після звільнення» (use-after-free, UAF): два шляхи виконання коду можуть почати працювати з пам'яттю, яка вже була звільнена, що дає зловмиснику вікно для маніпуляцій із «купою» та, в кінцевому рахунку, для перехоплення контролю над виконанням коду на рівні ядра хосту .
Помилка знаходиться у функції vgic_its_invalidate_cache(), яка проходить по кешу трансляції за допомогою xa_for_each() і викликає vgic_put_irq() для ітерованого вказівника, а не для значення, безпечно повернутого функцією xa_erase(). Оскільки викликати цю функцію можуть різні контексти з різними блокуваннями, «стан гонитви» цілком досяжний з гостьової системи шляхом одночасного надсилання команд ITS, запису в GITS_CTLR та очищення EnableLPIs у редистриб'юторі
.
Хоча втечі з гостьових систем на хост трапляються рідко, це найнебезпечніший клас вразливостей гіпервізора, оскільки вони руйнують бар'єр ізоляції, на якому базуються хмарні обчислення. Попередні публічні втечі з KVM були націлені на архітектуру x86, зазвичай через QEMU або код, специфічний для процесорів AMD . ITScape — це перший робочий експлойт, який демонструє втечу з непривілейованої гостьової системи на arm64 через код гіпервізора, вбудований безпосередньо в ядро — без використання помилок у емуляторах простору користувача
.
Для хмарних провайдерів, які використовують сервери на базі AWS Graviton, Ampere Altra або інші ARM-хости з KVM для багатокористувацьких навантажень, гостьова система може:
Більшість команд безпеки оцінили цю вразливість вище 9.0 балів за шкалою CVSS, що відображає її критичну серйозність .
Вразливий код знаходиться в шляху інвалідації кешу трансляції LPI. Коли ядру потрібно очистити записи кешу, воно ітерується по структурі XArray за допомогою xa_for_each() і викликає vgic_put_irq() для зменшення лічильника посилань на кожен запис. Проблема в тому, що xa_for_each() може повертати записи, які вже були видалені конкурентною операцією — наприклад, командою DISCARD ITS з іншого віртуального процесора. Цикл інвалідації все одно зменшує лічильник посилань для цього вже видаленого запису, спричиняючи подвійне звільнення та, як наслідок, ситуацію «використання після звільнення»
.
Попередня вразливість у тому ж коді, CVE-2024-26598, була частково виправлена і вирішувала UAF у шляху влучання в кеш трансляції LPI шляхом підвищення лічильника посилань у vgic_its_check_cache() перед зняттям блокування. Однак те виправлення не охопило шлях інвалідації, залишивши «стан гонитви» можливим для експлуатації через іншу послідовність тригерів
.
Офіційне виправлення змінює vgic_its_invalidate_cache() таким чином, що vgic_put_irq() викликається лише для значення, яке повернула функція xa_erase(), а не для кожного запису, який зачіпає ітератор. Повідомлення про внесення змін говорить: "KVM: arm64: vgic-its: Drop the translation cache reference only for the erased entry"
.
Оскільки xa_erase() атомарно видаляє та повертає старий запис — або повертає NULL, якщо запис уже було видалено — виправлення гарантує, що лічильник посилань буде зменшено рівно один раз, усуваючи вікно подвійного звільнення. Патч було внесено до основної гілки ядра на початку червня 2026 року, і він був швидко перенесений до стабільної серії 6.x приблизно 8–10 червня 2026 року
. Основні дистрибутиви, включаючи Red Hat, SUSE та Debian, випустили бекпортовані виправлення для своїх підтримуваних гілок ядра
.
Хьонву Кім опублікував робочий експлойт на GitHub приблизно 9–10 червня 2026 року. Репозиторій містить повний вихідний код, покрокові інструкції з відтворення та технічний опис техніки експлуатації вразливості . Експлойт активує «стан гонитви», координуючи потоки віртуальних процесорів, які одночасно видають команди DISCARD та здійснюють пошук у кеші трансляції LPI, що дозволяє точно відтворити ситуацію «використання після звільнення» для виконання коду на хості.
Публічна доступність надійного PoC означає, що стандартні сканери вразливостей та реальні зловмисники можуть легко взяти її на озброєння, що значно скорочує вікно між розкриттям інформації та активними атаками.
Якщо ви керуєте багатокористувацькою інфраструктурою KVM на arm64 — будь то AWS Graviton, Ampere Altra чи будь-яка подібна платформа — це слід розглядати як надзвичайну ситуацію для негайного встановлення патчів.
Studio Global AI
Use this topic as a starting point for a fresh source-backed answer, then compare citations before you share it.
ITScape (CVE 2026 46316) — це критична вразливість у гіпервізорі KVM для ARM серверів, що дозволяє зловмисній віртуальній машині вирватися за межі ізольованого середовища та виконати довільний код на хості з правами я...
ITScape (CVE 2026 46316) — це критична вразливість у гіпервізорі KVM для ARM серверів, що дозволяє зловмисній віртуальній машині вирватися за межі ізольованого середовища та виконати довільний код на хості з правами я... Проблема полягає в «стані гонитви» під час інвалідації кешу трансляції переривань віртуального контролера GIC, що призводить до використання пам'яті після її звільнення (use after free).
Операторам хмарної інфраструктури на ARM (наприклад, AWS Graviton) необхідно негайно встановити оновлення безпеки.