Эксперт кибербезопасности Кенто Оки обнаружил уязвимость в защитной функции Microsoft Kernel Patch Protection (также известной как PatchGuard) в Windows. Ее эксплуатация позволяет злоумышленникам загружать вредоносный код в ядро операционной системы Windows. Также он подробно описал проблему в своем блоге и опубликовал на GitHub PoC-код для эксплуатации уязвимости.

"Уязвимость можно использовать для проведения атак. Вредоносная программа попытается зарегистрировать функцию процедуры обратного вызова, которая отображается в виртуальном адресе ядра с неподписанным кодом, что обычно невозможно достичь легитимными способами. В сценарии вредоносное ПО должно уже иметь повышенные привилегии, но это не означает, что обход бесполезен", — добавил Кенто.

За последние несколько лет было обнаружено несколько способов обхода PatchGuard, позволяющих изменить ядро с помощью неавторизованного кода. Такие методы, как GhostHook, InfinityHook и ByePg, были выявлены в 2017 и 2019 годах, и все они позволяют злоумышленникам взломать PatchGuard и подключиться к ядру через легитимную функцию, а затем изменить его внутреннюю структуру.

Несмотря на все опубликованные экспертами кибербезопасности материалы, компания Microsoft все еще не классифицирует обходы PatchGuard, как реальные уязвимости и считают их просто ошибками кода. Microsoft в конечном итоге исправила все три ранее опубликованных способа обхода PatchGuard через несколько месяцев после публикации отчетов.

Из-за непризнания компаний Microsoft подобных проблем PatchGuard как уязвимости, и, как следствие, невозможности получения вознаграждения в рамках программы обнаружения уязвимостей Microsoft, исследователи утратили интерес и перестали сообщать о подобных проблемах.