我禁用了 Windows Defender 的实时监控,但 PowerShell 脚本仍然被阻止

我禁用了 Windows Defender 的实时监控,但 PowerShell 脚本仍然被阻止

我通过以管理员身份在 PowerShell 中运行命令来禁用 Windows Defender 的实时监控:

Set-MpPreference -DisableRealtimeMonitoring $true

但仍然无法执行脚本获取 TSLsaSecret。当我尝试运行它时,我得到:

At line:1 char:1
+ function Get-TSLsaSecret {
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~
This script contains malicious content and has been blocked by your antivirus software.
    + CategoryInfo          : ParserError: (:) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : ScriptContainedMaliciousContent

编辑1:

在 Windows 设置中手动关闭 Windows Defender 实时保护后,我能够运行该脚本。但不清楚为什么该命令不起作用。

答案1

Windows Defender 不喜欢,Get-TSLsaSecret因为这个脚本可以访问 Windows 最秘密的部分。

LSA 机密存储为 LSA 私有数据 在注册表中的 子项下 HKEY_LOCAL_MACHINE\SECURITY\Policy\Secrets。例如,用于访问系统服务的所有信息(包括密码)都以纯文本形式保存在 子项下_SC_<ServiceName>。用户帐户信息也保存在此处。

数据可能被黑客入侵。有关取证处理,请参阅
使用 PowerShell 从注册表解密 LSA 机密

毫不奇怪,对该密钥的访问受到严格控制,甚至管理员也无法访问。Windows Defender 将防范任何此类尝试,并且在扫描磁盘时甚至会删除破解 LSA 的脚本。

结论:要使用此脚本,您基本上需要停用 Windows Defender。如果您重新激活它,您可能会发现您的脚本已被隔离,需要允许和恢复。

相关内容