Zapscape, нова уязвимост в ядрото на Linux, може да позволи на атакуващ с привилегии на ниво ядро в рамките на виртуална машина (VM) гост от първо ниво (L1) да излезе от изолацията на KVM и да изпълни код на хоста. Рискът е налице, когато на ненадеждни гости е предоставена възможност за вложена виртуализация.

Проблемът се проследява като CVE-2026-64561 и засяга модула за управление на сенчестата памет (shadow MMU) на KVM/x86, който управлява сенчестите таблици на страници, използвани за превод на паметта на вложени гости.

Изследователят по сигурността Хюну Ким, който разкри уязвимостта, заяви, че демонстрираният вектор на експлоатация може да изпълнява команди на хоста с привилегии на ядрото или root.

Корекцията в основния клон (upstream) вече е слята и администраторите, управляващи KVM хостове, които предоставят вложена виртуализация на ненадеждни гости, трябва да обновят до коригирано стабилно ядро или пакет от доставчик, който съдържа портната обратно корекция за сигурност.

Необходимите привилегии на L1 ядрото обикновено означават root достъп на госта. Системите на Intel също изискват на L1 госта да бъдат предоставени дължини на EPT page-walk 4 и 5. AMD няма еквивалентно условие.

Zapscape е дефект в последователността на проверка за остарял root в отчетността на shadow-MMU на KVM, който може да доведе до използване на памет след освобождаването ѝ (use-after-free). По време на обработката на грешки в страниците (page fault), предизвикани от госта, KVM може да изиска обратно MMU страници и да анулира основната страница на shadow MMU, която все още се използва от пътя за обработка на грешки. Тъй като пътят не проверява отново root страницата, KVM може да продължи под анулираната root страница.

В техническия си доклад Ким описва проблема като use-after-free в рекурсивния път на освобождаване (zap path), използван, когато KVM изисква обратно сенчести страници. KVM проверява дали текущият root е остарял, преди да направи достъпни повече MMU страници. След това обратното изискване може да анулира същия този root, но KVM продължава пътя на грешката и създава дъщерни сенчести страници под него.

Тези дъщерни страници наследяват невалидното състояние от родителя и все още се поставят в списъка с активни MMU страници на KVM. По-късното почистване може да прикачи същата връзка на списъка към два списъка едновременно, след което да освободи страницата, докато остават остарели препратки към списъка, създавайки висяща връзка и запис след освобождаване (post-free write).

Публичната демонстрация на концепцията (PoC) на Ким използва този примитив, за да изгради пълна верига, която създава файл с права на root, наречен „/Zapscape“, на хоста, работещ с уязвимия KVM.

Демонстрацията на концепцията е насочена към AMD вложен SVM/NPT на Linux 7.1.3. Ким препоръчва тя да се изпълнява под QEMU TCG за безопасно тестване. QEMU не е уязвимото ядро. Ким отбелязва, че бъгът живее в самото ядро на KVM и се задейства независимо от емулацията на QEMU.

Докладът на Ким от 6 август включва публична демонстрация на концепцията, но не твърди, че уязвимостта е била експлоатирана в реална среда. Ким също така я описва като „неактивиран експлойт, който се изпълнява веднага“ в облачни среди, казвайки, че използването в реалния свят ще изисква преместване на L1 действията в модул на гост ядрото и адаптиране на експлойта към конфигурацията на хост ядрото и бекенда на паметта.

Националната база данни за уязвимости (NVD) изброява Linux 5.9 и по-нови версии като засегнати до стабилните версии, съдържащи корекции, включително 6.6.148, 6.12.101, 6.18.42, 7.1.6 и 7.2-rc5.

Red Hat определи предварителен CVSS рейтинг от 7.0 в своята препоръка и класифицира проблема като CWE-825 (разименуване на изтекъл показалец).

Статусът на пакетите зависи от системата за проследяване на всеки отделен доставчик на Linux, а не само от версиите на основния клон. Red Hat предупреждава, че нейните пакети често съдържат обратно портнати корекции, без да се преминава към нова версия на ядрото.

Към 6 август 2026 г. системата за проследяване на Debian посочва пакетите с ядра на bullseye, bookworm и trixie, включително техните хранилища за сигурност, като уязвими. Версията forky също е посочена като уязвима, а sid е отбелязана като коригирана във версия 7.1.6-1.

Според хронологията на разкриването, Ким е докладвал проблема на security@kernel.org на 11 юли 2026 г. Корекция за сигурност е публикувана и слята на 21 юли, проблемът е изпратен до списъка linux-distros на 1 август под 5-дневен ембарго период, а CVE-2026-64561 е присвоен на 4 август. Публичното разкриване последва на 6 август.

Корекцията, слята като commit 2abd5287f083, премества проверката за остарял root след make_mmu_pages_available(). Ако обратното изискване анулира текущия root, KVM сега рестартира грешката с RET_PF_RETRY, вместо да продължи да картографира или извлича под невалидния root.

Това разкритие следва предишна работа на Ким по KVM, включително „Januscape“ (CVE-2026-53359), отделен проблем с KVM/x86 shadow-MMU, отразен от The Hacker News през юли, и „ITScape“ (CVE-2026-46316), бягство от KVM/arm64, публикувано през юни.