# 说明 因为CIS Benchamrk中的条目太多,所以有必要单开一页来记录。 Benchmark的基准OS版本是Windows 11 23H2,而我的VMware中的虚拟机服务器则是Window Server 2022. 共有19章节,一一列举如下。 # 1.Account Policies ## 1.1 Password Policy ### 1.1.1 Ensure 'Enforce password history' is set to '24 or more password(s) 微软对于Win11系统的最长密码记录就是24世代。当用户长时间使用同一密码,攻击者使用暴力破解获取密码的可能性就越大。如果公司要求员工定期进行密码更换,但却未禁止用户复用密码,则定期变更密码的效果会大打折扣。 而且用户会倾向于设置新密码为增量形式,比如password01,password02,易记但容易被猜到。 **设置方法** Computer Configuration\Policies\Windows Settings\Security Settings\Account Policies\Password Policy\Enforce password history {{:resources:os:windows_11:pasted:20241117-224419.png}} ### 1.1.2 Ensure 'Maximum password age' is set to '365 or fewer days, but not 0 这个用于设置每一个密码可以用多久。如果设置为0,则密码永不过期。在1.1 Password Policy的设置和1.2 Account Lockout Policy的设置必须在**Default Domain Policy**中的GPO里修改,以对全Domain生效。如果是在其他GPO里修改,则只影响该GPO对应的用户账户或计算机。当然,添加其他Password Policy到特定用户或用户组也是OK的,一般是通过Active Directory Administrative Center. 参考期限:60Days 目前美国NISC已经提倡不需要定期修改密码,而是应该提高密码的复杂度以降低被攻破的风险。现在的最佳实践(BestPractice)是只在确认密码已泄露的情况下,强制要求用户修改密码。 **设置方法** Computer Configuration\Policies\Windows Settings\Security Settings\Account Policies\Password Policy\Maximum password age {{:resources:os:windows_11:pasted:20241117-225335.png}} Max的设置范围是1-999天,Mix的设置范围是0-998天。 ### 1.1.3 Ensure 'Minimum password age' is set to '1 or more day(s) 同上,设置的是最小值,默认是1天。 Computer Configuration\Policies\Windows Settings\Security Settings\Account Policies\Password Policy\Minimum password age **设置方法** {{:resources:os:windows_11:pasted:20241117-232056.png}} ###1.1.4 Ensure 'Minimum password length' is set to '14 or more character(s) 在Windows Server2016版或之前,GPO不允许将最短密码长度设为$\geq 14$,但是在2019版之后,微软允许将最小密码长度设置为20. 长密码可以降低风险,因为密码如果多次输错会导致账户被锁定。(用户自己多次输错则会增加Helpdesk的负担,即重置密码等。) ###1.1.5 Ensure 'Password must meet complexity requirements' is set to 'Enabled' 确保密码满足复杂度要求,Enabled之后,则密码必须符合以下要求: - 不包含用户名或全名中的2个连续或以上字符 - 密码长度为6或以上 - 包含至少3种类型的字符(大小写字母A-Za-z,数字0-9以及特殊符号),或是其他Unicode字符 要知道,每增加一个字符,密码的复杂度就会呈指数级增长。 而且要对全体用户生效,必须在Default Domain Policy中设置。 特别地,我们还可以自定义密码复杂度要求,具体方法为设置Passfilt.dll文件,比如要求使用Shift+1~0字符,或是使用Alt+0128-0159的字符 **设置方法** Computer Configuration\Policies\Windows Settings\Security Settings\Account Policies\Password Policy\Password must meet complexity requirements ###1.1.6 Ensure 'Relax minimum password length limits' is set to 'Enabled' 是否允许最小密码长度值被发动,这一设置只会影响Local Account,与Domain accounts无关。 **设置方法** Computer Configuration\Policies\Windows Settings\Security Settings\Account Policies\Password Policy\Relax minimum password length limits