Изследователи по сигурността успяха да изпълнят собствен код в защитена зона на Windows, проектирана да остане изолирана дори при пълен контрол на атакуващ над останалата част от компютъра.
Защитената зона представлява VBS анклав — изолиран сегмент от паметта, който операционната система използва за защита на критични данни, като компрометираният от тях компонент обработва пароли за функцията на Windows срещу фишинг.
Проучването е проведено в лабораторна среда като концептуално доказателство (proof of concept), не е засичано при реални атаки, а Microsoft отстрани уязвимостта в своята актуализация от 8 септември 2026 г.
Уязвимостта се следи под идентификатор CVE-2026-83498. Microsoft я определя като проблем с ескалация на привилегии от критично ниво (Critical) с CVSS оценка 7.8, като посочва, че тя не е била експлоатирана и не е била публично известна преди издаването на корекцията за сигурност. Компанията отбелязва също, че е открила същия проблем и вътрешно. Проучването на фирмата за сигурност Doyensec беше публикувано на 13 октомври, повече от месец след появата на съответната корекция за сигурност.
VBS анклавът е подписана библиотека, която нормална програма на Windows зарежда, но не може да чете или променя след стартирането ѝ. Хипервайзорът на Windows поддържа паметта на анклава в по-доверена среда, наричана VTL1 или Isolated User Mode, до която обикновеният код от стандартната среда (VTL0) няма достъп, според Microsoft.
Архитектурата има за цел да защити вътрешното съдържание дори ако даден атакуващ вече е компрометирал стандартното ядро или разполага с права SYSTEM. Изпълнението на избран от атакуващия код в тази изолирана среда прави настоящото изследване толкова забележително.
Анклавът, атакуван от Doyensec, е SFAPE.dll — компонентът, отговорен за функцията Enhanced Phishing Protection в Microsoft Defender SmartScreen. Тази функционалност следи въвеждания или поставян текст и ви предупреждава, ако въведете паролата си за вход в Windows на несигурно място, като например Notepad или фишинг страница.
За да постигне това, без да излага паролата на риск, Windows я прихваща при влизане и я съхранява в хеширан вид вътре в анклава, за да може последващите въвеждания да се сравняват с нея. В система с Windows 11 програмата, която зарежда този анклав, е lsass.exe — процесът, управляващ идентификационните данни за вход, който се изпълнява с права SYSTEM.
Атаката не може да се извърши дистанционно. Тя изисква вече работеща програма на машината, която зарежда и извиква анклава — в случая със SFAPE това е LSASS. Оценката на самата Microsoft потвърждава това: векторът на атака е локален, а атакуващият се нуждае от нисконивов достъп без съдействие от страна на потребителя. Накратко, това е метод, чрез който вече установен код може да проникне в съседната по-доверена среда, а не начин за първоначален пробив отвън.
От Doyensec изграждат атаката въз основа на малка грешка, която разгръщат стъпка по стъпка. Повторното извикване на функцията Initialize на анклава го кара да запише фиксирана четирибайтова стойност за грешка на адрес, контролиран от извикващата програма, като при втория път се пропуска проверката на адреса, извършвана при първото извикване.
От Doyensec подчертават, че това само по себе си е недостатъчно, отбелязвайки, че определянето му като произволен запис „би било огромно преувеличение“. Насочен към точното място обаче, този запис поврежда стойността, която анклавът използва за разграничаване на собствената си памет от тази на хоста, при което проверката за безопасност спира да функционира. Оттам нататък грешка във времевия интервал (timing bug) в друга функция задейства контролирано изчистване на памет. Това изчистване пренасочва начина, по който анклавът търси съхранен обект, а последващите операции за четене и запис позволяват на изследователите да заменят таблицата, определяща кой код може да се изпълнява в анклава.
Резултатът е изпълнение на избран от атакуващия код вътре в анклава. Проучването нарушава изолацията на анклава, но не демонстрира прочитане или кражба на потребителска парола, а бюлетинът на Microsoft описва въздействието като изтичане на данни от анклава или изпълнение на код в него.
Microsoft коригира уязвимостта в сборната актуализация KB5124008 от 8 септември 2026 г. за Windows 11 версии 24H2 и 25H2. От Doyensec сравниха старите и новите файлове и установиха, че коригираният анклав вече проверява адреса преди този първи запис и въвежда по-строг контрол във функцията, от която се възползваше грешката във времевия интервал.
Актуализацията включва и нова политика, която напълно забранява зареждането на стария, уязвим анклав, така че защитената система да не може да го стартира. Не се изисква отделно временно решение; необходимото действие е инсталирането на корекциите за сигурност.
След тази корекция обаче остава един пропуск. Windows не разполага с общ черен списък за блокиране на уязвими анклави, подобен на списъка за уязвими драйвери, а септемврийската политика блокира единствено стария файл на SFAPE. По-стар анклав на Microsoft Edge с подобна уязвимост при четене и запис (CVE-2023-36880 от 2023 г.) все още има разрешение за зареждане, според Doyensec.
Остава неясно дали това е съзнателно решение или недоглеждане. Това има съществено значение, тъй като зареждането на подписан, но уязвим анклав е известен похват, наричан понякога „донесете си собствен уязвим анклав“ (bring your own vulnerable enclave), който предишни изследвания на Akamai и Outflank са използвали за скриване на код и данни от инструментите за сигурност. Блокирането на един компрометиран анклав, докато друг остава достъпен за зареждане, запазва възможността за използване на този трик.