PS 7 bug fixes
This commit is contained in:
27
Elysium.ps1
27
Elysium.ps1
@@ -100,11 +100,21 @@ do {
|
|||||||
}
|
}
|
||||||
'2' {
|
'2' {
|
||||||
Write-Host "Testing Weak AD Passwords..."
|
Write-Host "Testing Weak AD Passwords..."
|
||||||
& (Join-Path -Path $PSScriptRoot -ChildPath 'Test-WeakADPasswords.ps1')
|
$testScript = Join-Path -Path $PSScriptRoot -ChildPath 'Test-WeakADPasswords.ps1'
|
||||||
|
if ($PSVersionTable.PSEdition -eq 'Desktop') {
|
||||||
|
& $testScript
|
||||||
|
} else {
|
||||||
|
Invoke-WindowsPowerShellScript -ScriptPath $testScript
|
||||||
|
}
|
||||||
}
|
}
|
||||||
'3' {
|
'3' {
|
||||||
Write-Host "Extracting and Sending Current Hashes..."
|
Write-Host "Extracting and Sending Current Hashes..."
|
||||||
& (Join-Path -Path $PSScriptRoot -ChildPath 'Extract-NTHashes.ps1')
|
$extractScript = Join-Path -Path $PSScriptRoot -ChildPath 'Extract-NTHashes.ps1'
|
||||||
|
if ($PSVersionTable.PSEdition -eq 'Desktop') {
|
||||||
|
& $extractScript
|
||||||
|
} else {
|
||||||
|
Invoke-WindowsPowerShellScript -ScriptPath $extractScript
|
||||||
|
}
|
||||||
}
|
}
|
||||||
'4' {
|
'4' {
|
||||||
Write-Host "Uninstalling..."
|
Write-Host "Uninstalling..."
|
||||||
@@ -128,3 +138,16 @@ do {
|
|||||||
} finally {
|
} finally {
|
||||||
Stop-OrchestratorTranscript
|
Stop-OrchestratorTranscript
|
||||||
}
|
}
|
||||||
|
function Invoke-WindowsPowerShellScript {
|
||||||
|
param([string]$ScriptPath)
|
||||||
|
$powershellCmd = Get-Command -Name 'powershell.exe' -ErrorAction SilentlyContinue
|
||||||
|
if (-not $powershellCmd) {
|
||||||
|
throw "Windows PowerShell (powershell.exe) was not found. Install it or run the script from a Desktop edition session."
|
||||||
|
}
|
||||||
|
$args = @('-NoLogo', '-NoProfile', '-ExecutionPolicy', 'Bypass', '-File', $ScriptPath)
|
||||||
|
& $powershellCmd.Path @args
|
||||||
|
$exitCode = $LASTEXITCODE
|
||||||
|
if ($exitCode -ne 0) {
|
||||||
|
throw ("Windows PowerShell script '{0}' exited with code {1}." -f $ScriptPath, $exitCode)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -22,12 +22,6 @@ This script will connect to selected domain (defined in ElysiumSettings.txt) usi
|
|||||||
|
|
||||||
$ErrorActionPreference = 'Stop'
|
$ErrorActionPreference = 'Stop'
|
||||||
Set-StrictMode -Version Latest
|
Set-StrictMode -Version Latest
|
||||||
[string]$commonHelper = Join-Path -Path $PSScriptRoot -ChildPath 'Elysium.Common.ps1'
|
|
||||||
if (-not (Test-Path -LiteralPath $commonHelper)) { throw "Common helper not found at $commonHelper" }
|
|
||||||
. $commonHelper
|
|
||||||
if ($PSVersionTable.PSEdition -ne 'Desktop') {
|
|
||||||
Restart-WithWindowsPowerShellIfAvailable -BoundParameters $PSBoundParameters -UnboundArguments $MyInvocation.UnboundArguments
|
|
||||||
}
|
|
||||||
|
|
||||||
$scriptRoot = $PSScriptRoot
|
$scriptRoot = $PSScriptRoot
|
||||||
|
|
||||||
|
|||||||
@@ -24,12 +24,6 @@ This script will test the passwords of selected domain (defined in ElysiumSettin
|
|||||||
# Enable verbose output
|
# Enable verbose output
|
||||||
$ErrorActionPreference = 'Stop'
|
$ErrorActionPreference = 'Stop'
|
||||||
Set-StrictMode -Version Latest
|
Set-StrictMode -Version Latest
|
||||||
[string]$commonHelper = Join-Path -Path $PSScriptRoot -ChildPath 'Elysium.Common.ps1'
|
|
||||||
if (-not (Test-Path -LiteralPath $commonHelper)) { throw "Common helper not found at $commonHelper" }
|
|
||||||
. $commonHelper
|
|
||||||
if ($PSVersionTable.PSEdition -ne 'Desktop') {
|
|
||||||
Restart-WithWindowsPowerShellIfAvailable -BoundParameters $PSBoundParameters -UnboundArguments $MyInvocation.UnboundArguments
|
|
||||||
}
|
|
||||||
|
|
||||||
$VerbosePreference = "SilentlyContinue"
|
$VerbosePreference = "SilentlyContinue"
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user