Как обнаружить shadow copies злоумышленников и проверить скрытый доступ

В Windows shadow copies — это теневые копии Volume Shadow Copy Service, или VSS. Сами по себе они нормальны: их создают системы резервного копирования, точки восстановления и некоторые админские утилиты. Проблема начинается, когда злоумышленник уже попал на сервер и использует VSS как скрытый склад: достаёт старые версии файлов, копирует NTDS.dit и SYSTEM с контроллера домена, прячет инструменты в снимках или восстанавливает доступ после “очистки” системы.

Поэтому искать нужно не просто наличие shadow copy. Правильная задача звучит так: кто создал копию, когда, с какой учётной записи, кто потом обращался к путям вида \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopyN и что было запущено после этого.

Что в shadow copies нормально, а что уже похоже на взлом

На обычном рабочем месте теневые копии могут появляться от точек восстановления Windows. На сервере — от backup-агента, гипервизора или системы аварийного восстановления. Это не повод сразу паниковать.

Подозрительно, если shadow copy появилась:

  • вне привычного окна резервного копирования;
  • на сервере, где VSS обычно не используется;
  • от интерактивного пользователя, веб-сервиса или подозрительного процесса;
  • сразу перед копированием чувствительных файлов;
  • на контроллере домена рядом с доступом к Windows\NTDS\ntds.dit или Windows\System32\config\SYSTEM;
  • была создана и быстро удалена;
  • после неё появились архивы, временные папки, новые задачи, службы или веб-шеллы.

Одна тень сама по себе не доказывает взлом. Но тень, созданная не в рабочее время backup-агентом, плюс обращение к ntds.dit, плюс запуск vssadmin, wmic или PowerShell из пользовательской сессии — уже серьёзный сигнал.

Быстрая проверка на одном Windows-сервере

Начинайте с простого: посмотрите, какие shadow copies есть на машине, когда они появились и кто их обслуживает. Команды лучше запускать из elevated PowerShell или cmd.

  1. Покажите список теневых копий:

    vssadmin list shadows
    vssadmin list shadowstorage

    Первая команда покажет сами копии, вторая — сколько места под них выделено. Если shadow storage резко вырос или был расширен вручную, это стоит проверить отдельно.

  2. Вытащите список через PowerShell с понятными полями:

    Get-CimInstance Win32_ShadowCopy |
      Select-Object ID,DeviceObject,@{n='Created';e={[Management.ManagementDateTimeConverter]::ToDateTime($_.InstallDate)}},ClientAccessible,OriginatingMachine,ServiceMachine,VolumeName |
      Format-Table -AutoSize

    Смотрите на Created, DeviceObject, ClientAccessible, OriginatingMachine и ServiceMachine. Если копия появилась в 03:17 с сервера, где backup в это время не ходит, вопрос уже есть.

  3. Проверьте, кто сейчас обращается к VSS-командам:

    Get-CimInstance Win32_Process |
      Where-Object {$_.CommandLine -match 'vssadmin|wmic|Win32_ShadowCopy|GLOBALROOT|VolumeShadowCopy'} |
      Select-Object ProcessId,Name,CommandLine

    Это покажет только живые процессы. Если процесс уже завершился, нужны журналы событий, Sysmon или EDR.

  4. Посмотрите события VSS за последние две недели:

    Get-WinEvent -FilterHashtable @{LogName='System';ProviderName='VSS';StartTime=(Get-Date).AddDays(-14)} |
      Select-Object TimeCreated,Id,ProviderName,Message |
      Format-Table -AutoSize

    Не привязывайтесь только к номерам событий. На разных версиях Windows и с разными backup-продуктами детали отличаются. Смотрите контекст: время, пользователя, процесс, результат операции.

  5. Проверьте историю PowerShell, если она есть:

    Get-ChildItem C:\Users\*\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt -ErrorAction SilentlyContinue |
      Select-String 'vssadmin|wmic|Win32_ShadowCopy|GLOBALROOT|VolumeShadowCopy'

    История может быть отключена или очищена. Если её нет, это не значит, что ничего не было. Это просто значит, что одного источника мало.

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

Где именно искать признаки скрытого доступа

Shadow copy — это не обычная папка в Explorer. К ней обращаются через специальные пути. Для поиска подозрительной активности смотрите не только на сам факт создания копии, но и на обращения к таким путям:

  • \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy*\Windows\NTDS\ntds.dit;
  • \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy*\Windows\System32\config\SYSTEM;
  • \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy*\inetpub\wwwroot\;
  • \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy*\Users\*\AppData\Local\Temp\;
  • \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy*\ProgramData\;
  • \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy*\Windows\System32\Tasks\.

Особенно опасно, когда кто-то читает ntds.dit и SYSTEM из shadow copy. Вместе эти файлы позволяют работать с доменными данными офлайн. Если на контроллере домена обнаружено такое чтение, лучше исходить из того, что под угрозой не один сервер, а домен целиком.

Какие источники данных дают больше всего пользы

Источник Что показывает Когда полезен Ограничения
vssadmin list shadows Список теневых копий, идентификаторы, время появления Быстрая ручная проверка одного сервера Не показывает, кто именно запустил создание, если нет журналов
Get-CimInstance Win32_ShadowCopy Параметры VSS: устройство, дата, доступность, машина-источник Сравнение копий между серверами и выгрузка в CSV Данные текущие; старые копии могли быть удалены
Журналы VSS, Backup, System Создание, ошибки, работу providers и backup-агентов Проверка легитимности копий Нужно сопоставлять с расписанием резервного копирования
Sysmon, EDR, Security 46
Оцените статью
PEFile — Безопасность и технологии простым языком