FindAndDisableGuests.ps1 (zpäť na zoznam)
Hľadanie všetkých guest účtov, zmena hesla na akékýkoľvek náhodný reťazec a zablokovanie týchto účtov.
$hostname = hostname
$adsi = [ADSI]"WinNT://$hostname"
$Users = $adsi.Children | Where-Object {$_.SchemaClassName -eq 'user'}
$localUsers = @()
foreach ($user in $Users) {
$localUsers += $user.Name
}
foreach ($user in $localUsers) {
$objUser = $strSID = $null
$objUser = New-Object System.Security.Principal.NTAccount($user)
$strSID = $objUser.Translate([System.Security.Principal.SecurityIdentifier]) #translate to SID
if ($strSID.value -match "S-1-5-21-.+-501") {
$initPassword = $null
$pwdLen = 20
$pwdSource = $NULL
for ($a=33;$a –le 126;$a++) {
$pwdSource+=,[char][byte]$a
}
for ($i = 0; $i -le $pwdLen; $i++) {
$initPassword += $pwdSource | Get-Random
}
net user $user $initPassword /ACTIVE:NO
}
}