首页/安全/安全加固速查/Windows 服务与启动类型盘点
服务与端口收敛50 条

Windows 服务与启动类型盘点

Windows 同样要“运行即必要”:用 PowerShell 导出运行中与自动启动服务清单,逐项与批准清单比对。

安全加固速查安全更新于 2026-10-13

Windows 也要“运行即必要”

Windows 服务的攻击面不比 Linux 小:历史漏洞常出现在打印、远程注册表、SMB 相关服务上,而很多服务器在装完业务后仍留着这些默认组件。核查方法是导出运行中与自动启动的服务清单,逐项与批准清单比对;对路径不在系统目录、启动账号异常、显示名与注册表名不一致的项重点排查,这些通常是第三方软件、历史遗留或被攻击者注册的持久化服务。

基本信息

加固项服务与启动项最小化
适用平台Windows 10/11、Windows Server
权限要求本地管理员
达标判据运行中与自启服务均有业务归属,无未授权服务
输出物服务清单 CSV,纳入配置基线用于 diff

典型使用场景

  • 新交付服务器的服务清点与收敛
  • 等保与 CIS 核查“最小服务”条款取证
  • 排查偶发性能问题时确认有无多余服务占用资源
  • 安全事件排查:寻找新增的可疑服务与启动项
  • 变更后 diff 清单,发现被悄悄改动的启动类型

运行中服务清单

运行中服务清单
Get-Service | Where-Object {$_.Status -eq 'Running'} | Sort-Object DisplayName | Format-Table -AutoSize
Get-CimInstance Win32_Service | Where-Object {$_.StartMode -eq 'Auto'} | Select-Object Name, DisplayName, StartMode, StartName, State | Sort-Object Name | Export-Csv C:\temp\services-auto.csv -NoTypeInformation -Encoding UTF8
Get-Service | Where-Object {$_.Status -eq 'Stopped' -and $_.StartType -eq 'Automatic'}   # 启不来的自启服务:可能是残留或配置错误

异常服务排查线索

异常服务排查线索
Get-CimInstance Win32_Service | Where-Object {$_.PathName -notlike 'C:\Windows\*'} | Select-Object Name, PathName, StartName | Format-Table -Wrap
Get-CimInstance Win32_Service | Where-Object {$_.StartName -notlike 'NT AUTHORITY\*' -and $_.StartName -notlike 'LocalSystem'} | Select-Object Name, StartName   # 以普通账号或域账号运行的服务
Get-CimInstance Win32_Service | Where-Object {$_.PathName -match 'Temp|Users|ProgramData'}   # 路径落在可写目录的服务,警惕持久化

逐列读法与判读

字段含义异常表现
Name注册表名(服务键名)脚本比对要用它,显示名不可靠
DisplayName界面显示名可被随意修改,不能作为唯一标识
StartModeAuto/Manual/Disabled业务不需要却为 Auto,属待收敛项
StartName运行账号以域账号或普通用户运行需核实必要性
PathName可执行文件路径落在 Temp、Users、ProgramData 等可写目录需重点排查
把清单导出成 CSV 纳入配置基线,新装机器或变更后做一次 diff,异常服务会立刻现形。相比每次人工翻服务列表,基线比对能发现“启动类型从 Manual 被改成 Auto”这类容易被忽略的变化。
处置时不要凭名字判断:“不认识就关”可能停掉业务依赖的守护服务或安全软件的代理进程。稳妥流程是先确认服务对应的软件包与发布方、查看依赖关系与服务日志,再决定停用还是保留,并在变更记录里写明原因。

易错点

  • 用显示名做脚本比对:显示名可以重复且易被修改,服务唯一标识应使用 RegistryName(Name)
  • 误停第三方软件的守护服务,导致业务中断,变更前要核对发布方与依赖关系
  • 只看运行中服务不看自动启动项:带故障未启动的自启服务同样是风险与隐患
  • 忽略运行账号字段:以域账号运行的服务若口令过期或权限过大,既是故障点也是风险点

数据来源与参考

  • CIS Windows Benchmark:服务条目
  • 等保 2.0:最小服务

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌