This commit is contained in:
2023-11-29 17:05:43 +01:00
parent 4a5175593f
commit 3d783d5fa1
2 changed files with 76 additions and 0 deletions

33
Execute-Script.ps1 Normal file
View File

@@ -0,0 +1,33 @@
<#
.EXAMPLE
.\Execute-Script.ps1 -BinFilePath "C:\scripts\script.bin" -Credential (Get-credential)
#>
param (
[Parameter(Mandatory)]
[String]$BinFilePath ,
[Parameter(Mandatory)]
[System.Management.Automation.PSCredential]$Credential
)
$testPath = Test-Path -Path $BinFilePath
if ($testPath -eq $false) {
Write-Error "Path '$BinFilePath' does not exists"
break
}
$credentialTest = ($Credential.GetNetworkCredential().Password).Length
if ($credentialTest -eq $null) {
Write-Error "Password lenght used is equeal 0"
break
}
function Execute-EncryptedScript($BinFilePath, [SecureString]$Password) {
trap { "Decryption failed"; break }
$raw = Get-Content $BinFilePath
$secure = ConvertTo-SecureString $raw -SecureKey $Password
$helper = New-Object system.Management.Automation.PSCredential("test", $secure)
$plain = $helper.GetNetworkCredential().Password
Invoke-Expression $plain
}
Execute-EncryptedScript -BINFilePath $BinFilePath -Password $Credential.Password