BTR.sys: легитимный драйвер Defender как примитив атаки в ядре
В отчёте проанализирован драйвер Windows Defender Boot-Time Removal, BTR.sys. Это подписанный Microsoft драйвер ядра, который используется в ходе легитимных операций по устранению угроз. Исследователи изучили его зашифрованный формат транзакций, конвейер выполнения, механизмы проверки целостности и конфигурацию.
Зашифрованные транзакции и конфигурация
Драйвер расшифровывает данные транзакций с помощью жёстко закодированного 256-байтного ключа RC4. Один и тот же ключ используется в 18 идентифицированных 64-битных версиях драйвера, выпущенных в период от Windows 7 до Windows 11.
Конфигурация передаётся через альтернативный поток данных ADS, предположительно с именем :changelist, привязанный к файлу драйвера.
Операции с файлами на уровне ядра
BTR.sys поддерживает операции с файлами на уровне ядра. В их числе удаление файлов, удаление каталогов и перемещение файлов.
Перемещение с пустым целевым параметром может использоваться для удаления. Если указать действительный целевой параметр, драйвер позволяет произвольно перемещать или размещать файлы, в том числе в защищённых каталогах, таких как System32drivers.
Драйвер способен обходить эксклюзивные блокировки файлов. Информацию о выполняемых операциях он записывает в файл BootClean.log. Исследовательский инструмент может настроить драйвер на последующее удаление этого журнала, что уменьшает объём данных, доступных для криминалистического анализа.
При наступлении определённого условия успешного завершения драйвер разгружается, а его объект помечается на удаление.
Риски ранней загрузки
Описанная техника использует драйвер как примитив для выполнения операций в ядре через легитимные системные механизмы, подход, известный как living-off-the-land.
Если зарегистрировать BTR.sys как драйвер, загружаемый при запуске системы, в группе Boot Bus Extender, злоумышленник сможет обеспечить его раннюю загрузку. Это позволяет выполнять операции до активации ряда компонентов защиты информации.
В отчёте продемонстрировано удаление ключей реестра, связанных со службами Defender, включая ключи, ассоциированные с WdFilter. Такая операция предотвращает загрузку драйвера защиты информации после перезагрузки.
Исследователи также описали удаление защищённых бинарных файлов Defender, обход обнаружения вредоносного драйвера и перемещение этого драйвера в каталог защищённых драйверов.
Требования для злоупотребления и признаки обнаружения
Для злоупотребления возможностями драйвера необходимы административный контроль и привилегия SeLoadDriverPrivilege. Обнаружение подобных действий должно основываться на анализе поведения, а не на наличии действительной цифровой подписи Microsoft.
К соответствующим индикаторам относятся:
- создание записей ADS
.sys:changelist; - появление вторичных потоков
.datв файлах драйверов; - загрузка
BTR.sysиз родительских процессов, не связанных с Defender; - прямое создание службы на основе реестра без событий установки службы Windows;
- использование группы
Boot Bus Extender; - быстрое создание и удаление файла
BootClean.log.
Отчет получен из сервиса CTT Report Hub. Права на отчет принадлежат его владельцу.
Ознакомиться подробнее с отчетом можно по ссылке.



