Защита от шифровальщиков с помощью FSRM в Windows Server | Windows для системных администраторов

Защита от шифровальщиков с помощью FSRM в Windows Server

В этой статье мы разберем методику использования функционала File Server Resource Manager (FSRM) на файловом сервере Windows Server 2012 R2 для детектировании и блокировки работы вирусов-шифровальщиков (троянов-энкодеров, Ransomware или CryptoLocker). В частности, разберемся, как установить службу FSRM, настроить детектирование определенных типов файлов и, в случае детектирования таких файлов, заблокировать доступ пользователя к каталогу на файловом сервере.

Детектирование шифровальщиков с помощью FSRM


Если компонент File Server Resource Manager еще не установлен на сервере, его можно установить с помощью графической консоли Server Manager или из командной строки PowerShell:

Install-WindowsFeature FS-Resource-Manager -IncludeManagementTools

Проверим, что роль установилась:

Get-WindowsFeature -Name FS-Resource-Manager

Установка FSRM в Windows 2012 R2После установки компонента сервер нужно перезагрузить.

Настройка SMTP параметров FSRM для отправки email уведомлений


Следующий этап — конфигурация SMTP параметров службы FSRM, благодаря которым  администратор может настроить отправку email уведомлений на свой ящик. Для этого запустите консоль fsrm.msc, щелкните ПКМ по корню консоли File Server Resource Manager и выберите пункт Configure Options.

Укажите адрес SMTP сервера, почтовый ящик администратора и  имя отправителя.

Совет. Если у вас отсутствует внутренний почтовый сервер, можно настроить пересылку через SMTP релей на внешние ящики.

FSRM настройки SMTP уведомлений

Проверить корректность настройки SMTP сервера можно, отправив тестовое письмо с помощью кнопки Send Test E-mail.

Настроить параметры SMTP службы FSRM также можно выполнить с помощью Powershell:

Set-FsrmSetting -AdminEmailAddress "FileServerAdmins@adatum.com" –smtpserver smtp.adatum.com –FromEmailAddress "FSRM@LON-FS02.adatum.com"

Создание группы расширений файлов, создаваемых шифровальщиками

Следующий шаг – создать группу файлов, в которой будут содержаться известные расширения и имена файлов, которые создают шифровальщики в процессе работы.

Этот список можно задать из консоли FSRM. Для этого разверните раздел File Screening Management -> File Groups и в меню выберите Create File Group.

fsrm создать группу файловНужно указать имя группы (к примеру, Crypto-files) и внести все известные расширения в список с помощью поля Files to include.

Файлы, создаваемые криптолокерамиСписок известных расширений файлов, создаваемых шифровальщиками довольно большой, поэтому намного проще создать его с помощью PowerShell.

В Windows Server 2012 создать группу файлов с помощью PowerShell можно так:

New-FsrmFileGroup -Name "Crypto-files" –IncludePattern @("_Locky_recover_instructions.txt","DECRYPT_INSTRUCTIONS.TXT", "DECRYPT_INSTRUCTION.TXT", "HELP_DECRYPT.TXT", "HELP_DECRYPT.HTML", "DecryptAllFiles.txt", "enc_files.txt", "HowDecrypt.txt", "How_Decrypt.txt", "How_Decrypt.html", "HELP_RESTORE_FILES.txt", , "restore_files*.txt", "restore_files.txt", "RECOVERY_KEY.TXT", "how to decrypt aes files.lnk", "HELP_DECRYPT.PNG", "HELP_DECRYPT.lnk", "DecryptAllFiles*.txt", "Decrypt.exe", "AllFilesAreLocked*.bmp", "MESSAGE.txt","*.locky","*.ezz", "*.ecc", "*.exx", "*.7z.encrypted", "*.ctbl", "*.encrypted", "*.aaa", "*.xtbl", "*.abc", "*.JUST", "*.EnCiPhErEd", "*.cryptolocker","*.micro","*.vvv")

В Windows Server 2008 R2 придется воспользоваться утилитой filescrn.exe:

filescrn.exe filegroup add /filegroup:"Crypto-files" /members:"DECRYPT_INSTRUCTIONS.TXT|DECRYPT_INSTRUCTION.TXT| DecryptAllFiles.txt|enc_files.txt|HowDecrypt.txt|How_Decrypt.txt| How_Decrypt.html|HELP_TO_DECRYPT_YOUR_FILES.txt|HELP_RESTORE_FILES.txt| HELP_TO_SAVE_FILES.txt|restore_files*.txt| restore_files.txt|RECOVERY_KEY.TXT|HELP_DECRYPT.PNG|HELP_DECRYPT.lnk| DecryptAllFiles*.txt|Decrypt.exe|ATTENTION!!!.txt|AllFilesAreLocked*.bmp| MESSAGE.txt|*.locky|*.ezz|*.ecc|*.exx|*.7z.encrypted|*.ctbl| *.encrypted|*.aaa|*.xtbl|*.EnCiPhErEd|*.cryptolocker|*.micro|*.vvv| *.ecc|*.ezz|*.exx|*.zzz|*.xyz|*.aaa|*.abc|*.ccc|*.vvv|*.xxx| *.ttt|*.micro|*.encrypted|*.locked|*.crypto|*_crypt|*.crinf| *.r5a|*.XRNT|*.XTBL|*.crypt|*.R16M01D05|*.pzdc|*.good| *.LOL!|*.OMG!|*.RDM|*.RRK|*.encryptedRSA|*.crjoker| *.LeChiffre|*.keybtc@inbox_com|*.0x0|*.bleep|*.1999| *.vault|*.HA3|*.toxcrypt|*.magic|*.SUPERCRYPT|*.CTBL|*.CTB2|*.locky"

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

https://www.bleib-virenfrei.de/ransomware/

https://fsrm.experiant.ca/api/v1/combined

Во втором случае актуальный список расширений файлов для FSRM можно грузить прямо с веб сервера с помощью Invoke-WebRequest

new-FsrmFileGroup -name "Anti-Ransomware File Groups" -IncludePattern @((Invoke-WebRequest -Uri "https://fsrm.experiant.ca/api/v1/combined").content | convertfrom-json | % {$_.filters})

Либо воспользоваться готовым файлом: crypto_extensions.txt. Данный файл можно сохранить на диск и обновить с его помощью созданную группу файлов  FSRM:

$ext_list = Get-Content .\crypto_extensions.txt
Set-FsrmFileGroup -Name "Crypto-files" -IncludePattern ($ext_list)

Настройка File Screen Templates

Создадим новый шаблон File Screen Template, в котором определяются действия, которые FSRM должен выполнить при обнаружении указанных файлов. Для этого в консоли FSRM перейдите в раздел File Screen Management -> File Screen Templates. Создадим новый шаблон Create File Screen Template.

шаблон скрининга файловНа вкладке настроек укажем имя шаблона “Block_crypto_files”, тип скрининга – Active screening (запрещается создавать указанные типы файлов) и в списке групп файлов выбрать Crypto-Files.

fsrm шаблон блокировки файлов шифровальщиковНа вкладке E-mail Message включим отправку почтовых уведомлений, настроив текст оповещения по-своему вкусу.

Параметры отправки email уведомленийНа вкладке Event Log включим запись события в системный журнал. С указанием записывать только имя пользователя: [Source Io Owner]

Source Io Owner

На вкладке Command можно указать действие, которое нужно выполнить при обнаружении такого типа файла. Об этом чуть ниже.

Сохраните изменения. В списке шаблонов должен появится еще один.

шаблон file screen : block crypto files

Применение шаблона File Screen к диску или папке

Осталось назначить созданный шаблон к диску или сетевой папке на сервере. В консоли FSRM создадим новое правило Create File Screen.

Create File ScreenВ поле File screen path нужно указать локальный диск или путь к каталогу, для которого мы хотим включить систему защиты от шифровальщика, а в списке шаблонов выбрать созданный ранее шаблон Block_crypto_files.Назначение политики FSRM к сетевому каталогу

Автоматическая блокировка доступа пользователя, зараженного шифровальщиком

Осталось настроить действие, которое FSRM будет выполнять при обнаружении файлов, созданных шифровальщиками. Мы воспользуемся готовым скриптом: Protect your File Server against Ransomware by using FSRM and Powershell (https://gallery.technet.microsoft.com/scriptcenter/Protect-your-File-Server-f3722fce). Что делает этот скрипт? При попытке записать «запрещенный» тип файла в сетевой каталог, FSRM запускает данный скрипт, который анализирует журнал событий и на уровне шары запрещает запись пользователю, из-под осуществлялась попытка записать запрещенный тип файла. Таким образом, мы заблокируем доступ зараженного пользователя к сетевой папке.

Скачайте указанный скрипт и распакуйте его в корень каталога C:\ на файловом сервере. В эту же папку скопируйте утилиту SubInACL (нужна для изменения разрешений на сетевой каталог). В каталоге должны оказаться следующие файлы:

  • RansomwareBlockSmb.ps1
  • StartRansomwareBlockSmb.cmd
  • subinacl.exe

RansomwareBlockSmb.ps1

Примечание. В PS скрипте пришлось изменить строки:

$SubinaclCmd = "C:\subinacl /verbose=1 /share \\127.0.0.1\" + "$SharePart" + " /deny=" + "$BadUser"

и

if ($Rule -match "Crypto-Files")

Осталось в настройках шаблона “Block crypto files” на вкладке Command указать, что должна запуститься командная строка с аргументом StartRansomwareBlockSmb.cmd:

Run this command or script: c:\windows\system32\cmd.exe

Command arguments: /c “c:\StartRansomwareBlockSmb.cmd”

Команда должна выполняться с правами локальной системы (Local System).Запуск скрипта из FSRM триггера

Тестирование защиты FSRM

Протестируем, как работает защита FSRM от шифровальщиков. Для чего в защищаемом каталоге создадим файл с произвольным расширением, и попробуем изменить его на запрещенное .locky.

При попытке сохранить запрещенный файл FSRM запишет в журнал событие:

Event ID: 8215
Source: SRMSVC

Скрипт RansomwareBlockSmb.ps1на основании данных из события запретит текущему пользователю доступ к данному каталогу, выставив в разрешениях на шару персональный deny:

Запрет на доступ к сетевому каталогу зараженному пользователюЗащита работает! В корне диска в логе можно посмотреть каталог и пользователя, из-под которого пытался запустится шифровальщик.

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

Итак, мы рассмотрели, как с помощью FSRM автоматически блокировать доступ к сетевым каталогам пользователям, компьютеры которых заражены вирусом-шифровальщиком. Естественно, использование FSRM в таком режиме не может дать 100% гарантию защиты файлов на серверах от этого класса вирусов, но как один из эшелонов защиты, методика вполне себе пригодна. В следующих статьях мы рассмотрим еще несколько вариантов противодействия  вирусам-шифровальщикам:

 

Еще записи по теме: Windows Server 2012 R2
Понравилась статья? Скажи спасибо и расскажи друзьям!
Назад:
Вперед:

Комментариев: 15

Оставить комментарий
  1. Руслан | 28.09.2016

    Добрый день.
    Подскажите, почему если второй раз тот же пользователь на той же шаре пытается создать другой или такой же запрещенный файл, то уже не приходит уведомление и не пишется событие в Events, хотя запрет на создание отрабатывает.
    Windows Server 2008R2

    Ответить
    • itpro | 28.09.2016

      Приветствую!

      По умолчанию FSRM не дает записывать в журнал одинаковые события чаще чем 1 раз в час, чтобы не забивать журнал. Изменить это поведение можно в настройках FSRM, на вкладке Notification Limits выставив для Event log notification (minutes) и Command notifications 0 минут

      Ответить
  2. dmitry tarakanov | 28.09.2016

    Так сказать программирование ради программирования. Помнится лет 20 назад примерно таким же подходом со спамом боролись — писали черные списки e-mail адресов, с которых спам рассылается. Как дети, ей Богу.

    Ответить
  3. Никита | 29.09.2016

    Добрый день!
    К вопросу о Белом списке разрешенных типов — если шифровальщик изменит структуру файла, без изменений расширения, то такой вариант защиты не сработает, стоит это учитывать, что вариант с белым списком также не 100%-я гарантия защиты от шифровальщиков.
    На ПК клиентов должен помочь механизм SRP, который также можно использовать как один из барьеров для борьбы с шифровальщиками.

    Ответить
    • itpro | 30.09.2016

      Да, конечно эта защита не 100%, и скорее всего «разработчики» будут в дальнейшем учитывать такой способ противодействия. Но никто не отменяет других методов защиты от шифровальщиков (антивирусы, srp политики, обучение пользователей и т.д.) и регулярных бэкапов.
      Но по крайне мере этот способ с дополнениями можно будет использовать для быстрого детектирования прорвавшейся заразы, которая обошла другие методы защиты, или сигнатуры которой пока отсутствуют в базе антивируса.

      Ответить
      • Никита | 03.10.2016

        Полностью с Вами согласен — защитит только комплексный подход.
        Спасибо за статью!

        Ответить
  4. Александр | 06.10.2016

    Добрый день! Спасибо за статью сразу!
    В ходе настройки возникли сложности — причиной оказалось неверное значение переменной $BadUser — она содержала в себе все строки лога, не только логин.
    Я подредактировал вот так:
    $badusernew = $baduser.split(» «)[1]
    Таким образом, переменная $badusernew содержит только логин =)

    Ответить
  5. itpro | 06.10.2016

    В продолжении темы.
    Восстановления файлов после атаки шифровальщика : http://winitpro.ru/index.php/2016/10/06/vosstanovlenie-fajlov-posle-zarazheniya-shifrovalshhikom-iz-snimkov-vss/

    Ответить
  6. itpro | 21.10.2016

    В продолжении темы.
    Блокировка вирусов и шифровальщиков с помощью Software Restriction Policies
    http://winitpro.ru/index.php/2016/10/21/blokirovka-virusov-i-shifrovalshhikov-s-pomoshhyu-software-restriction-policies/

    Ответить
  7. Юрий | 24.10.2016

    Попробовал сделать по инструкции, по при загрузке библиотеки с сайта microsoft, не нахожу внутри файла RansomwareBlockSmb.ps1

    Ответить
    • itpro | 25.10.2016

      Только что скачал архив RansomwareBlockSmb.zip. Внутри него два файла: RansomwareBlockSmb.ps1 и StartRansomwareBlockSmb.cmd

      Ответить
      • Юрий | 01.11.2016

        Всё верно, упорно качал не по той ссылке(

        Ответить
  8. Георгий | 28.10.2016

    При настройке уведомлений выдает ошибку.
    Служба SMTP настроена на этом же сервере и ретранслирует через SMTP googl.
    https://yadi.sk/i/WgAVNplFxjBUJ

    Ответить
    • itpro | 08.11.2016

      В журнале не очень видно, но похоже проблема с самим gmail: 5.7.1. unable to relay …. . То ли запрет отправки без авторизации, то ли недействительный email отправителя/получателя, или какая-то другая антиспам проверка.
      Отправляете с авторизацией?

      Ответить
  9. Артем | 03.11.2016

    Я к примеру всем юзерам запретил скачивать исполняемые файлы с интернета, осталось только запретить запуск исполняемых файлов, как описано в одно из статьи на сайте.

    Ответить
Полные правила комментирования на сайте winitpro.ru. Вопросы, не связанные с содержимым статьи или ее обсуждением удаляются.

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)



MAXCACHE: 0.28MB/0.00098 sec