3.1Kпросмотров
7.3%от подписчиков
26 марта 2026 г.
Score: 3.5K
Как защитить свои скрипты в PowerShell: подписи и хеши По умолчанию PowerShell блокирует запуск сторонних скриптов через ExecutionPolicy. Но можно настроить гибкую защиту с проверкой цифровой подписи и хешей. Проверить текущую политику:
Get-ExecutionPolicy Установить политику для локальных скриптов:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser Подписать скрипт сертификатом:
Set-AuthenticodeSignature -FilePath .\script.ps1 -Certificate (Get-ChildItem Cert:\CurrentUser\My -CodeSigningCert) Проверить подпись:
Get-AuthenticodeSignature -FilePath .\script.ps1 Проверить хеш перед запуском:
$expected = "A1B2C3..."
$actual = (Get-FileHash .\script.ps1 -Algorithm SHA256).Hash
if ($expected -eq $actual) { .\script.ps1 } else { Write-Warning "Хеш не совпадает!" } Запустить только подписанные скрипты:
Set-ExecutionPolicy AllSigned -Scope LocalMachine Теперь система будет запрашивать подтверждение для любого неподписанного скрипта, а доверенные — запускать без предупреждений. #кмд @pcTeapot