PowerShell의 ExecutionPolicy 우회 대 무제한

Migel Hewage Nimesha 2023년1월30일
  1. PowerShell 실행 정책
  2. 실행 정책 사용자 지정
  3. PowerShell 우회 정책
  4. PowerShell 무제한 정책
PowerShell의 ExecutionPolicy 우회 대 무제한

이 기사에서는 PowerShell, BypassUnrestricted의 실행 정책을 소개합니다.

PowerShell 실행 정책

PowerShell은 시스템 관리자, 보안 테스트 및 해커 사이에서 가장 널리 사용되는 스크립팅 언어 중 하나입니다. Windows는 컴퓨터에서 가장 많이 사용되는 운영 체제입니다.

따라서 수백만 명의 사용자가 사용하고 있습니다. 따라서 PowerShell은 워크플로를 자동화하고 Windows API를 호출하며 침투 테스트 도구를 작성하는 데 사용됩니다.

많은 Windows 사용자로 인해 Microsoft는 몇 가지 기본 제공 보안 기능을 추가하는 조치를 취했습니다. 시스템에서 실행할 수 있는 PowerShell 스크립트 유형을 결정하기 위해 실행 정책이 도입되었습니다.

사용자가 특정 PowerShell 스크립트를 실행하는 것이 제한된다는 의미는 아닙니다. 따라서 실행 정책은 의도하지 않은 스크립트 실행을 방지합니다.

BypassUnrestricted는 두 가지 중요한 실행 정책입니다. 이 두 정책은 매우 동일한 동작을 합니다.

실행 정책 사용자 지정

PowerShell 사용자는 기존 정책을 쉽게 변경할 수 있습니다. Set-ExecutionPolicy cmdlet은 PowerShell 실행 정책을 사용자 지정하는 데 사용됩니다.

통사론:

Set-ExecutionPolicy
   [-ExecutionPolicy] <ExecutionPolicy>
   [[-Scope] <ExecutionPolicyScope>]
   [-Force]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

-ExecutionPolicy 매개변수는 BypassUnrestricted와 같은 PowerShell 실행 정책을 지정합니다. 또한 -Scope 플래그는 Process, CurrentUser 또는 LocalMachine과 같은 정책 범위를 제공할 수 있습니다.

PowerShell 우회 정책

Bypass 정책은 모든 Windows PowerShell 보안 검사를 건너뛰는 데 사용됩니다. 위험은 우회 정책을 사용하면 경고나 프롬프트 없이 모든 PowerShell 스크립트를 실행할 수 있습니다.

따라서 사용자는 Bypass 정책을 사용할 때 주의해야 합니다. 일반적으로 보안 모델이 포함된 애플리케이션에 이 정책을 사용합니다.

Bypass 실행 정책은 아래와 같이 설정할 수 있습니다.

Set-ExecutionPolicy -ExecutionPolicy Bypass

출력:

PowerShell 우회 정책

모든 PowerShell 스크립트를 실행할 수 있으므로 PowerShell은 악의적인 스크립트가 의도하지 않게 실행되어 개인 데이터에 해를 끼칠 수 있으므로 경고합니다. 실행 정책을 변경하려면 관리자 권한으로 PowerShell을 실행해야 합니다.

Get-ExecutionPolicy cmdlet을 사용하여 정책 변경을 확인할 수 있습니다.

Get-ExecutionPolicy -List

출력:

ExecutionPolicy 우회 목록

정책 변경은 LocalMachine 범위에 영향을 줍니다.

PowerShell 무제한 정책

Unrestricted 정책은 Bypass 정책과 유사합니다. 주요 차이점은 Unrestricted 정책이 서명되지 않은 스크립트를 실행하기 전에 경고하고 올바른 권한을 요청한다는 것입니다.

Set-ExecutionPolicy cmdlet을 사용하여 이 실행 정책을 설정할 수 있습니다.

Set-ExecutionPolicy -ExecutionPolicy Unrestricted

출력:

PowerShell 무제한 정책

Get-ExecutionPolicy cmdlet을 통해 위의 변경 사항을 확인할 수 있습니다.

출력:

ExecutionPolicy 무제한 목록

Migel Hewage Nimesha avatar Migel Hewage Nimesha avatar

Nimesha is a Full-stack Software Engineer for more than five years, he loves technology, as technology has the power to solve our many problems within just a minute. He have been contributing to various projects over the last 5+ years and working with almost all the so-called 03 tiers(DB, M-Tier, and Client). Recently, he has started working with DevOps technologies such as Azure administration, Kubernetes, Terraform automation, and Bash scripting as well.