Множество софта, написанного за долгую историю доминирования Windows на пользовательском рынке, создаёт колоссальную поверхность атаки с минимальными возможностями предсказания, где и как будут проведены такие атаки. Жирным бонусом от эксплуатации уязвимостей в kernel-драйверах является получение привилегий уровня ядра ОС. А это даёт возможность отключить (либо изящно обойти) практически любой механизм защиты и мониторинга, установить руткит, бэкдор, или даже поиграться с заражением BIOS/UEFI.
Пример подобной атаки через уязвимый драйвер описали наши эксперты в детальном разборе TTP группировки вымогателей CUBA. Вот показательный кусочек кода из bat-скрипта, используемого этой группировкой:
sc.exe create aswSP_ArPot2 binPath= C: \windows\temp\aswArPot.sys type= kernel
sc.exe start aswSP_ArPot2
Здесь
aswArPot.sys – это легальный антируткит-драйвер Avast, содержащий две уязвимости: CVE-2022-26522 и CVE-2022-26523. Они позволяют создать и запустить службу уровня ядра от имени пользователя с ограниченными правами. Цель – завершить процессы EDR-агентов (в конфиге ВПО был целый список с наиболее «любимыми» ею EDR-процессами) и совершенно незаметно приступить к следующей стадии деплоя рансомвары.Что делать защите? Вот парочка полезных опенсорсных проектов-репозиториев, где собирается инфа про уязвимые драйвера: LOLDrivers (www.loldrivers.io) и Kernel Driver Utility (github.com/hfiref0x/KDU). Настраиваем фиды к себе в SIEM – и простым правилом помечаем любой чих со стороны тех сомнительных драйверов, с которыми приходится уживаться в силу невозможности обновления.