Microsoft Windows

Использование PowerShell для исследования определений сигнатур вредоносного ПО в Windows Defender’

Windows Defender теперь можно в полной мере назвать антивирусом после выхода windows 10. Как и любой другой антивирус, Windows Defender имеет базу данных определений, которую он использует для идентификации и блокирования или удаления угроз или вредоносных программ. Определение базы данных — это коллекция сигнатур вредоносных программ, которые антивирус запрограммирован идентифицировать. Если определенная сигнатура идентифицируется с определенной программой, то эта программа помечается как угроза безопасности.  Теперь Windows PowerShell позволяет заглянуть под капот и увидеть механизм, на котором работает Windows Defender. Вы можете сделать гораздо больше без особых усилий.

В этом руководстве мы кратко объясним, что такое Windows Defender и Windows PowerShell. Далее будет дано краткое введение о том, как работает Windows PowerShell и как использовать PowerShell для управления Windows Defender. Напоследок мы рассмотрим, как можно использовать PowerShell, чтобы узнать, какие вирусы может идентифицировать Windows Defender, заглянув в его базу сигнатурных определений.

Что такое Windows Defender?

Windows Defender — это защита от вредоносных программ, которая входит в состав Windows и встроена в нее. Это программное обеспечение помогает выявлять и удалять вирусы, шпионские программы и другие вредоносные программы. Windows Defender работает в фоновом режиме и уведомляет вас, когда необходимо предпринять определенные действия. Однако вы можете использовать его в любое время для проверки на наличие вредоносных программ, если ваш компьютер не работает должным образом или если вы нажали на подозрительную ссылку в Интернете или в сообщении электронной почты.

Похоже, что Windows Defender планируется превратить в современное приложение для Windows после нескольких лет работы с аналогичным пользовательским интерфейсом. Windows Defender впервые появился как антивирусная утилита для Windows XP. Начиная с версии Vista он был встроен во все ОС Microsoft в качестве защиты от вредоносных программ. До Windows 8 Защитник Windows защищал от шпионских программ. Он включает ряд агентов безопасности в режиме реального времени, которые отслеживают несколько общих областей Windows на предмет изменений, которые могли быть вызваны шпионскими программами. Он также включает возможность легкого удаления установленного программного обеспечения ActiveX.

В Windows 8 Windows Defender был объединен с другим антивирусным продуктом – Microsoft Security Essentials – и теперь он стал полнофункциональным антивирусным ПО. В Windows 10 настройками Windows Defender управляет приложение «Настройки», доступ к которому осуществляется из «Настроек». Обновление Windows 10 Anniversary Update теперь позволяет появляться тостовым уведомлениям и сообщать о результатах сканирования, даже если вирусы не обнаружены.

Основное преимущество Defender в том, что он прост в использовании, он уже предустановлен в Windows, включен по умолчанию и практически не требует ручной настройки. Это очень легкое приложение, которое не будет постоянно беспокоить вас всплывающими окнами.

Что такое Windows PowerShell?

Windows PowerShell — это оболочка, разработанная компанией Microsoft для автоматизации задач и управления конфигурацией. Эта мощная оболочка основана на .NET framework и включает в себя оболочку командной строки и язык сценариев. Изначально PowerShell был компонентом только для Windows, но 18 августа 2016 года он стал открытым и кроссплатформенным, что означает, что любой может разрабатывать команды для использования в PowerShell.

Windows Defender всегда имел версию командной строки, которую можно запускать в обычном окне командной строки. Однако в windows 10 появились команды для Windows Defender.

Команда (произносится как команда-let) — это легкая команда, которая используется в среде Windows PowerShell. Среда выполнения Windows PowerShell вызывает эти команды в контексте сценариев автоматизации, которые предоставляются в командной строке. Среда выполнения Windows PowerShell также вызывает их программно через Windows PowerShell APIs (интерфейс прикладных программ). Командлеты выполняют действие и обычно возвращают файл Microsoft .NET Framework объект к следующей команде в конвейере. Как и любое другое действие командной строки, команда должна существовать, чтобы вернуть результат, иначе будет выведена ошибка.

Как запустить Windows PowerShell в режиме администратора

Вы можете запустить PowerShell, набрав «PowerShell» в Выполнить Window, но это не совсем то. Это происходит потому, что этот метод не запускает PowerShell в режиме администратора, а без режима администратора вы ограничены в своих действиях из-за разрешений. Вот способы запуска PowerShell в режиме администратора.

  1. В Windows 10, Самый простой и быстрый способ сделать это — запустить Файл/Проводник Windows, открыть любую папку, выберите пункт Файл меню, перейти к Открыть Windows PowerShell, а затем выберите Открыть Windows PowerShell от имени администратора команда.
  2. Другой вариант — перейти в папку C\Windows\System32\WindowsPowerShell\v1.0 или любая версия доступно. Щелкните правой кнопкой мыши на файле с именем PowerShell.exe и откройте от имени администратора. Файл с именем PowerShell_из.exe предоставляет PowerShell в графическом интерфейсе пользователя, а не в командной строке, но оба они работают одинаково, используя одни и те же команды.
  3. Последний вариант — открыть Командная строка в качестве администратора и использовать его для открытия PowerShell. Перейти к Запустите > Все приложения/Все программы > Система/Аксессуары Windows > Щелкните правой кнопкой мыши на Командная строка и запуск от имени администратора. В появившемся окне Command Prompt введите «PowerShell» и нажмите Введите. Путь изменится на «PS C:\Windows\System32>». Это означает, что вы готовы к использованию среды PowerShell.

Команды для Defender в PowerShell и как их использовать

Мы уже говорили о том, что такое команды, так как же их использовать?? Вы просто должны ввести эти команды в окно PowerShell.

Windows PowerShell предоставляет 12 команд для Windows Defender. Чтобы увидеть их, просто введите Get-Command -Module Defender в окне командной строки PowerShell и нажмите Enter. Вот полный список команд для Windows Defender.

Серийный Команда Описание
Add-MpPreference Изменяет параметры для Windows Defender.
Get-MpComputerStatus Получает статус антивирусного программного обеспечения на компьютере.
Get-MpPreference Получение предпочтений для сканирования и обновления Windows Defender.
Get-MpThreat Получает историю угроз, обнаруженных на компьютере.
Get-MpThreatCatalog Получение известных угроз из каталога определений.
Get-MpThreatDetection Получает активные и прошлые угрозы вредоносного ПО, обнаруженные Защитником Windows.
Remove-MpPreference Удаляет исключения или действия по умолчанию.
Remove-MpThreat Удаление активных угроз с компьютера.
Set-MpPreference Настройка предпочтений для сканирования и обновления Windows Defender.
Start-MpScan Запускает сканирование компьютера.
Start-MpWDOScan Запускает автономное сканирование Windows Defender.
Update-MpSignature Обновление определений антивирусных программ на компьютере.

Получение помощи от PowerShell, когда вы застряли

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

Get-Help <имя команды> -Подробно Это даст вам подробное описание того, с чем связана команда и что она делает, включая необходимые параметры.
Get-Help <имя команды> -Примеры Эта команда даст вам примеры использования команды.
Get-Help <имя команды> -Полный Это даст подробное описание, включая примеры.

Если вы не можете получить какую-либо информацию, вам придется обновить файлы справки командлета Windows Defender. Чтобы обновить меню справки, введите эту команду в окне windows PowerShell Update-Help и подождите несколько минут, пока последние файлы справки будут загружены и установлены.

Несколько стандартных операций в PowerShell для управления Защитником Windows

Сайт Start-MpScan команда в приглашении PowerShell позволяет запустить сканирование системы. Вот сканы Windows Defender, которые можно запустить на компьютере с помощью Windows PowerShell.

  1. Полное сканирование — сканирование выполняется для всех файлов на вашем компьютере, а также системного реестра и текущих запущенных приложений. Используйте эту команду для полного сканирования: Start-MpScan -ScanType QuickScan
  2. QuickScan — анализ только тех областей, которые с наибольшей вероятностью могут быть заражены вредоносным ПО. Чтобы выполнить быстрое сканирование, используйте следующую команду: Start-MpScan -ScanType FullScan
  3. CustomScan — пользовательское сканирование позволит пользователю выбрать папки и диски для сканирования. Для этого сканирования необходим параметр пути. Вот пример команды для запуска пользовательского сканирования: Start-MpScan -ScanPath C:\Users\User1\Downloads

Если вы хотите проверить наличие новых обновлений определений сигнатур вирусов и обновить Windows Defender, вы’ используете команду: Update-MpSignature

Чтобы отобразить текущее состояние Windows Defender – включенные опции, дату и версию определения вируса, время последнего сканирования и другое — введите эту команду в PowerShell: Get-MpComputerStatus

Если вы хотите отключить защиту Defender в режиме реального времени, выполните команду: Set-MpPreference -DisableRealtimeMonitoring $true

Существует множество других и даже более сложных команд Windows Defender, но на этой странице мы не будем углубляться в это. Теперь, когда вы знаете основные команды windows defender, мы рассмотрим, как заглянуть в базу данных определений сигнатур Windows Defender.

Доступ к базе данных определений сигнатур вредоносных программ Windows Defender с помощью PowerShell

База данных определений сигнатур Windows Defender сообщает вам, что windows defender может идентифицировать как угрозу и успешно нейтрализовать ее.  Сайт Get-MpThreatCatalog команда позволит вам сделать это. Весь список будет длинным и будет генерироваться на вашем экране с огромной скоростью. Однако вы можете потратить время, чтобы найти то, что вы ищете и что может отсутствовать. Просто введите эту команду в командную строку PowerShell и нажмите Enter.

Get-MpThreatCatalog

Вы можете использовать кнопку Pause/Break на вашем компьютере, чтобы временно приостановить вывод данных. Чтобы полностью остановить или отменить генерацию всего списка, нажмите кнопку Ctrl + C. Если вы выполните любое из этих двух действий, вы’увидите в базе данных запись для каждой угрозы с шестью полями. Вот пример:

CategoryID: 4

SeverityID: 5

ThreatID: 5145

ThreatName: TrojanDownloader:Win32/Zlob.CH

Идентификатор типа: 0

PSComputerName:

Давайте кратко рассмотрим, что означает каждое поле.

CategoryID: Это укажет на тип вредоносного ПО/угрозы в списке. Вот известные на данный момент значения и тип угрозы/вредоносного ПО, на которое они указывают:

ID Тип вредоносного ПО
0 Недействительный
1 Adware
2 Шпионские программы
3 Passwordstealer
4 Trojandownloader
5 Червь
6 Бэкдор
7 Троян для удаленного доступа
8 Троян
9 Emailflooder
10 Keylogger
11 Dialer
12 Мониторинг программного обеспечения
13 Модификатор браузера
14 Cookie
15 Браузерный плагин
16 Aolexploit
17 Nuker
18 Securitydisabler
19 Шуточная программа
20 Hostileactivexcontrol
21 Softwarebundler
22 Stealthnotifier
23 Модификатор настроек
24 Панель инструментов
25 Программное обеспечение Remotecontrol Software
26 Trojanftp
27 Потенциальное нежелательное программное обеспечение
28 Icqexploit
29 Trojantelnet
30 Программа обмена файлами
31 Malware_Creation_Tool
32 Удаленное_управление_программным обеспечением
33 Инструмент
34 Trojan_Denialofservice
36 Trojan_Dropper
37 Trojan_Massmailer
38 Троянское_мониторинговое_программное_обеспечение
39 Trojan_Proxyserver
40 Вирус
42 Известный
43 Неизвестный
44 Spp
45 Поведение
46 Уязвимость
47 Политика

SeverityID: Это шкала от 1 до 5, определяющая степень опасности угрозы, 5 — наивысшая. Вот что они имеют в виду.

ID Серьезность
0 Неизвестно
1 Низкий
2 Умеренная
4 Высокий
5 Серьезный

ThreatID: Это номер, который был присвоен вредоносной программе/угрозе в качестве формы идентификации.

ThreatName: Это имя, присвоенное вредоносной программе, которое соответствует номеру ThreatID.

TypeID: Значение TypeID определяет, как Windows Defender идентифицирует вредоносное ПО. Известная или неизвестная угроза? Вот значения и что они означают.

ID Метод идентификации
0 Известная вредоносная угроза
1 Мониторинг поведения
2 Неизвестная угроза
3 Известная хорошая угроза
4 Угроза системы проверки сети (NIS)

Вы можете заметить, что все угрозы, которые появляются на вашем экране, являются угрозами типа (0). Это связано с тем, что большинство определений сигнатур, которые уже были добавлены, были исследованы и тип угрозы, которую они представляют, был задокументирован.

PSComputerName: Имя компьютера, на котором запущена активность. Обычно это будет пусто, если вы не находитесь в сети, и по той простой причине, что эта база данных является каталогом, а не активностью.

Что нужно помнить

  1. Определения сигнатур представляют собой довольно большой каталог, поэтому может пройти довольно много времени, прежде чем вы увидите на экране сгенерированные данные. Будьте терпеливы.
  2. Поскольку база данных огромна, она может перегружать вашу память. Однако у команд есть ограничение на используемую ими память, и вы, скорее всего, увидите следующее сообщение: «ПРЕДУПРЕЖДЕНИЕ: Использование памяти командой превысило предупреждающий уровень».» PowerShell может восстановиться и продолжить процесс или просто вернуть вас в конвейер подсказок. Будьте терпеливы. В противном случае вы можете отменить событие, нажав Ctrl + C.
  3. Если ваш экран стал слишком переполнен, введите команду ‘CLS’, чтобы очистить экран. Это также улучшит использование памяти.

Запрос базы данных определений сигнатур Windows Defender

Запрос — это просто запрос уточненной информации/данных, отвечающих определенным критериям, из базы данных. Мы видели, как выглядит база данных определений Windows Defender. Теперь мы знаем, что это чрезвычайно огромная база данных. Но вы всегда можете сократить количество отображаемой информации, добавив несколько параметров в команду. Вот несколько примеров того, как это можно сделать.

  1. Чтобы просмотреть все записи в базе данных для наиболее серьезных вредоносных программ, используйте эту команду:

Get-MpThreatCatalog | where-object {$_.SeverityID -eq “5”}

Значение «5» возвращает определения только с уровнем серьезности 5.

  1. Существует несколько типов вредоносных программ, которые может идентифицировать Защитник Windows. Чтобы определить только один тип, вам нужно передать параметр TypeID или, что более удобно, параметр ThreatName. Примером может быть просмотр только тех угроз, которые известны как вирусы. Просто введите это в окно командной строки PowerShell:

Get-MpThreatCatalog | where-object {$_.ThreatName -Match “^Virus.*”}

Вы также можете использовать более одного критерия для запроса базы данных. Допустим, например, вам нужно увидеть все вирусы с severity 5. Просто введите эту команду в окно PowerShell:

Get-MpThreatCatalog | where-object {$_.SeverityID -eq “5”} | where-object {$_.ThreatName -Match “^Virus.*”}

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

  1. Даже после выполнения запроса к базе данных вы можете обнаружить, что на экране отображается большое количество данных. Если вы предпочитаете видеть вывод на экране по одной странице за раз, введите следующую команду в приглашении PowerShell:

Get-MpThreatCatalog | where-object {$_.SeverityID -eq “5”} | select ThreatName | more

Или

Get-MpThreatCatalog | where-object {$_.SeverityID -eq “5”} | where-object {$_.ThreatName -Match “^Virus.*”} | select ThreatName | more

Эта командная строка передает вывод в дополнительная команда, который, в свою очередь, выводит результат по одной странице за раз. Чтобы перейти к следующей странице, нажмите кнопку [Пробел]. Если вы нажмете [Enter], экран будет продвигаться на одну строку за раз. Это позволит вам сэкономить время ожидания, которое необходимо для одновременного отображения всех данных, прежде чем вы сможете начать просмотр и прокрутку результатов.

Существует множество других команд, которые вы можете использовать для сужения круга запросов. Используя приведенную нами информацию и примеры, вы сможете легко сделать следующее. Помните, что версия Windows Defender и версия Windows PowerShell определяют, сможете ли вы использовать команды для Windows Defender. Это было протестировано для Windows 10. На странице поддержки Microsoft указано, что это доступно для Windows Server 2016 и Windows 10. Похоже, что розничная (не обновленная) версия Windows 7 не распознает эту команду. На самом деле PowerShell для windows 7 будет выдавать ошибки или возвращать пробелы при вводе этой команды. Обновление этих двух приложений (Defender и PowerShell) может вернуть вас на правильный путь.

Добавить комментарий