PowerShell 中的 ExecutionPolicy Bypass 和 Unrestricted
本文介绍 PowerShell 中的执行策略 Bypass
和 Unrestricted
。
PowerShell 执行策略
PowerShell 是系统管理员、安全测试和黑客中最流行的脚本语言之一。Windows 是最流行的计算机操作系统。
因此,数以百万计的用户正在使用它。因此,PowerShell 用于自动化工作流程、调用 Windows API 和编写渗透测试工具。
由于 Windows 用户众多,微软采取措施添加了一些内置的安全功能。引入执行策略来确定可以在系统上执行哪种类型的 PowerShell 脚本。
这并不意味着用户被限制执行某些 PowerShell 脚本。因此,执行策略可以防止意外的脚本执行。
Bypass
和 Unrestricted
是两个重要的执行策略。这两个策略的行为非常相似。
自定义执行策略
PowerShell 用户可以轻松更改现有策略。Set-ExecutionPolicy
cmdlet 用于自定义 PowerShell 执行策略。
语法:
Set-ExecutionPolicy
[-ExecutionPolicy] <ExecutionPolicy>
[[-Scope] <ExecutionPolicyScope>]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
-ExecutionPolicy
参数指定 PowerShell 执行策略,例如 Bypass
和 Unrestricted
。此外,-Scope
标志可以给出策略范围,如 Process
、CurrentUser
或 LocalMachine
。
PowerShell Bypass
策略
Bypass
策略用于跳过所有 Windows PowerShell 安全检查。风险是绕过
策略允许你在没有警告或提示的情况下运行任何 PowerShell 脚本。
因此,用户在使用 Bypass
策略时需要小心。通常,我们将此策略用于包含其安全模型的应用程序。
Bypass
执行策略可以如下所示建立。
Set-ExecutionPolicy -ExecutionPolicy Bypass
输出:
由于它允许你执行任何 PowerShell 脚本,因此 PowerShell 会警告你,因为恶意脚本可能会无意中运行并损害你的私人数据。你需要以管理员权限运行 PowerShell 才能更改执行策略。
我们可以使用 Get-ExecutionPolicy
cmdlet 确认策略更改。
Get-ExecutionPolicy -List
输出:
策略更改影响了 LocalMachine
范围。
PowerShell Unrestricted
策略
Unrestricted
策略类似于 Bypass
策略。主要区别在于 Unrestricted
策略会在执行未签名脚本之前警告你并要求正确的权限。
你可以使用 Set-ExecutionPolicy
cmdlet 设置此执行策略。
Set-ExecutionPolicy -ExecutionPolicy Unrestricted
输出:
我们可以使用 Get-ExecutionPolicy
cmdlet 确认上述更改。
输出:
相关文章
在 PowerShell 中管理服务
发布时间:2024/02/08 浏览次数:116 分类:编程语言
-
本文将讨论 PowerShell 服务 cmdlet、如何使用它们,并开发我们的脚本以在本地或远程管理多台计算机上的服务。
使用 PowerShell 获取 Windows 服务的启动类型
发布时间:2024/02/08 浏览次数:127 分类:编程语言
-
本教程将教你使用 PowerShell 获取启动类型的 Windows 服务。
PowerShell 中的属性 Property 与 ExpandProperty
发布时间:2024/02/08 浏览次数:198 分类:编程语言
-
本文将讨论什么是属性并将它们与扩展属性区分开来。Windows PowerShell 主要集中在显示和生成对象。这些对象由称为属性的特定细节支持。
在 PowerShell 中将字符串转换为日期时间
发布时间:2024/02/08 浏览次数:89 分类:编程语言
-
本教程将教你在 PowerShell 中将字符串转换为 DateTime。String 和 DateTime 是 PowerShell 中的两种不同的数据类型。
在 PowerShell 中提取子字符串
发布时间:2024/02/07 浏览次数:162 分类:编程语言
-
本文将讨论如何使用 PowerShell 的字符串库有效地提取字符串中的子字符串。作为 Windows 管理员的一个典型场景是找出一种方法来在称为子字符串的字符串中查找特定的文本片段
在 PowerShell 中连接字符串
发布时间:2024/02/07 浏览次数:175 分类:编程语言
-
本文将展示我们可以在 PowerShell 中使用的所有可能的方法来连接字符串和变量。PowerShell 使用不同的运算符和函数来实现字符串连接。
在 PowerShell 中将字符串转换为整数
发布时间:2024/02/07 浏览次数:132 分类:编程语言
-
本教程将教你在 PowerShell 中将字符串转换为整数。在 PowerShell 中使用 [int] 将字符串转换为整数
在 PowerShell 中将字符串拆分为单独的变量
发布时间:2024/02/07 浏览次数:140 分类:编程语言
-
本教程将介绍在 PowerShell 中将字符串拆分为单独的变量。字符串是用于表示文本的字符序列。它是 PowerShell 中常见的数据类型之一。