Многие говорят, что патчи безопасности Windows жизненно необходимы, ведь защищают от киберугроз. Но киберисследователи показали, что эти апдейты можно отменить. Отменив установленный патч безопасности, злоумышленник может использовать старый вредоносный код, блокирующий этот патч безопасности.
Исследователи из компании SafeBreach обнаружили механизм, позволяющий реализовать атаку с возвращением к предыдущей версии Windows. Это возвращение невидимо, постоянно и необратимо, что делает такую ??атаку угрожающей.
Аллону Левиеву из SafeBreach стало интересно, существуют ли фундаментальные компоненты Windows, которыми можно злоупотреблять подобным образом атаки BlackLotus UEFI, обходя безопасные процессы загрузки в Windows.
Эксперт обнаружил уязвимое место в процессе обновления Windows.
«Я нашел способ получить обновление Windows, чтобы обновить систему, но с контролем над всем фактическим содержанием обновлений», — сказал Левиев в интервью перед презентацией уязвимости на конференции Black Hat USA.
Используя свою технику, скомпрометировав машину, чтобы он мог войти как обычный пользователь, Левиев мог контролировать, какие обновляются файлы, какие ключи реестра изменяются, какие инсталляторы используются и т.д.
И он смог сделать все это, обойдя каждую проверку целостности, реализуемую в процессе обновления Windows. После этого он сумел понизить версию ядра ОС, библиотек DLL, драйверов. В общем, все, что он хотел.
Еще хуже, Левиев сказал, что поиск и подталкивание найденных им уязвимостей позволило ему атаковать весь стек виртуализации Windows, включая функции безопасности на основе виртуализации (VBS), которые должны изолировать ядро ??и сделать доступ злоумышленника к компьютеру менее ценным.
Атака Левиева стала еще более губительной, поскольку использование этого метода позволило ему избежать обнаружения программным обеспечением EDR или функциями Windows и все потому, что ему удалось найти роковую ошибку в проверке доверенного установщика.
Чтобы понять этот эксплойт для отката установленных апдейтов, целесообразно взглянуть на поток обновления Windows. Его можно разбить следующим образом: клиент Windows проверяет ping сервер обновления, сервер проверяет целостность папки обновления клиента перед доставкой файлов, которые затем завершаются для предотвращения модификации. В файле pending.xml создается список действий обновлений, которые необходимо установить после перезагрузки.
Исследователь нашел раздел реестра с полным путем к списку действий обновления, который не использовался доверенным установщиком, что позволило ему изменить путь и отправить специальные обновления для возврата компонентов Windows к известным уязвимым версиям.
Левиев сказал, что эти понижения версии постоянны, так как Windows Primitive Operations Queue Executor (poqexec.exe) не имеет цифровой подписи и может быть изменен для установки пустых обновлений. Также возврат необратим, поскольку средство проверки системных файлов Windows (sfc.exe) также можно изменить, чтобы не обнаруживать и не восстанавливать поврежденные файлы.
«Это полностью невозможно обнаружить, поскольку оно выполняется наиболее законным способом [и] невидимо, поскольку мы ничего не устанавливали — мы обновили систему», — сказал Левиев.
К счастью, Левиев сказал, что он общался с Microsoft, и она уже исправила основную уязвимость атаки (CVE-2024-21302) посредством внешнего обновления на этой неделе.