9 Мая, 2017

PowerShell срипт для поиска уязвимой версии MMPE в сети

Валерий Марчук

Как показала практика, не все компы подтянули экстренный патч, выпущенный Microsoft для устранения уязвимости в Microsoft Malware Protection Engine ( CVE-2017-0290 ). Для поиска уязвимых Windows Defender в доменной сети можно использовать следующий PowerShell скрипт:


 $ErrorActionPreference = "SilentlyContinue"
 $computers = Get-ADComputer -Filter 'Enabled -eq $true' -Properties Enabled | select-object -expandproperty name 
 foreach ($computer in $computers) {
 $productVersion = ""
 Write-Output $computer
     try{
         $w32reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('LocalMachine',$computer )
         $keypath = 'SOFTWARE/Microsoft/Windows Defender/Signature Updates/'
         $productKey = $w32reg.OpenSubKey($keypath)
         if ($productKey) {
         $productVersion = $productKey.GetValue('EngineVersion')
         if ($productVersion -eq "1.1.13701.0") {
         write-output "Version: $productVersion  VULNERABLE!"
                 } else {
         write-output "Version OK: $productVersion"
         }
         Clear-Item Variable:productVersion
         } 
         else {write-output "Windows Defender not found"}
     }
     catch{
         write-output "Computer not accessible"
     }
 
 }