在一段时间内,Windows Defender正在将几个重要的PowerShell模块标记为感染 peasecto.a.. This would prevent users from running or installing those modules. Some of the impacted modules included PackageManagement, MSOnline, PSScriptAnalyzer, and VMware.PowerCLI. Even vscode. 感受到痛苦。好消息是现在为某些模块解决了这个问题。

PS:> Get-MpComputerStatus | Select AntivirusSignature*

AntivirusSignatureLastUpdated   : 1/28/2018 8:28:37 PM
AntivirusSignatureVersion       : 1.261.424.0

这些是我在这些模块上测试过的定义版本:

  • PackageManagement fixed in 1.261.424.0
  • PSScriptAnalyzer fixed in 1.261.441.0
  • MSOnline fixed in 1.261.473.0
  • VMware.PowerCli. fixed in 1.261.459.0

如果Windows Defender未拉动最新定义,您可能必须运行Windows更新并重新启动。我在不同机器上测试了一些不一致的结果。

它看起来像模块一次固定一个。我有一个在底部的链接,用于报告误报。

除了禁用后卫或禁用PowerShell AMSI之外,还没有很多选项,同时我们等待定义以获得更新。我正在一起拉我可以在这里发布它的信息。现在这个问题大多是解决的,我重写为所以重要信息很容易发现。

There are lingering issues for some users with broken modules that will need to be re-installed. The PackageManagement module will take some special steps that I outlined below.

重新安装powershellget和packagemanagement

Because 电源外壳Get depends on PackageManagement, issues with PackageManagement can prevent 电源外壳Get from working. How do you install modules when Install-Module has issues?

If Windows Defender did clean up files out of the PackageManagement module, you can import the old version of 电源外壳Get in a fresh shell to use Install-Module again.

Get-Module PowerShellGet -ListAvailable |
    Where Version -eq 1.0.0.1 |
    Import-Module

Install-Module PackageManagement -Force
Install-Module PowerShellGet -Force

电源外壳 5.1应该具有这两个模块的1.0.0.1版本。所以你应该有一个旧版本的模块导入。另请注意,只有更新到新模块的用户将具有此问题。

电源外壳 Core.默认使用较新模块且是 不容易修理.

迹象表明你处于糟糕状态

These are the error messages you get when in this bad state. If you call Find-Module or Install-Module you should see something like this:

find-module : The 'find-module' command was found in the module 'PowerShellGet', but the module
could not be loaded. For more information, run 'Import-Module PowerShellGet'.

install-module : The 'install-module' command was found in the module 'PowerShellGet', but the
module could not be loaded. For more information, run 'Import-Module PowerShellGet'.

If you try and import the 电源外壳Get module, then you will see this error message:

PS:> Import-Module PowerShellGet

import-module : The required module 'PackageManagement' is not loaded. Load the module or remove
the module from 'RequiredModules' in the file 'C:\Program
Files\WindowsPowerShell\Modules\powershellget\1.6.0\powershellget.psd1'.

早期报告问题

下面的详细信息包含在提供修复之前为我们提供的所有信息。

推特

这些是谈论问题的第一个推文:

Technet.

马克正在谈论这个线程: 最新更新指示peasecto.a感染。此线程表示Msonline和Azure模块受到影响。即使我发布这个,很多好的信息也在这里收集。

reddit.

reddit.也注明了这个问题。

github问题

在GitHub项目上开始出现问题。

下次

Lee Holmes指出,微软确实有一个提交误报的过程。

下次找到防御者攻击错误的文件时,可以 提交文件进行分析.