Сигурност

Редакция Overclock.bg ·

Драйвер на Defender трие антивирусите при boot

Драйвер на Defender трие антивирусите при boot

Изследователят Иржи Винопал от Check Point Research публикува на 20 август техника, наречена BTR Reforged, която превръща собствения драйвер на Microsoft Defender в инструмент за изтриване на антивирусен и EDR софтуер още преди Windows да е стартирал напълно. Атаката не използва нито една уязвимост — само документируемото поведение на легитимно подписан компонент. Резултатите бяха представени на Black Hat USA 2026 и DEF CON 34 в Лас Вегас, а пълният анализ е публикуван в блога на Check Point.

Какво е BTR.sys

BTR.sys (Boot Time Removal Tool) е драйверът, който Defender зарежда, когато трябва да премахне зловреден файл, заключен от работеща система. Той не се разпространява като отделен файл — стои вграден в MpEngine.dll като ресурс с име BOOTTIMETOOL и се разопакова под случайно име (например mzqnjtaq.sys), когато е нужен рестарт.

Драйверът е „еднократен”: зарежда се, изпълнява списък от операции, записва статус и се самоизключва. Именно този списък е слабото място.

Твърдо кодиран ключ от времето на Windows 7

Конфигурацията на BTR.sys се подава през алтернативен поток от данни (ADS) към самия файл — driver.sys:changelist — и е криптирана с RC4. Винопал открива, че 256-байтовият ключ е един и същ в 18 уникални 64-битови версии на драйвера, от Windows 7 build 7601 до Windows 11 25H2. Проверката за цялост е модифициран CRC-32 без финалната инверсия на битовете, тоест също напълно възпроизводима.

С тези две неща всеки може да напише собствена транзакция. Форматът поддържа шест действия:

IDДействие
1Изтриване на файл (заобикаля изключителни заключвания)
2Изтриване на директория
3Преместване/карантина — включително към System32\drivers
4Изтриване на регистърен ключ
5Изтриване на регистърна стойност
6Запис на произволна регистърна стойност

Всичко това се изпълнява от Ring 0, с правата на ядрото.

„Златният прозорец”

Най-интересната част е таймингът. BTR.sys се регистрира със Start=1 и групата Boot Bus Extender — тоест зарежда се във фаза 1 от старта на Windows, когато файловата система вече е достъпна за запис, но потребителските услуги на Defender още спят.

В измерванията на Check Point разликата е драстична: драйверът работи в 2:45:28 ч., а MpDefenderCoreService.exe тръгва чак в 2:46:02 ч. — 34 секунди по-късно. WdNisDrv.sys се появява почти четири минути след това. В този „златен прозорец” WdFilter.sys, MsMpEng.exe или бинарните файлове на всеки друг EDR могат да бъдат физически изтрити, преди да са успели да се заключат.

Драйверът дори чисти след себе си: създава \SystemRoot\Temp\BootClean.log и го изтрива, преди да се разтовари. Инструментът за демонстрация автоматично добавя действие за изтриване на този лог още в началото на веригата.

Защо това не е BYOVD

При класическите атаки „донеси си уязвим драйвер” нападателят внася чужд драйвер със слабост в кода. Тук няма внасяне и няма слабост — драйверът вече е част от Windows. И точно това го прави труден за блокиране: BTR.sys е задължителен компонент, така че не може да влезе в списъка с уязвими драйвери на Microsoft, нито да бъде спрян през WDAC, без да се счупи самият Defender.

Аналогията е с AvNeutralizer на групата FIN7, която злоупотребяваше с ProcLaunchMon.sys и драйвера на Process Explorer. Разликата е, че там ставаше дума за инструменти, а тук — за сърцето на вградената защита.

Позицията на Microsoft

За да проработи атаката, е нужен администраторски акаунт със SeLoadDriverPrivilege. Заради това MSRC отговаря след разкриването, че находките не отговарят на критериите за спешна поправка, тъй като техниката разчита на вече съществуващи административни права. Публични планове за кръпка няма.

Едно уточнение обаче е важно: инструментът инсталира услугата чрез директен запис в HKLM, заобикаляйки Service Control Manager — точно такъв запис е и най-надеждният сигнал за защитниците.

Check Point уверява, че към момента на публикуването не е засякла реална злоупотреба с BTR.sys по описания начин — нито в събраните образци, нито в телеметрията. Предишната уязвимост в същия драйвер, CVE-2021-24092, беше кръпната още на 9 февруари 2021 г.

Какво да следите

Изследването дава конкретни индикатори за Sysmon: събитие 15 при създаване на поток .sys:changelist; събития 12 и 13 за регистърни ключове на услуги с :changelist в аргументите и група Boot Bus Extender; събитие 6 (зареждане на драйвер) веднага последвано от събитие 23 (изтриване на файл) от процеса System с PID 4.

Практическият съвет е един: ограничете кой има SeLoadDriverPrivilege и не приемайте валидния подпис за индулгенция. Както отбелязва Винопал, поведенческият контекст и произходът на изпълнението трябва да допълват доверието по подпис.

Драйверите остават болното място на Windows

Историята идва в седмица, в която Microsoft отново обяснява проблеми с драйвери — този път свързва сривовете в игрите след кръпката KB5121003 с драйвери на устройства с RGB осветление, инсталиращи файлове от типа inpoutx64, пише BleepingComputer. Засегнати са ARC Raiders, MARVEL Tōkon: Fighting Souls и The Finals, а временното решение на Embark Studios е ръчно премахване на услугата и файла.

Двата случая са различни по тежест, но сочат едно и също: подписаният код в ядрото на Windows остава най-крехката част от системата. Не е случайно, че последните месеци донесоха и дупка с максимална оценка 10 в Entra ID — доверието към собствените компоненти е следващата голяма мишена.

Кодът за демонстрация BTR_CLI е публичен под MIT лиценз в GitHub, с готови binaries за x64 и x86. Ако администрирате Windows парк, си струва да напишете правилата за откриване сега — не когато някой ги използва в реална кампания. Подробностите по хронологията са и в материала на The Hacker News.

Харесва ви? Отбележете ни и ще ни виждате по-нагоре в Google.

Предпочитан източник в Google

Прочетете още