From ebe780fc9f91ca8cf63ef43c939f6fd10ad9b26f Mon Sep 17 00:00:00 2001 From: unknown Date: Mon, 22 Apr 2019 17:04:03 +0300 Subject: [PATCH 1/2] Fixed Get-SQLServerLoginDefaultPw failure where multiple credentials are present --- PowerUpSQL.ps1 | 50 ++++++++++++++++++++++++++++++-------------------- 1 file changed, 30 insertions(+), 20 deletions(-) diff --git a/PowerUpSQL.ps1 b/PowerUpSQL.ps1 index 8d76e76..ac2cb42 100644 --- a/PowerUpSQL.ps1 +++ b/PowerUpSQL.ps1 @@ -15026,28 +15026,38 @@ Function Get-SQLServerLoginDefaultPw } # Grab username and password - $CurrentUsername = $TblResultsTemp.username - $CurrentPassword = $TblResultsTemp.password + #Write-Verbose $TblResultsTemp + #$CurrentUsername = $TblResultsTemp.username + #$CurrentPassword = $TblResultsTemp.password # Test login - $LoginTest = Get-SQLServerInfo -Instance $instance -Username $CurrentUsername -Password $CurrentPassword -SuppressVerbose - if($LoginTest){ - - Write-Verbose "$Instance : Confirmed default credentials - $CurrentUsername/$CurrentPassword" - - $SysadminStatus = $LoginTest | select IsSysadmin -ExpandProperty IsSysadmin - - # Append if successful - $TblResults.Rows.Add( - $ComputerName, - $Instance, - $CurrentUsername, - $CurrentPassword, - $SysadminStatus - ) | Out-Null - }else{ - Write-Verbose "$Instance : No credential matches were found." - } + #Write-Verbose ($instance).ToString() + #Write-Verbose ($CurrentUsername).ToString() + #Write-Verbose ($CurrentPassword).ToString() + + # Grab and iterate username and password + for($i=0; $i -lt $TblResultsTemp.count; $i++){ + $CurrentUsername = $TblResultsTemp.username[$i] + $CurrentPassword = $TblResultsTemp.password[$i] + $LoginTest = Get-SQLServerInfo -Instance $instance -Username $CurrentUsername -Password $CurrentPassword -SuppressVerbose + if($LoginTest){ + + Write-Verbose "$Instance : Confirmed default credentials - $CurrentUsername/$CurrentPassword" + + $SysadminStatus = $LoginTest | select IsSysadmin -ExpandProperty IsSysadmin + + # Append if successful + $TblResults.Rows.Add( + $ComputerName, + $Instance, + $CurrentUsername, + $CurrentPassword, + $SysadminStatus + ) | Out-Null + }else{ + Write-Verbose "$Instance : No credential matches were found." + } + } } End From 86f917d5343b2715917d77549fe5a7f5747115a5 Mon Sep 17 00:00:00 2001 From: YinjiDawn Date: Mon, 22 Apr 2019 17:18:25 +0300 Subject: [PATCH 2/2] Fixed comments --- PowerUpSQL.ps1 | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/PowerUpSQL.ps1 b/PowerUpSQL.ps1 index ac2cb42..f38bbd1 100644 --- a/PowerUpSQL.ps1 +++ b/PowerUpSQL.ps1 @@ -15025,11 +15025,6 @@ Function Get-SQLServerLoginDefaultPw return } - # Grab username and password - #Write-Verbose $TblResultsTemp - #$CurrentUsername = $TblResultsTemp.username - #$CurrentPassword = $TblResultsTemp.password - # Test login #Write-Verbose ($instance).ToString() #Write-Verbose ($CurrentUsername).ToString() @@ -15037,6 +15032,7 @@ Function Get-SQLServerLoginDefaultPw # Grab and iterate username and password for($i=0; $i -lt $TblResultsTemp.count; $i++){ + #Write-Verbose $TblResultsTemp $CurrentUsername = $TblResultsTemp.username[$i] $CurrentPassword = $TblResultsTemp.password[$i] $LoginTest = Get-SQLServerInfo -Instance $instance -Username $CurrentUsername -Password $CurrentPassword -SuppressVerbose