首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Set-ExecutionPolicy -ExecutionPolicy RemoteSigned的安全风险

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned的安全风险
EN

Stack Overflow用户
提问于 2020-10-24 07:50:48
回答 2查看 4.2K关注 0票数 0

要通过installing typescript通过NPM执行一些命令,有时需要执行以下命令:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned

在PowerShell中,当您想要更改此策略时,它会警告如下:

更改执行策略的

可能会使您面临安全风险。

我的问题是,有人知道这样做的安全风险是什么?像打字稿这样的著名软件包有可能导致安全问题吗?

EN

回答 2

Stack Overflow用户

发布于 2020-10-24 08:05:26

RemoteSigned所涉及的风险很小,基本上只允许在本地计算机中执行未签名的脚本(编写的脚本),而来自远程源(来自internet)的脚本必须由可信的权威机构签名。唯一的安全风险是有人可能在您的本地计算机上编写恶意脚本,而您在不知道它是什么的情况下执行它。这是最推荐的。服务器版本的默认设置。

并且在高度不安全的情况下不受限制,允许您从任何源运行未签名的脚本。这是不推荐的

限制的太烦人了,已经签名的脚本甚至无法运行,只有交互式会话。这在桌面版本上是默认的。

票数 2
EN

Stack Overflow用户

发布于 2020-10-24 14:05:34

制定PowerShell执行策略更多的是为了避免错误的脚本执行,而不是出于安全目的。

记住不关心执行策略的旁路ExecutionPolicy。阻止这种情况的唯一方法是按组策略阻止它。

但是即使有了它,想要执行脚本的用户也总是可以这样做的。在通过组策略阻止脚本的环境实验室中尝试上述代码,然后在PowerShell中运行此代码,不要退出PowerShell并尝试运行任何脚本,它将运行:

代码语言:javascript
复制
$context = $ExecutionContext.GetType().GetField('_context', 'NonPublic, Instance').GetValue($ExecutionContext)
$field = $context.GetType().GetField('_authorizationManager', 'NonPublic, Instance')
$field.SetValue($context, (New-Object System.Management.Automation.AuthorizationManager 'Microsoft.PowerShell'))

恶意软件使用PowerShell已经很长时间了,不管执行策略是什么。

因此,正如瓦西夫所说,你可以使用RemoteSigned而不后悔;)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64511176

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档