Управління Windows Defender за допомогою PowerShell.
Захисник Windows (Windows Defender) - програмний продукт компанії Microsoft, призначений для захисту від шкідливих програм. Вперше Defender з'явився як антивірусна утиліта в Windows XP, а починаючи з Vista він вбудований в операційну систему і є її невід'ємною частиною. У Windows 8 Defender об'єднаний з іншим антивірусним продуктом Microsoft Security Essentials, так що на даний момент він є повноцінним антивірус.
Windows Defender досить продуктивний і невимогливий до ресурсів. Він вміє оновлюватися з внутрішнього сервера оновлень WSUS, так що його цілком можна використовувати не тільки на домашніх комп'ютерах, але і в корпоративних мережах. Але основною перевагою Defender є простота використання, адже він вже є в системі, включений за замовчуванням і практично не вимагає настройки.
В більшості випадків Defender непогано працює з настройками за замовчуванням, однак іноді їх все ж потрібно змінити. Найбільша кількість налаштувань доступно з консолі PowerShell, де для цих цілей є спеціальний модуль Defender. Він з'явився в PowerShell 4.0 і призначений для управління Windows Defender.У нього входить 11 командлетів, які ми сьогодні і розглянемо.
Get-MpComputerStatus виводить дані про стані антивіруса - включені опції, дату поновлення і версії антивірусних баз, розклад і дату останньої перевірки і багато іншого.
для виведення налаштувань Defender можна використовувати командлет Get-MpPreference, а для зміни - відповідно Set-MpPreference.Наприклад, нам треба дозволити перевірку знімних дисків. Виведемо поточні настройки сканування командою:
Get-MpPreference | fl disable *
Параметр DisableRemovableDriveScanning має значення True, тобто сканування знімних дисків відключено. Включимо його командою:
Set-MpPreference -DisableRemovableDriveScanning $ false
також для додавання \ видалення нових параметрів можна використовувати командлети Add-MpPreference і Remove-MpPreference.Для прикладу додамо в виключення антивіруса пару папок:
Add-MpPreference -ExclusionPath C: \ Temp, C: \ Windows
А потім видалимо одну:
Remove -MpPreference -ExclusionPath C: \ Windows
Почати оновлення проводиться командлети Update-MpSignature. За замовчуванням для оновлення Defender використовує дефолтні настройки комп'ютера, але за допомогою параметра UpdateSource можна вказати, звідки саме забирати поновлення.Для нього можна вказати наступні значення:
InternalDefinitionUpdateServer - внутрішній сервер оновлень (WSUS);
MicrosoftUpdateServer - сервер оновлень Microsoft;
MMPC - Microsoft Malware Protection Center;
FileShares - файлова кулі.
Для прикладу запустимо оновлення і вкажемо в якості джерела Microsoft Malware Protection Center:
Update-MpSignature -UpdateSource MMPC
Примітка.Якщо ви хочете вказати в якості джерела файлову кулі, то треба попередньо завантажити необхідні оновлення в Microsoft Malware Protection Center і помістити їх в мережеву папку, після чого прописати шлях до папки в налаштуваннях антивіруса. Зробити це можна командою:
Set-MpPreference -SignatureDefinitionUpdateFileSharesSources \\ server \ share
Для запуску сканування призначений командлет Start-MpScan.Тип сканування задається параметром ScanType, який може приймати одне з трьох значень:
FullScan - повна перевірка. Виконується перевірка всіх файлів на комп'ютері, а також системного реєстру і запущених в поточний момент програм;
QuickScan - швидка перевірка. Проводиться аналіз тільки тих областей, які найбільш ймовірно можуть бути заражені шкідливими програмами;
CustomScan - вибіркова перевірка.Надається можливість вибрати область для сканування.
Для прикладу запустимо вибіркову перевірку системної папки Windows командою:
Start-MpScan -ScanType CustomScan -ScanPath C: \ Windows
Варто згадати, що всі командлети можуть виконуватися не тільки локально, але і віддалено.Для цього він мають параметр CimSession. Для прикладу подивимося дату останньої перевірки на віддаленому комп'ютері wks81:
$ session = NewCimSession -ComputerName wks81
Get-MpComputerStatus -CimSession $ session | fl fullscan *
На закінчення кілька зауважень.
• На даний момент Windows Defender входить до складу тільки клієнтських ОС.У поточних серверних версіях Windows він відсутній, хоча в недавно з'явилася бета-версії Windows Server його можна встановити як серверну фичу (features);
• По замовчуванням PowerShell 4.0 (в який входить модуль Defender) є тільки в Windows 8.1 \ Server 2012 R2. Для Windows 7, Windows Server 2008R2 \ 2012 його можна завантажити тут: http://www.microsoft.com/en-us/download/details.aspx?id=40855;
• Більш докладний опис всіх командлетів Windows Defender і їх параметрів можна знайти тут: http://technet.microsoft.com/en-us /library/dn433280.aspx.