Windows (desktop and server)
TMA-WIN10-1.1.1
Ensure 'Enforce password history' is set to '24 or more password(s)'
Description
This policy setting determines the number of renewed, unique passwords that have to be associated with a user account before you can reuse an old password. The value for this policy setting must be between 0 and 24 passwords. The default value for stand- alone systems is 0 passwords, but the default setting when joined to a domain is 24 passwords. To maintain the effectiveness of this policy setting, use the Minimum password age setting to prevent users from repeatedly changing their password. The recommended state for this setting is: 24 or more password(s). Note: Password Policy settings (se
How it is checked
Audit method: Shell command
$f = Join-Path $env:TEMP ('tmaegis-' + [guid]::NewGuid().ToString() + '.inf'); secedit /export /cfg $f /areas SECURITYPOLICY USER_RIGHTS /quiet | Out-Null; $c = Get-Content $f -ErrorAction SilentlyContinue; Remove-Item $f -Force -ErrorAction SilentlyContinue; $line = $c | Where-Object { $_ -match '^\s*PasswordHistorySize\s*=' } | Select-Object -First 1; $v = if ($line) { ($line -split '=', 2)[1].Trim().Trim('"') } else { $null }; if (($null -ne $v -and [int64]$v -ge 24)) { 'compliant' } else { 'non-compliant: ' + $v }- Expected output
compliant
How it is fixed
Fix method: Guidance or infrastructure patch
Set through Group Policy (domain policy for domain members): Computer Configuration\Policies\Windows Settings\Security Settings\Account Policies\Password Policy\Enforce password history
Properties
- Operating systems
- windows-10
- Tags
- cis-convertedseceditwindows
- Reference
- CIS Microsoft Windows 10 Enterprise Benchmark v4.0.0 - 1.1.1
Check this host
Run this on a machine you are allowed to audit. The scan is read-only.
tmaegis scan --target windows