Спецпроекты

Безопасность Стратегия безопасности Техника

Встроенный антивирус Windows научили безвозвратно уничтожать системные файлы

Специалист SafeBreach Labs доказал, что популярные антивирусные программы для Windows способны стать опасным инструментом в руках хакера. С помощью таких ИБ-решений как Microsoft Defender, Avast, AVG и SentinelOne EDR злоумышленник может с легкостью безвозвратно уничтожить любые файлы на целевой системе, даже те, стирание которых приводит к полной неработоспособности Windows.

Как превратить антивирус в вайпер

Популярные антивирусные решения для операционной системы Microsoft Windows могут быть использованы злоумышленниками для стирания информации на компьютере жертвы. К такому выводу пришел исследователь безопасности Ор Яир (Or Yair) из компании SafeBreach Labs.

Специалист разработал вайпер (программа-стиратель) нового поколения, который, обладая привилегиями пользователя, способен уничтожать любые файлы на целевой машине, в том числе системные, при этом оставаясь незаметным для антивирусного ПО.

Более того, вредоносная программа, получившая название Aikido (по аналогии с одноименным японским видом боевых искусств, техника которого основана на использовании атак противника против него же самого), перекладывает решение задачи по стиранию файлов на антивирусы и средства обнаружения целевых атак на конечных точках (EDR).

Специалист из SafeBreach сумел обернуть антивирус против пользователя

Aikido эксплуатирует уязвимость типа TOCTOU (Time-of-check Time-of-use; один из видов состояния гонки). Иначе говоря, он мастерски использует «окно возможности», которое образуется в промежутке между обнаружением какой-либо вредоносной программы антивирусом и ее безвозвратным удалением из файловой системы, подменяя зараженный файл легитимным при помощи точек соединения NTFS.

Уязвимые ИБ-продукты

Яир протестировал Aikido на 11 популярных ИБ-решениях, шесть из которых оказались уязвимыми перед Aikido. В числе подверженных TOCTOU-уязвимости оказались фирменные решения Microsoft – Defender (он же «Защитник Windows») и Defender for Endpoint (версия «Защитника», ориентированная на бизнес). Помимо них, в список уязвимых попали SentinelOne EDR, TrendMicro Apex One, Avast Antivirus и AVG Antivirus.

Иммунитетом к угрозе обладают Palo Alto XDR, Cylance, CrowdStrike, McAfee, BitDefender.

В ноябре 2022 г. CNews писал о том, что Microsoft Defender, встроенный ОС Windows 11, неожиданно показал один из худших результатов по версии AV-Test в сравнении со своими 18 конкурентами. «Защитник» справился не со всеми 0-day-атаками и тормозил работу системы. Антивирусы Avast и AVG, в свою очередь, получили от лаборатории высший балл.

Перед раскрытием уязвимостей SafeBreach уведомила разработчиков ИБ-решений, которыми способен манипулировать Aikido. Соответствующие уязвимости отслеживаются под идентификаторами CVE-2022-37971 (Microsoft), CVE-2022-45797 (TrendMicro), CVE-2022-4173 (Avast и AVG). Упомянутые компании выпустили исправления, закрывающие уязвимость.

Принцип работы Aikido

Как пояснил Яир в корпоративном блоге SafeBreach, Aikido справляется с задачей удаления необходимых злоумышленнику файлов за пять сравнительно простых шагов.

На первом этапе на целевой машине создается файл, зараженный вредоносной программой, имя которого совпадает с файлом, который необходимо стереть.

В рассмотренном специалистом примере уничтожению подлежит системный файл ndis.sys – драйвер интерфейса для работы ОС Windows в сети. По умолчанию он расположен в папке “C:\Windows\System32\drivers”, и не может быть отправлен на удаление непривилегированным пользователем. Зараженный файл в таком случае должен располагаться в папке “C:\temp\Windows\System32\drivers”. Яир использовал так называемый EICAR, стандартный файл, применяемый для проверки работы антивируса, который фактически вирусом не является.

То есть путь до файла в обоих случаях практически совпадает, за исключением дополнительного звена в виде папки “temp”, запись в которую рядовому пользователю по умолчанию разрешена.

При этом в момент создания вредоносного ndis.sys Aikido получает монопольный (эксклюзивный) доступ к файлу и продолжает удерживать его дескриптор, тем самым, не позволяя антивирусу сразу же его удалить. Для таких случаев в антивирусном ПО предусмотрена возможность отложенного удаления – программа уничтожает зараженный файл после ближайшей перезагрузки системы. SentinelOne, к примеру, использует для этого API Windows (функция MoveFileEx с флагом MOVEFILE_DELAY_UNTIL_REBOOT). Другие ИБ-решения могут использовать иные техники.

Заставив антивирус отложить удаление зараженного файла, Aikido уже сам полностью стирает папку “C:\temp” и создает точку соединения “C:\temp”->”C:\”.

Точка соединение NTFS – возможность базовой для Windows файловой системы NTFS, начиная с версии 3.0, которая позволяет отображать определенную папку в пустую папку, расположенную в локальной файловой системе. В практическом смысле точка соединения практически не отличается от символической ссылки, однако, как отметил Яир, создание последней требует наличия у пользователя соответствующих полномочий. Для добавления точки соединения таковые не нужны.

Упрощенно говоря, в случае с Aikido для операционной системы путь “c:\temp” становится эквивалентом “c:\”. Поэтому, когда антивирус после перезагрузки решит стереть зараженный ndis.sys, который предусмотрительно подчистил вайпер, в действительности он уничтожит самый настоящий драйвер сети, расположенный в системной папке.

Дмитрий Степанов

Короткая ссылка