Как драйвер Microsoft Defender удаляет саму защиту?

Специалисты Check Point Research нашли способ превратить легитимный подписанный драйвер Microsoft Defender BTR.sys в средство удаления файлов и изменения реестра на уровне ядра. Техника, получившая название BTR Reforged, работает в Windows от Windows 7 до Windows 11 25H2. Обычной уязвимости здесь нет, как нет и стороннего проблемного драйвера: компонент Microsoft используется по его прямому назначению, но с командами атакующего, который уже получил административные права. Следов применения метода в атаках исследователи не обнаружили: «При анализе всех собранных образцов и источников телеметрии мы не увидели свидетельств реального злоупотребления BTR.sys способом, показанным в этой работе. Вероятно, эта техника пока неизвестна злоумышленникам или не используется ими, поэтому средства обнаружения можно подготовить до того, как она появится в реальных атаках».
Как драйвер Microsoft Defender удаляет саму защиту?
Изображение носит иллюстративный характер

BTR Reforged исследовал специалист по угрозам и обратной разработке Jiří Vinopal из Check Point Research. Он представил работу на главной сцене конференций Black Hat USA 2026 и DEF CON 34; оба мероприятия прошли в Лас-Вегасе. 20 августа 2026 года Check Point Research опубликовала технический документ и инструмент для проверки концепции BTR_CLI. Публикация раскрыла не ошибку программирования, а неудачно устроенную границу доверия между администратором Windows и подписанным компонентом, способным выполнять команды в ядре.
Название BTR.sys расшифровывается как Boot Time Removal Tool. Это обязательный компонент Microsoft Defender и Windows, предназначенный для завершения очистки после перезагрузки. Когда вредоносный файл или раздел реестра заблокирован работающей системой, Defender поручает BTR.sys удалить объект во время запуска Windows. Драйвер хранится внутри MpEngine.dll как ресурс BOOTTIMETOOL и развёртывается лишь при необходимости. Добавить его в Microsoft Vulnerable Driver Blocklist или запретить через Windows Defender Application Control (WDAC) практически невозможно: вместе с опасным сценарием перестанет работать штатное восстановление Defender.
Vinopal восстановил проприетарный, недокументированный протокол транзакций BTR.sys. Каждый передаваемый драйверу конфигурационный блок зашифрован алгоритмом RC4 с 256-байтным ключом, жёстко записанным в секции .rdata. Один и тот же ключ обнаружился во всех сборках BTR.sys начиная с Windows 7. Проверка 18 различных 64-разрядных версий драйвера не выявила ни одного изменения. BTR_CLI находит MpEngine.dll в каталоге обновлений сигнатур Microsoft Defender Definition Updates, извлекает BTR.sys из ресурса BOOTTIMETOOL и формирует совместимую с ним RC4-зашифрованную транзакцию. Приносить на компьютер сторонний драйвер не требуется.
Для загрузки BTR_CLI регистрирует драйвер как службу прямой записью в ветку HKLM. Параметры службы задаются как Type = 1, Start = 1 и Group = "Boot Bus Extender". Диспетчер управления службами Service Control Manager при этом обходится, поэтому в журнале не появляется ожидаемое событие Windows Event ID 7045 — Service Installed. После запуска BTR.sys исполняет подготовленные операции в Ring 0, то есть с привилегиями ядра. В телеметрии их источником выглядит системный процесс System с PID 4, а не программа атакующего.
Возможности драйвера не ограничены очисткой одного файла. Он удаляет заблокированные файлы, каталоги, ключи и отдельные значения реестра; создаёт либо перезаписывает значения реестра любого типа. Файлы можно перемещать по путям без предусмотренных ограничений, в том числе в System32\drivers. Второй режим триггера позволяет поставить те же действия в очередь на следующую перезагрузку. Vinopal назвал момент исполнения «золотым окном»: файловая система уже доступна для записи, а пользовательские службы Microsoft Defender ещё не запущены. Поэтому BTR.sys успевает физически убрать WdFilter.sys, MsMpEng.exe и другие защитные модули прежде, чем они стартуют и заблокируют собственные файлы.
На Black Hat USA 2026 BTR_CLI вживую удалил весь стек Microsoft Defender с полностью обновлённого компьютера под управлением Windows 11 25H2. Функция Tamper Protection была включена, однако остановить операции доверенного загрузочного драйвера не смогла. Для такого сценария нужны учётная запись администратора и системная привилегия SeLoadDriverPrivilege. Если право уже назначено, но отключено в текущем токене, BTR_CLI активирует его автоматически. Получить первоначальный доступ или повысить права обычного пользователя техника не позволяет: она пригодна после захвата административной учётной записи, которой разрешена загрузка драйверов ядра.
Обычные атаки Bring Your Own Vulnerable Driver (BYOVD) опираются на подписанный сторонний драйвер с известной уязвимостью. Его можно выявить, занести в список блокировки и запретить политикой контроля приложений. BTR Reforged использует собственный драйвер Microsoft, поставляемый с установками Windows начиная с Windows 7 и нужный Defender. Check Point Research описала проблему как «архитектурную границу доверия, которую можно пересечь, если атакующий уже обладает административными привилегиями». В GitHub-репозитории BTR_CLI Vinopal указал: «Исправление не планируется». На момент публикации Microsoft публично не подтвердила такую позицию.
За пять лет до BTR Reforged в том же драйвере нашли обычную программную ошибку. В феврале 2021 года исследователь Kasif Dekel из SentinelLabs раскрыл уязвимость повышения привилегий CVE-2021-24092. Локальный пользователь без административных прав мог разместить жёсткую ссылку по пути к журналу BTR.sys и добиться перезаписи произвольного файла. Microsoft выпустила исправление 9 февраля 2021 года. Dekel объяснял позднее обнаружение так: «Мы предполагаем, что уязвимость оставалась незамеченной, потому что драйвер обычно отсутствует на жёстком диске: он помещается туда и активируется по необходимости под случайным именем, а затем удаляется». Новая техника не использует CVE-2021-24092 и не повышает привилегии, а направляет штатные возможности драйвера против системы после её административного захвата.
Похожий подход ранее встречался у группировки FIN7 в инструменте AvNeutralizer. Для вмешательства в работу средств защиты тот задействовал встроенный драйвер Windows ProcLaunchMon.sys вместе с драйвером Process Explorer. Расследование Check Point Research тоже началось не в лаборатории, а при реагировании на инцидент на скомпрометированном компьютере. Часть телеметрии выглядела подозрительно, но оказалась следствием нормальной очистки Windows Defender. В документе это описано прямо: «Работа началась во время расследования инцидента на скомпрометированной системе, где некоторые данные телеметрии конечной точки выглядели подозрительно, но в итоге были связаны с легитимной активностью Windows Defender по устранению угроз».
Обнаруживать злоупотребление можно по сочетанию событий. Sysmon Event ID 15 — FileCreateStreamHash фиксирует зашифрованный альтернативный поток данных ADS, если имя цели заканчивается на .sys:changelist. В событиях Sysmon Event ID 12 и 13 стоит искать создание либо изменение ключа службы, где значение Args содержит :changelist, а Group равно "Boot Bus Extender". Особенно подозрительна такая запись без сопутствующего Windows Event ID 7045: именно так выглядит обход Service Control Manager. Ещё один признак доступен через Sysmon Event ID 11 — FileCreate и Event ID 23 — FileDelete: быстрое появление и удаление файла-триггера \SystemRoot\Temp\BootClean.sys.
Основная мера защиты, предложенная Check Point Research, состоит в жёстком ограничении права SeLoadDriverPrivilege: оно должно оставаться лишь у учётных записей, которым действительно нужна загрузка модулей ядра. Правила мониторинга полезно подготовить заранее, пока злоупотребление BTR.sys не замечено в реальных атаках. BTR_CLI опубликован по адресу под лицензией MIT License; в разделе выпусков доступны готовые двоичные файлы x64 и x86. Издание The Hacker News запросило у Microsoft позицию по BTR.sys, а у Check Point Research дополнительные технические сведения. К моменту публикации ни Microsoft, ни Check Point Research не ответили.


Новое на сайте

Ссылка