一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

Windows 环境中的权限权限评估检查清单

时间:2026-07-21 08:53:54 编辑:袖梨 来源:一聚教程网

Windows权限评估核心是验证实际生效的权限链条:从登录方式、会话上下文、令牌权限到ACL,重点核查高权限账户、隐性提权路径、服务/任务配置缺陷、关键路径与注册表可写性、权限分配及审计策略完整性。

windows 环境下的权限评估,核心是确认“谁能在什么条件下、以什么身份、执行什么操作”。不是只看账户名或组名,而是要验证实际生效的权限链条——从登录方式、会话上下文、令牌权限,到文件/注册表/服务等具体对象的访问控制列表(acl)。

账户与组成员关系核查

重点识别高权限账户和隐性提权路径:

  • net localgroup administrators 查看本地管理员组成员,确认无多余账户(特别是 Guest、测试账号、已离职人员账号)
  • 运行 whoami /groups 查看当前会话的全部组 SID 和属性,注意是否包含 SeDebugPrivilegeSeBackupPrivilegeSeRestorePrivilege 等敏感特权
  • 检查是否存在嵌套组权限继承,例如某普通用户属于一个被加入 Administrators 的自定义组,但该组本身未被审计
  • 通过 lusrmgr.msc 核对本地用户状态:禁用非必要账户,删除空密码账户,确保所有账户启用密码策略

服务与计划任务权限分析

服务和计划任务常以 SYSTEM 或高权限用户运行,其配置缺陷极易导致权限提升:

  • sc qc <servicename> 检查服务二进制路径,确认路径含空格时是否加了英文双引号;若无引号且路径前段目录可写(如 C:Program FilesApp),攻击者可在 C: 下放恶意 Program.exe
  • 运行 Get-Service | Where-Object {$_.StartType -eq 'Automatic'} | ForEach-Object {sc qc $_.Name} 批量检查自动启动服务路径规范性
  • 检查 C:WindowsSystem32Tasks 目录权限:icacls "C:WindowsSystem32Tasks",确保非 SYSTEM/Administrators 用户无写入或修改权限
  • 导出所有计划任务:schtasks /query /fo LIST /v > tasks_full.txt,人工筛查是否使用高权限上下文(如 SYSTEM)运行用户可控脚本

文件与注册表关键位置可写性检查

攻击者常利用可写目录或注册表项植入恶意代码,需聚焦系统级敏感路径:

  • 检查以下目录是否对低权限用户可写:C:WindowsSystem32C:WindowsSysWOW64C:Program FilesC:Program Files (x86) —— 使用 icaclsaccesschk64.exe -uqwc
  • 验证注册表项 HKEY_LOCAL_MACHINESOFTWAREPoliciesMicrosoftWindowsInstallerAlwaysInstallElevated 是否为 0(启用时允许普通用户以 SYSTEM 安装 MSI)
  • 搜索 Unattend.xml 文件:dir /s /b C:WindowsPantherUnattend*.xml C:WindowsSystem32Sysprepunattend.xml 2>nul,一旦存在,立即检查是否含明文密码
  • 检查 PATH 环境变量中各目录的写权限:$env:PATH -split ';' | ForEach-Object {icacls $_ 2>nul | findstr 'BUILTINUsers.*M'}

权限分配与审计策略验证

系统级权限分配和日志记录能力决定能否追溯异常行为:

  • 打开 gpedit.msc → 计算机配置 → Windows 设置 → 安全设置 → 本地策略 → 用户权限分配,重点检查:
    – “管理审核和安全日志”是否仅限 Administrators
    – “从网络访问此计算机”是否限制为必要组(而非 Everyone)
    – “拒绝从网络访问这台计算机”是否明确排除高危账户
  • 在事件查看器中检查安全日志是否启用:右键“安全”日志 → 属性 → 确认“启用日志”已勾选,最大日志大小 ≥ 100MB,覆盖策略合理
  • 运行 auditpol /get /category:* | findstr "Success.*Failure",确认关键事件(如账户登录、特权使用、对象访问)已开启成功+失败审计
  • 检查远程桌面相关策略:gpedit.msc → 计算机配置 → 管理模板 → Windows 组件 → 远程桌面服务 → 安全 → “要求使用特定的安全层”应设为 SSL,并启用“始终要求使用网络级身份验证”

热门栏目