等保测评命令——Windows Server

依据 GB/T 22239-2019《信息安全技术 网络安全等级保护基本要求》第三级”安全计算环境” 条款,给出 Windows Server 2012 R2/2016/2019/2022 的现场测评速查命令与快捷操作清单。

可直接在 CMD、PowerShell、图形界面(MMC 控制台) 中执行,覆盖身份鉴别、访问控制、安全审计、入侵防范、恶意代码防范、可信验证、数据备份恢复、剩余信息保护 8 大控制点。

已在 Windows Server 2012 R2/2016/2019/2022 Datacenter & Standard 版 验证,符合 GB/T 22239-2019 第三级要求。


一、身份鉴别(8.1.4.1)

控制项操作路径 / 命令达标判据
必须输入用户名密码netplwiz 或 control userpasswords2勾选”要使用本计算机,用户必须输入用户名和密码”
密码复杂度gpedit.msc → 计算机配置 → Windows 设置 → 安全设置 → 账户策略 → 密码策略启用”密码必须符合复杂性要求”,长度 ≥8,最长使用期限 ≤90 天
登录失败锁定同上 → 账户锁定策略锁定阈值 ≤5 次,锁定时间 ≥30 分钟
远程超时gpedit.msc → 计算机配置 → 管理模板 → Windows 组件 → 远程桌面服务 → 会话时间限制空闲会话 ≤30 分钟断开
禁止空口令lusrmgr.msc → 用户 → 右键属性所有账户”密码永不过期”未勾选,空口令无法登录

二、访问控制(8.1.4.2)

控制项操作路径 / 命令达标判据
用户唯一性lusrmgr.msc → 用户无重复用户名;禁用或删除默认 Guest、DefaultAccount
权限分离secpol.msc → 本地策略 → 用户权限分配仅 Administrators 组具备”取得文件或其他对象的所有权”
默认共享cmd → net share不存在 ADMIN、C、IPC$ 等默认共享
高危端口cmd → netstat -ano未监听 135/139/445/3389(如需远程,需加防火墙限制)
防火墙策略wf.msc 或 cmd → netsh advfirewall show allprofiles防火墙启用,入站规则仅开放业务端口

三、安全审计(8.1.4.3)

控制项操作路径 / 命令达标判据
审计策略启用secpol.msc → 本地策略 → 审核策略至少启用”审核登录事件、审核策略更改、审核特权使用、审核系统事件”成功与失败
记录完整性eventvwr.msc → Windows 日志 → 安全日志包含日期、时间、用户、事件 ID、成功/失败
日志保留期wevtutil gl securityretention=true 且日志大小 ≥1 GB;或自动归档 ≥6 个月
日志保护icacls %SystemRoot%\System32\winevt\Logs\Security.evtx仅 SYSTEM、本地 Administrators 具有完全控制

四、入侵防范(8.1.4.4)

控制项操作路径 / 命令达标判据
最小安装appwiz.cpl → “启用或关闭 Windows 功能”仅勾选业务所需角色和功能
服务精简services.msc 或 cmd → sc query type=service state=all禁用 / 停止 Remote Registry、Telnet、Print Spooler 等非必需服务
补丁更新sconfig(Server Core)→ 5) Windows Update Settings → A) 自动
或 Get-WindowsUpdateLog
最近 30 天内已安装补丁,无高危漏洞
漏洞扫描运行 MBSA / WSUS Offline / Windows Update无 Critical/High 漏洞

五、恶意代码防范(8.1.4.5)

控制项操作路径 / 命令达标判据
Defender 启用Get-MpComputerStatusRealTimeProtectionEnabled=True;AntivirusEnabled=True
病毒库更新Get-MpThreatSignatureSignatureLastUpdated ≤24 小时
实时扫描Get-MpPreference | select DisableRealtimeMonitoring返回 False

Windows Server 2016 以下默认无 Defender,需安装或改用第三方杀毒并截图其控制台。


六、可信验证(8.1.4.6)

控制项操作路径 / 命令达标判据
TPM 2.0tpm.msc“TPM 已准备就绪,正在使用”
Secure BootConfirm-SecureBootUEFI (PowerShell)返回 True
BitLocker 系统卷manage-bde -status C:保护状态:Protection On,加密方法 XTS-AES 256

七、数据备份与恢复(8.1.4.9)

控制项操作路径 / 命令达标判据
系统状态备份wbadmin get versions最近 24 小时内存在 SystemState\Bare Metal Recovery 备份
计划任务taskschd.msc → Microsoft → Windows → Backup每日或每周定时任务
离线存储访谈管理员备份文件定期离线或云端冗余保存
恢复演练wbadmin get items 并实际恢复到测试机验证可成功恢复系统

八、剩余信息保护(8.1.4.10)

控制项操作路径 / 命令达标判据
登录名不缓存secpol.msc → 本地策略 → 安全选项 → “交互式登录:不显示最后的用户名”已启用
清除虚拟内存同上 → “关机:清除虚拟内存页面文件”已启用
屏幕保护密码个性化 → 屏幕保护程序 → 等待 ≤10 分钟,勾选”在恢复时显示登录屏幕”已启用

一键巡检脚本(PowerShell)

# Windows Server 等保三级一键巡检脚本
# 适用:Windows Server 2012 R2/2016/2019/2022
# 执行权限:管理员

Write-Host"===== 1 身份鉴别 ====="-ForegroundColor Green

# 密码策略
Write-Host"--- 密码策略 ---"
net accounts

# 账户锁定策略
Write-Host"--- 账户锁定策略 ---"
net accounts | findstr "锁定"

# 禁止空口令检查
Write-Host"--- 空口令检查 ---"
Get-WmiObject-Class Win32_UserAccount -Filter"PasswordRequired=False and LocalAccount=True"|
Select-Object Name, PasswordRequired

Write-Host""
Write-Host"===== 2 访问控制 ====="-ForegroundColor Green

# 本地用户
Write-Host"--- 本地用户 ---"
net user

# 管理员组
Write-Host"--- 管理员组 ---"
net localgroup administrators

# 共享
Write-Host"--- 共享资源 ---"
net share

# 监听端口
Write-Host"--- 监听端口 ---"
netstat -ano | findstr "LISTENING"

# 防火墙状态
Write-Host"--- 防火墙状态 ---"
netsh advfirewall show allprofiles state

Write-Host""
Write-Host"===== 3 安全审计 ====="-ForegroundColor Green

# 审计策略
Write-Host"--- 审计策略 ---"
auditpol /get /category:*| findstr /i "成功|失败"

# 安全日志大小
Write-Host"--- 安全日志配置 ---"
wevtutil gl security | findstr /i "日志大小|保留"

# 日志权限
Write-Host"--- 日志文件权限 ---"
icacls "$env:SystemRoot\System32\winevt\Logs\Security.evtx"

Write-Host""
Write-Host"===== 4 入侵防范 ====="-ForegroundColor Green

# 系统版本
Write-Host"--- 系统版本 ---"
systeminfo | findstr /B /C:"OS 名称"/C:"OS 版本"

# 已安装补丁
Write-Host"--- 最近补丁 ---"
Get-HotFix|Sort-Object InstalledOn -Descending |Select-Object-First 5

# 运行服务
Write-Host"--- 高危服务状态 ---"
$dangerousServices = @("Telnet","RemoteRegistry","Spooler","Fax")
foreach($svc in $dangerousServices){
$status = Get-Service-Name $svc-ErrorAction SilentlyContinue
if($status){
Write-Host"$svc : $($status.Status)"
}
}

Write-Host""
Write-Host"===== 5 恶意代码防范 ====="-ForegroundColor Green

# Defender状态
Write-Host"--- Windows Defender 状态 ---"
try{
$defender = Get-MpComputerStatus
Write-Host"实时保护: $($defender.RealTimeProtectionEnabled)"
Write-Host"防病毒启用: $($defender.AntivirusEnabled)"
Write-Host"病毒库更新时间: $($defender.AntivirusSignatureLastUpdated)"
}catch{
Write-Host"Windows Defender 未安装或无法访问"
}

Write-Host""
Write-Host"===== 6 可信验证 ====="-ForegroundColor Green

# TPM状态
Write-Host"--- TPM 状态 ---"
Get-Tpm|Select-Object TpmPresent,TpmReady,TpmEnabled

# Secure Boot
Write-Host"--- Secure Boot ---"
try{
Confirm-SecureBootUEFI
}catch{
Write-Host"无法检测 Secure Boot 状态"
}

# BitLocker
Write-Host"--- BitLocker 状态 ---"
manage-bde -status C:

Write-Host""
Write-Host"===== 7 数据备份 ====="-ForegroundColor Green

# 备份版本
Write-Host"--- 备份版本 ---"
wbadmin get versions

Write-Host""
Write-Host"===== 8 剩余信息保护 ====="-ForegroundColor Green

# 安全选项
Write-Host"--- 关键安全选项 ---"
secedit /export /cfg $env:TEMP\secpol.cfg /quiet
Get-Content$env:TEMP\secpol.cfg | findstr /i "DontDisplayLastUserName|ClearPageFileAtShutdown"
Remove-Item$env:TEMP\secpol.cfg -Force

Write-Host""
Write-Host"===== 巡检完成 ====="-ForegroundColor Green

核心 MMC 控制台速查表

控制台启动命令主要用途
本地组策略编辑器gpedit.msc密码策略、账户锁定、远程超时
本地安全策略secpol.msc用户权限分配、审核策略、安全选项
事件查看器eventvwr.msc安全日志审查、事件追溯
本地用户和组lusrmgr.msc账户管理、权限分配
高级安全防火墙wf.msc入站/出站规则配置
服务管理services.msc服务启用/禁用
程序和功能appwiz.cpl角色和功能安装
TPM 管理tpm.msc可信平台模块状态
任务计划程序taskschd.msc备份任务配置
计算机管理compmgmt.msc综合管理工具

高风险项重点核查清单

检查项验证命令/操作不合规判定整改建议
空口令账户net user 查看存在 PasswordRequired=False 的账户设置强口令或禁用账户
密码复杂度未启用gpedit.msc → 密码策略“密码必须符合复杂性要求”为禁用启用并配置最小长度8
无账户锁定net accounts锁定阈值为0或不存在设置锁定阈值≤5次
默认共享未关闭net share存在 ADMIN、C、IPC$通过注册表或策略关闭
高危端口开放netstat -ano监听135/139/445/3389且无限制关闭服务或添加防火墙规则
审计未启用auditpol /get /category:*关键策略为”无审核”启用登录事件、策略更改等审核
Defender未启用Get-MpComputerStatusRealTimeProtectionEnabled=False启用实时保护或安装第三方杀毒
无备份策略wbadmin get versions无备份记录或超过7天配置每日系统状态备份
登录名缓存secpol.msc → 安全选项“不显示最后的用户名”为禁用启用该选项
虚拟内存未清除secpol.msc → 安全选项“清除虚拟内存页面文件”为禁用启用该选项

版本差异说明(2012 R2 vs 2016 vs 2019 vs 2022)

功能项2012 R2201620192022
Windows Defender可选安装默认启用默认启用+增强默认启用+ASR规则
PowerShell版本4.05.15.17.2+(可选)
TPM支持1.2/2.02.02.02.0
Secure Boot支持支持支持支持+DMA保护
BitLocker支持支持支持+XTS-AES支持+自动加密
容器支持Docker增强全面支持+K8s
零信任不支持不支持基础完整支持

测评执行要点

1. 权限要求

  • 所有命令需 管理员权限 执行
  • 建议创建专用审计账户,加入 Event Log Readers 和 Performance Monitor Users 组

2. 现场核查重点

  • 密码策略:不仅看配置,需尝试创建弱口令用户验证策略是否生效
  • 审计完整性:抽查事件查看器,确认包含登录失败(事件ID 4625)、权限变更(事件ID 4670)等
  • 补丁管理Get-HotFix 输出需与微软安全公告核对,确认无Critical漏洞
  • 备份有效性:必须现场执行 wbadmin start recovery 到测试环境验证

3. 图形化 vs 命令行

场景推荐方式原因
快速初检图形化(MMC)直观、易截图留证
批量核查PowerShell脚本可导出CSV/HTML报告
远程审计CMD命令低带宽环境适用
深度检查两者结合交叉验证,防止配置漂移

4. 与Linux对比

对比项Windows ServerLinux(CentOS/UOS)
身份鉴别域控/本地SAMPAM模块
审计机制Event Logauditd/syslog
防火墙Windows Firewalliptables/firewalld
恶意代码Defender/第三方ClamAV/自研
可信计算TPM + BitLockerTPM + IMA/EVM
备份工具wbadmin/VSStar/rsync/bacula

常用命令速查

:: 用户与组
net user                    :: 查看所有用户
net user administrator      :: 查看管理员详细信息
net localgroup administrators :: 查看管理员组成员

:: 网络
netstat -ano | findstr 3389  :: 查看远程桌面端口
netsh firewall show state    :: 查看防火墙状态(旧版)
netsh advfirewall show allprofiles :: 查看防火墙状态(新版)

:: 系统
systeminfo | findstr /B /C:"OS" :: 系统信息
wmic qfe get HotFixID,InstalledOn /format:table :: 补丁列表

:: 安全
auditpol /get /category:*    :: 查看审计策略
wevtutil epl Security C:\backup\security.evtx :: 导出安全日志

:: 服务
sc query type=service state=running :: 查看运行服务
sc config Spooler start= disabled   :: 禁用打印服务

参考标准:GB/T 22239-2019、GB/T 28448-2019、Microsoft Security Baseline
适用版本:Windows Server 2012 R2 / 2016 / 2019 / 2022
验证环境:Datacenter / Standard / Core 版

声明:来自汪汪虚拟空间,仅代表创作者观点。链接:https://eyangzhen.com/6567.html

汪汪虚拟空间的头像汪汪虚拟空间

相关推荐

添加微信
添加微信
Ai学习群
返回顶部