Анализ уязвимости 0day в ядре Windows: может повлиять на безопасность экосистемы Web3

robot
Генерация тезисов в процессе

Анализ уязвимости 0day в системе Microsoft Windows: возможность полного контроля над системой

В прошлом месяце обновление безопасности Microsoft исправило уязвимость повышения привилегий в ядре Windows, которая использовалась хакерами. Эта уязвимость в основном существует в ранних версиях Windows и не может быть вызвана в Windows 11. В этой статье будет проанализировано, как злоумышленники могут продолжать использовать эту уязвимость на фоне постоянного совершенствования текущих механизмов безопасности. Наша аналитическая среда — Windows Server 2016.

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

Numen эксклюзив: уязвимость 0day Microsoft может взорвать игровую площадку Web3 на системном и физическом уровнях

Анализ патча показывает, что проблема заключается в обработке подсчета ссылок на объект в модуле win32k. Ранние комментарии в исходном коде указывают на то, что предыдущий код блокировал только объект окна, не блокируя объект меню в окне, что могло привести к неправильной ссылке на объект меню.

Numen эксклюзив: уязвимость 0day от Microsoft может разрушить Web3 на системном и физическом уровнях

Мы создали специальную структуру многоуровнего вложенного меню для активации уязвимости. Ключевым моментом является удаление ссылки на определенное подменю и освобождение его, когда функция xxxEnableMenuItem возвращает уровень пользователя. Таким образом, когда функция снова войдет в ядро, ранее ссылающийся объект меню уже станет недействительным.

Numen эксклюзив: уязвимость 0day от Microsoft может вскрыть Web3 игры на системном и физическом уровнях

При реализации эксплуатации уязвимости мы в основном рассматривали два варианта: выполнение shellcode и использование примитивов чтения и записи для изменения токена. Учитывая механизмы безопасности высоких версий Windows, мы выбрали второй вариант. Весь процесс эксплуатации делится на два этапа: сначала контролируем значение cbwndextra, затем устанавливаем стабильные примитивы чтения и записи.

Numen эксклюзив: уязвимость Microsoft 0day может разрушить Web3 на системном и физическом уровнях

Чтобы записать первые данные, мы использовали одну точку записи в функции xxxRedrawWindow. Путем тщательной компоновки памяти мы можем контролировать данные памяти соседних объектов, что позволяет проверить их через флаги в функции.

Numen эксклюзив: уязвимость 0day Microsoft может разрушить Web3 на системном и физическом уровнях

В плане размещения памяти мы спроектировали три последовательных объекта HWND, освободив один из них и заняв его объектом HWNDClass. Передние и задние объекты HWND используются для проверки и реализации операций чтения и записи. Мы также используем адреса утечек дескрипторов ядра в области кучи для точного определения, соответствует ли расположение объектов ожидания.

Numen эксклюзив: уязвимость Microsoft 0day может разрушить Web3 игру на системном + физическом уровнях

В конце концов, мы используем GetMenuBarInfo() для реализации произвольного чтения, SetClassLongPtr() для реализации произвольной записи. Кроме изменения операций TOKEN, все другие записи выполняются с использованием объекта класса первого окна.

Numen эксклюзив: уязвимость 0day Microsoft может разрушить Web3 на системном и физическом уровне

В общем, хотя уязвимости модуля win32k существуют уже давно, Microsoft пытается переписать соответствующий код на Rust, и в будущем такого рода уязвимости могут быть устранены в новой системе. Текущий процесс эксплуатации не является особенно сложным, он в основном зависит от утечки адреса дескриптора кучи рабочего стола. Улучшение обнаружения покрытия кода и целенаправленное обнаружение аномальных операций с памятью могут быть эффективными способами выявления подобных уязвимостей.

Numen эксклюзив: уязвимость 0day от Microsoft может нарушить Web3 на системном и физическом уровнях

Посмотреть Оригинал
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Награда
  • 5
  • Поделиться
комментарий
0/400
MissingSatsvip
· 07-11 05:50
Кошелек放马内?
Посмотреть ОригиналОтветить0
GigaBrainAnonvip
· 07-11 05:50
Фу, опять придется мучить обновление системы.
Посмотреть ОригиналОтветить0
PanicSellervip
· 07-11 05:46
Так страшно, 8 Кошелек переходит на Андроид.
Посмотреть ОригиналОтветить0
LiquidatedTwicevip
· 07-11 05:45
О, снова собираетесь подорвать Кошелек?
Посмотреть ОригиналОтветить0
DAOplomacyvip
· 07-11 05:39
еще один субоптимальный защитный примитив смх...
Посмотреть ОригиналОтветить0
  • Закрепить