Независимый исследователь выявил в драйвере ядра ksthunk.sys уязвимость, позволяющую повысить привилегии в Windows. В Microsoft заявили, что проблема уже решена, однако проверка новейшего выпуска ОС (Windows 11 23H2) показала, что это не так.
Эксплойт был с успехом продемонстрирован в ходе майского состязания TyphoonPWN 2024 в Сеуле. Поскольку MS отказалась признавать находку за новую CVE и не предоставила данных о выпуске патча, PoC решили опубликовать, чтобы предупредить всех об угрозе.
Согласно описанию, уязвимость возникла в ksthunk.sys из-за некорректной реализации функции CKSAutomationThunk::ThunkEnableEventIrp, отвечающей за выделение в памяти буферов в ходе выполнения 32-битных процессов в 64-битной среде.
Этот обработчик не проводит проверку на целочисленное переполнение при расчете размера буфера, из-за этого при копировании данных может возникнуть переполнение буфера в куче.
Подобная ошибка открывает возможность для перезаписи токена текущего процесса с целью повышения локальных привилегий до SYSTEM.
По словам авторов информационного бюллетеня, эксплойт в данном случае не потребует больших усилий, если удастся установить контроль над размерами выделяемого буфера и целевыми данными.