Kernel Space Mirroring Attack (KSMA) — это продвинутая техника эксплуатации ядра, нацеленная на системы Android, особенно версии 8.0 и выше. KSMA использует уязвимость в системе управления виртуальной памятью (MMU) ARM, позволяя злоумышленнику получить доступ к тексту и данным ядра напрямую из пользовательского режима (EL0) без вызова системных функций.
Основная идея атаки заключается в неправильном проектировании дескрипторов виртуальной памяти, что нарушает принцип минимальных привилегий. Благодаря этому уязвимому механизму атакующий может зеркально отобразить (mirror) пространство ядра в пользовательском режиме, получив возможность читать и записывать данные ядра. Это позволяет обходить такие современные защитные механизмы, как PXN (Privileged Execute Never) и PAN (Privileged Access Never), которые призваны ограничить доступ к привилегированным функциям ядра.
Эта техника особенно опасна, поскольку она нейтрализует защитные меры вроде ASLR (Address Space Layout Randomization) и жесткие политики SELinux, затрудняя обнаружение и предотвращение атаки. KSMA также может использоваться для выполнения рутирования Android-устройств, комбинируясь с уязвимостями, такими как race condition и use-after-free, обнаруженными в ядрах Linux начиная с версии 3.18