在这里插入图片描述

适用对象:网络安全入门学习者、取证分析初学者、Windows 运维与安全加固人员。
教学目标:理解 Windows 操作系统的安全机制,掌握数据、账户、进程服务、日志、漏洞、注册表与组策略等核心攻防面,并能够从防御和取证角度进行分析。
学习边界:本文所有攻防案例均用于授权实验、教学演示、蓝队防御与取证分析,不提供未授权入侵、绕过或破坏性攻击的操作指令。


文章目录


1. Windows 操作系统安全机制

1.1 Windows 系统发展与安全演进

Windows 操作系统经历了从 16 位、32 位到 64 位架构的发展,桌面端从 Windows 1.0、Windows 95、Windows XP、Windows 7 到 Windows 10/11,服务器端从 Windows NT 系列发展到 Windows Server 2016/2019/2022。随着系统复杂度提升,安全机制也逐渐从“简单账户密码保护”发展为一套完整的安全体系,包括:

  • 用户账户与组管理
  • 访问控制列表 ACL
  • 安全标识符 SID
  • 用户模式与内核模式隔离
  • 本地安全认证 LSASS
  • 安全账户管理 SAM
  • 安全参考监视器 SRM
  • EFS、BitLocker 等数据保护机制
  • 事件日志审计机制
  • 组策略集中管控机制

可以把 Windows 安全模型理解成一个“门禁系统”:

允许

拒绝

用户登录

身份认证

生成访问令牌

访问文件/服务/注册表

检查 ACL 权限

执行操作

访问失败并记录日志

1.2 操作系统的设计类型

PPT 中提到三类典型设计:小型系统、层次系统模型、客户机/服务器结构。

类型 代表 特点 安全影响
小型系统 MS-DOS 结构简单,过程之间相互调用 安全边界弱,缺少权限隔离
层次系统模型 传统分层 OS 每层依赖更底层模块 易维护、易测试,但层级限制较强
客户机/服务器结构 微内核思想 服务以进程形式运行,通过消息通信 服务崩溃影响较小,但通信机制复杂

Windows Server 是层次结构与客户机/服务器结构的混合体。它既有内核层、硬件抽象层,也有大量用户态服务进程。

1.3 用户模式与内核模式

Windows 将运行环境分为用户模式和内核模式:

模式 运行对象 权限 安全意义
用户模式 User Mode 普通应用、用户接口、部分服务 权限受限 应用崩溃一般不会直接导致系统崩溃
内核模式 Kernel Mode 内核、驱动程序、核心组件 最高权限 一旦驱动或内核组件被攻击,影响极大

案例:恶意驱动与普通木马的区别

普通木马一般运行在用户模式,受到权限、UAC、杀毒软件和进程隔离限制;而恶意驱动运行在内核模式,可以隐藏进程、拦截文件访问、篡改系统调用,隐蔽性和危害性更高。因此在取证时,不能只看普通进程,还要关注驱动、服务和内核模块。

1.4 Windows 安全模型核心组件

组件 作用 攻防关注点
LSASS 本地安全认证服务 处理登录认证、安全策略 攻击者常尝试窃取凭据;防御侧需保护 LSASS
SAM 安全账户管理器 保存本地用户账户及密码 Hash 本地账户安全核心
SRM 安全参考监视器 进行访问控制检查 判断用户是否有权限访问对象
Winlogon 交互式登录与注销 登录界面、凭据输入流程相关
访问令牌 Token 用户登录后获得的“权限票据” 权限提升、令牌盗用的核心对象

理解重点:

用户不是直接拿着用户名去访问资源,而是在登录后获得一个访问令牌。访问令牌中包含用户 SID、所属组 SID、特权信息。访问文件、注册表、服务时,系统会用访问令牌与目标对象的 ACL 进行匹配。


2. 针对 Windows 数据的攻防

Windows 数据安全可分为三部分:

  1. 数据本身的安全:文件是否被加密、是否能被未授权读取。
  2. 数据存储的安全:磁盘、阵列、备份、容灾是否可靠。
  3. 数据处理的安全:数据在复制、传输、备份、恢复过程中的安全。

2.1 EFS 加密机制

EFS,全称 Encrypting File System,是 Windows 基于 NTFS 文件系统提供的文件级加密技术。它的核心是“对称加密 + 非对称加密”组合。

2.1.1 EFS 的基本流程

用户加密文件

生成 FEK 文件加密密钥

用 FEK 加密文件内容

用用户公钥加密 FEK

加密后的 FEK 写入 DDF

用户私钥受 DPAPI 保护

EFS 的关键密钥包括:

名称 含义 作用
FEK File Encryption Key 真正加密文件内容的对称密钥
用户公钥 RSA 公钥 加密 FEK
用户私钥 RSA 私钥 解密 FEK
Master Key 用户主密钥 保护用户私钥
DRA 数据恢复代理 用于在密钥丢失时恢复加密文件
2.1.2 EFS 的优点
  • 对合法用户透明:用户打开文件时,系统自动解密。
  • 与 Windows 权限结合:只有对应用户或恢复代理能够解密。
  • 支持数据恢复代理:适合企业环境统一管理。
2.1.3 EFS 的风险
风险 说明 防御建议
用户密码弱 攻击者获取账户密码后可能间接访问加密文件 使用强密码和 MFA
私钥丢失 用户证书或私钥丢失会导致文件无法解密 备份 EFS 证书
删除权限未限制 EFS 保护机密性,不防止有权限用户删除文件 配置 NTFS 删除权限和备份
账户 SID 变化 删除用户再创建同名用户,SID 不同,不能解密原文件 不随意删除加密用户账户
2.1.4 案例:员工离职后无法打开加密文件

某公司员工使用 EFS 加密了项目资料。员工离职后,管理员删除了该用户账户。后来项目组发现文件仍在,但无法打开。原因是新建同名账户的 SID 与原账户不同,无法使用原用户私钥解密。

处置建议:

  • 企业环境启用 DRA 数据恢复代理。
  • 用户离职前导出 EFS 证书和私钥。
  • 重要目录同时配置集中备份。

2.2 BitLocker 加密机制

BitLocker 是 Windows 的磁盘级加密技术,主要用于保护整个系统分区、数据分区或移动存储设备。

与 EFS 的区别:

对比项 EFS BitLocker
加密对象 文件或文件夹 分区或磁盘
保护阶段 系统启动后,保护文件级访问 系统启动前,保护离线磁盘数据
关联对象 用户账户 设备、TPM、恢复密钥
典型场景 多用户文件权限保护 笔记本丢失、硬盘被拆走
2.2.1 BitLocker 的密钥层次

TPM / PIN / USB / 恢复密钥

解密 VMK 卷主密钥

解密 FVEK 全卷加密密钥

解密扇区密钥

读取磁盘数据

密钥 作用
SRK TPM 内的存储根密钥,用于保护其他密钥
VMK 卷主密钥,用于保护 FVEK
FVEK 全卷加密密钥,用于加密卷数据
Sector Key 扇区级密钥,用于加密具体扇区
2.2.2 案例:笔记本丢失的数据保护

如果公司笔记本没有启用 BitLocker,攻击者可以拆下硬盘,挂载到另一台电脑上直接读取数据。启用 BitLocker 后,磁盘内容是加密的,攻击者即使拿到硬盘,也需要 TPM、PIN 或恢复密钥才能解密。

推荐配置:

  • 企业笔记本启用 BitLocker。
  • 系统盘使用 TPM + PIN 模式。
  • 恢复密钥统一托管到 AD、Azure AD 或企业密钥管理系统。
  • 定期检查 BitLocker 状态。

2.3 RAID 与存储安全

RAID 是 Redundant Array of Independent Disks,即独立冗余磁盘阵列。它通过条带化、镜像或奇偶校验提升容量、性能或可靠性。

RAID 类型 最少磁盘 容错能力 性能 空间利用率 适合场景
RAID 0 2 临时缓存、视频编辑
RAID 1 2 读较好、写一般 关键系统盘、数据库
RAID 5 3 允许坏 1 块盘 读好、写有校验开销 较高 文件服务器、普通业务数据
RAID 6 4 允许坏 2 块盘 写开销更高 中等 大容量存储
RAID 10 4 约 50% 高性能数据库

重要误区:RAID 不是备份。

RAID 可以防止部分硬盘损坏造成业务中断,但不能防止误删除、勒索病毒加密、管理员误操作、火灾或整机损坏。因此必须配合备份和异地容灾。

2.4 备份、迁移与异地容灾

技术 目的 关键指标
完整备份 保存完整副本 恢复简单,但占空间
增量备份 只备份变化数据 节省空间,但恢复链复杂
混合备份 完整 + 多次增量 平衡效率和恢复复杂度
双机热备 主机故障后备用主机接管 高可用
异地容灾 主站点灾难后切换到异地 RTO、RPO

RTO 和 RPO 是容灾设计中的两个核心指标:

  • RTO:Recovery Time Objective,恢复时间目标,表示业务最长能中断多久。
  • RPO:Recovery Point Objective,恢复点目标,表示最多能接受丢失多久的数据。

案例:勒索病毒后的恢复差异

  • 没有备份:只能尝试取证、隔离、重装,数据恢复难度极高。
  • 有本地备份但备份盘在线挂载:备份也可能被加密。
  • 有离线备份和异地备份:可以在清除威胁后恢复业务。

推荐 3-2-1 备份原则:

  • 至少 3 份数据。
  • 使用 2 种不同介质。
  • 至少 1 份离线或异地保存。

3. 针对账户的攻防

账户是 Windows 安全的第一道门。攻击者常围绕账户进行密码猜测、凭据窃取、权限提升、横向移动;防御者则需要做好身份认证、最小权限、审计和密码策略。

3.1 账户和组

Windows 中的账户可分为本地账户和域账户:

类型 存储位置 使用范围
本地账户 本机 SAM 数据库 单台主机
域账户 域控制器 AD 数据库 整个域环境

常见内置账户:

账户 说明 安全建议
Administrator 内置管理员账户,权限最高 重命名、禁用远程登录、强密码
Guest 来宾账户,默认禁用 保持禁用

常见组:

权限特点 风险
Administrators 本机最高管理权限 被攻陷后可控制主机
Users 普通用户权限 权限较低,适合日常使用
Guests 临时访问权限 容易造成匿名访问风险
Remote Desktop Users 可远程桌面登录 需严格限制成员

3.2 NTLM 登录认证

NTLM 使用挑战/响应机制,客户端不直接发送明文密码,而是使用密码 Hash 对挑战值进行计算。

Domain Controller Server Client Domain Controller Server Client 发送用户名和访问请求 返回 Challenge 随机数 用密码 Hash 加密 Challenge 后返回 提交用户名、原始 Challenge、响应值 验证结果 允许或拒绝访问

攻防理解:

NTLM 的风险不在于直接泄露明文密码,而在于密码 Hash 本身具有很高价值。攻击者如果拿到某些凭据材料,可能不需要知道明文密码,也能尝试在特定场景中进行身份冒用。防御上要减少 NTLM 使用、限制本地管理员复用、启用日志审计和凭据保护。

3.3 Kerberos 登录认证

Kerberos 常用于 Windows 域环境。它通过 KDC 统一发放票据,让客户端和服务端完成身份验证。

Kerberos 三个角色:

角色 作用
Client 发起访问请求的一方
Server 提供服务的一方
KDC 密钥分发中心,包含 AS 和 TGS

Kerberos 核心票据:

名称 含义 用途
TGT Ticket Granting Ticket,票据授予票据 用于向 TGS 申请服务票据
ST/TGS Ticket 服务票据 用于访问具体服务
CT_SK Client 与 TGS 的会话密钥 客户端与 TGS 通信
CS_SK Client 与 Server 的会话密钥 客户端与服务端通信
3.3.1 Kerberos 简化流程
Server TGS AS Client Server TGS AS Client 请求 TGT 返回 TGT 和 CT_SK 携带 TGT 请求服务票据 返回 ST 和 CS_SK 携带 ST 访问服务 验证通过后提供服务

3.4 黄金票据与白银票据的防御理解

PPT 中提到 Kerberos 票据伪造攻击,包括黄金票据和白银票据。

对比项 黄金票据 Golden Ticket 白银票据 Silver Ticket
伪造对象 TGT ST/TGS 服务票据
关键密钥 krbtgt 账户 Hash 服务账户 Hash
权限范围 域级别,影响极大 特定服务
是否经过 KDC 通常会涉及 KDC 交互 可直接访问目标服务
检测重点 异常 TGT、异常有效期、异常域管理员行为 服务端本地日志、异常服务访问

防御建议:

  • 定期轮换 krbtgt 密码,重大入侵后按规范执行两次轮换。
  • 监控异常 Kerberos 票据有效期。
  • 限制域管理员登录普通终端。
  • 启用高级审计策略。
  • 使用 Microsoft Defender for Identity、SIEM 等检测异常票据行为。

3.5 SAM、SID 与 ACL

3.5.1 SAM

SAM 是 Windows 本地账户数据库,保存本地用户和密码 Hash。它是本地账户安全的核心。防御上应重点关注:

  • 禁止普通用户读取系统敏感注册表配置单元。
  • 启用强密码策略。
  • 禁用 Guest。
  • 避免多台机器复用同一个本地管理员密码。
  • 使用 LAPS 或类似方案管理本地管理员密码。
3.5.2 SID

SID 是安全标识符,是 Windows 内部识别用户、组、计算机账户的唯一编号。

示例:

S-1-5-21-310440588-250036847-580389505-500

其中末尾 RID 常见含义:

RID 含义
500 内置 Administrator
501 Guest
512 Domain Admins
513 Domain Users

重点:Windows 内部看 SID,不只看用户名。

删除用户再创建同名用户,SID 已经不同,因此原来的权限不会自动继承。

3.5.3 ACL 权限原则

PPT 中列出权限管理的四项原则:

原则 说明 案例
拒绝优于允许 Deny 权限优先级更高 用户属于 A 组允许访问,但 B 组拒绝访问,最终拒绝
最小权限 只给完成任务所需权限 普通员工不应拥有本地管理员权限
权限累加 多组权限会合并 用户同时属于多个组,权限合并生效
权限继承 子目录继承父目录权限 项目文件夹权限会传递到子文件夹

3.6 账户安全加固清单

  • 禁用 Guest。
  • 重命名内置 Administrator。
  • 普通办公使用普通账户,不使用管理员账户。
  • 密码长度建议不少于 12 位,包含大小写、数字、符号。
  • 开启账户锁定策略,例如连续 5 次失败锁定 15 分钟。
  • 远程桌面只允许指定用户组访问。
  • 开启 MFA,尤其是 VPN、堡垒机、云管理入口。
  • 不同主机本地管理员密码必须不同。
  • 开启登录失败、账户管理、权限变更审计。

4. 针对进程与服务的攻防

4.1 程序、进程、线程、服务的区别

概念 解释 类比
程序 Program 静态的可执行代码 菜谱
进程 Process 正在运行的程序实例 正在做菜的厨师和厨房
线程 Thread 进程内的执行流 厨师手上的具体动作
服务 Service 后台提供功能的程序或进程 长期值班的后台岗位

**关键点:服务和进程不是一一对应的。**一个服务可能运行在某个 svchost.exe 中,多个服务也可能共享一个宿主进程。

4.2 重要系统进程识别

进程 正常路径 作用 异常判断
smss.exe C:\Windows\System32 会话管理器 出现在非 System32 路径需警惕
csrss.exe C:\Windows\System32 客户端/服务器运行时子系统 多个副本、路径异常需排查
services.exe C:\Windows\System32 服务控制管理器 异常路径、异常父进程需关注
svchost.exe C:\Windows\System32 服务宿主进程 非 System32 路径高度可疑
lsass.exe C:\Windows\System32 本地安全认证 被异常访问、内存转储需警惕
winlogon.exe C:\Windows\System32 登录管理 异常子进程需排查
explorer.exe C:\Windows 用户桌面 shell 异常启动项注入需关注

4.3 案例:伪装成 svchost.exe 的恶意程序

某主机中出现两个 svchost.exe:

C:\Windows\System32\svchost.exe       正常
C:\Users\Public\svchost.exe          可疑

可疑点包括:

  • 文件路径不在 System32。
  • 文件签名不是 Microsoft。
  • 启动项指向用户目录。
  • 与外部异常 IP 建立连接。
  • 父进程不是 services.exe。

排查思路:

  1. 查看进程路径、签名、命令行参数。
  2. 查看父进程和启动时间。
  3. 查看网络连接。
  4. 检查启动项、计划任务、服务。
  5. 计算 Hash,并在企业威胁情报库中查询。
  6. 保留样本和日志,避免直接删除导致证据丢失。

4.4 常见端口与风险

端口 协议/服务 风险 防御建议
21 FTP 明文传输、弱口令 改用 SFTP/FTPS
23 Telnet 明文登录 禁用,改用 SSH
80/443 HTTP/HTTPS Web 漏洞、暴露面 WAF、补丁、日志审计
135 RPC/DCOM 远程调用攻击面 防火墙限制来源
137/138/139 NetBIOS 信息泄露、共享风险 不需要时禁用 NetBIOS
445 SMB 文件共享、蠕虫传播 限制访问、关闭公网暴露
1433 MSSQL 数据库弱口令与注入后利用 禁止公网暴露
3389 RDP 爆破、远程控制 VPN/堡垒机、MFA、限制 IP
5985/5986 WinRM 远程管理 最小化开放范围

关键原则:不需要的服务不开,不需要对外的端口不暴露。


5. 针对日志的攻防

Windows 日志是系统取证和安全运营的核心数据源。PPT 中将 Windows 日志分为系统日志、应用程序日志和安全日志,并介绍了防火墙日志、IIS 日志和日志保护。

5.1 Windows 日志类型

日志类型 记录内容 安全价值
系统日志 服务启动、驱动异常、系统错误 判断系统稳定性和异常服务
应用程序日志 应用错误、组件加载失败 分析应用攻击或崩溃原因
安全日志 登录、权限变更、账户管理、对象访问 入侵检测和取证核心
PowerShell 日志 脚本执行、命令块 检测脚本攻击、横向移动
Sysmon 日志 进程、网络、文件、注册表 高价值威胁检测数据
IIS 日志 Web 请求记录 Web 入侵分析核心
防火墙日志 连接允许/拒绝记录 网络连接追踪

5.2 常见 Windows 安全事件 ID

事件 ID 含义 排查价值
4624 登录成功 判断谁在何时从哪里登录
4625 登录失败 发现爆破、密码喷洒
4634 注销 还原会话时间线
4648 使用显式凭据登录 发现横向移动
4672 特权登录 管理员级别登录行为
4688 进程创建 需要开启审核;用于进程追踪
4720 创建用户 发现后门账户
4726 删除用户 发现清理痕迹
4732 添加成员到本地组 发现提权行为
4740 账户被锁定 发现爆破尝试
7045 新服务安装 发现服务型持久化
1102 审计日志被清除 高危,常见于入侵后清痕

5.3 IIS 日志分析

IIS 日志通常包含:

  • 请求时间
  • 客户端 IP
  • 服务端 IP 和端口
  • HTTP 方法
  • URI 路径
  • 查询字符串
  • User-Agent
  • 状态码
  • 上传/下载字节数
  • 请求耗时

案例:WebShell 访问痕迹分析

假设 IIS 日志中出现如下特征:

POST /upload/shell.aspx 200
POST /images/logo.aspx 200
GET  /index.aspx?id=1%20and%201=1 500
POST /admin/login.aspx 302

可能说明:

  • shell.aspx 或伪装路径存在可疑脚本文件。
  • POST 请求频繁访问同一个 .aspx 文件,可能是 WebShell 通信。
  • URL 中出现 and 1=1union select 等可能是 SQL 注入探测。
  • 状态码 500 可能对应报错型注入或异常请求。

排查建议:

  1. 按 IP 聚合请求次数。
  2. 按 URL 聚合异常路径。
  3. 重点筛选 POST 请求、异常 User-Agent、长参数。
  4. 对 4xx/5xx 状态码进行统计。
  5. 对上传目录、图片目录、临时目录中的脚本文件进行检查。

5.4 防火墙日志分析

Windows 防火墙日志可用于查看连接打开和关闭记录,从而分析网络访问行为。典型用途:

  • 发现异常外连 IP。
  • 发现端口扫描行为。
  • 判断某次连接持续时间。
  • 追踪可疑进程通信方向。

案例:异常 RDP 爆破

如果安全日志中有大量 4625 登录失败,同时防火墙日志显示多个外部 IP 访问 3389 端口,则可能存在 RDP 爆破。

防御措施:

  • 关闭公网 RDP。
  • 使用 VPN 或堡垒机。
  • 开启账户锁定策略。
  • 限制来源 IP。
  • 开启 MFA。

5.5 日志对抗与日志保护

攻击者常见清痕方式包括:

  • 清除安全日志。
  • 删除 IIS 日志。
  • 修改日志存储路径。
  • 关闭审计策略。
  • 删除计划任务、服务、启动项痕迹。

防御建议:

  • 将日志转发到远程日志服务器或 SIEM。
  • 普通管理员不能删除集中日志。
  • 提高日志文件大小上限,避免被覆盖。
  • 启用 PowerShell Script Block Logging。
  • 部署 Sysmon 并配置合理规则。
  • 对事件 ID 1102、日志服务停止、审计策略变更设置告警。

6. 针对系统漏洞的攻防

6.1 漏洞、CVE 与补丁

漏洞是系统、服务或应用程序中的安全缺陷。CVE 是通用漏洞披露编号,用于唯一标识公开漏洞。

概念 含义
CVE 通用漏洞编号
PoC 概念验证代码,用于证明漏洞存在
Exploit 利用代码,可能造成实际影响
Patch 补丁,修复漏洞或错误
0day 厂商未知或未修复的漏洞
1day 已公开且通常已有补丁的漏洞

6.2 漏洞利用的一般链路

从防御视角看,攻击者利用漏洞通常包括:

资产暴露

漏洞扫描

确认漏洞版本

尝试利用

获得初始访问

权限提升

横向移动

持久化与数据窃取

防御时应在每个环节设置拦截点:

环节 防御措施
资产暴露 资产测绘、关闭不必要端口
漏洞扫描 入侵检测、WAF、速率限制
利用尝试 补丁、虚拟补丁、EDR
初始访问 最小权限、应用隔离
权限提升 补丁、UAC、凭据保护
横向移动 网络分段、限制 SMB/RDP
持久化 启动项、服务、计划任务监控

6.3 案例:永恒之蓝 MS17-010

PPT 中以 EternalBlue 永恒之蓝为典型案例。该漏洞影响 SMB 文件共享协议,曾造成大规模蠕虫传播事件。

防御角度理解:

  • 高危暴露端口:445。
  • 受影响服务:SMB。
  • 主要风险:远程代码执行、横向传播。
  • 防御重点:补丁、关闭 SMBv1、限制 445 端口访问、网络分段。

安全加固建议:

  • 禁用 SMBv1。
  • 安装对应安全补丁。
  • 内网不同安全区域之间限制 445 访问。
  • 服务器不应直接暴露 SMB 到公网。
  • 开启 IDS/IPS 对异常 SMB 流量告警。
  • 定期扫描资产是否存在高危漏洞。

6.4 漏洞扫描器的防御使用

漏洞扫描器通常由以下部分组成:

  • 资产发现模块
  • 端口扫描模块
  • 服务识别模块
  • 漏洞插件库
  • 风险评级模块
  • 报告生成模块

企业扫描流程建议:

  1. 确定授权范围。
  2. 先低强度资产发现,避免影响业务。
  3. 对高危资产分批扫描。
  4. 按漏洞等级、资产重要性、是否公网暴露排序修复。
  5. 修复后复扫验证。
  6. 将漏洞管理纳入月度安全运营。

6.5 补丁管理

补丁分为安全补丁和非安全补丁:

类型 说明
安全补丁 修复安全漏洞和缺陷
非安全补丁 修复功能错误、兼容性问题

补丁管理流程:

收集补丁公告

评估影响资产

测试环境验证

制定回滚方案

分批部署

复查补丁状态

漏洞复扫

注意: 生产环境不应盲目立刻安装所有补丁,应先评估业务兼容性;但高危远程代码执行漏洞、已被利用漏洞,需要进入应急修复流程。


7. 针对注册表和组策略的攻防

7.1 注册表基础

注册表是 Windows 保存系统、软件、用户配置的数据库。可以把它理解为 Windows 的“配置中枢”。

常见根键:

根键 作用
HKEY_CLASSES_ROOT 文件关联、COM 对象
HKEY_CURRENT_USER 当前用户配置
HKEY_LOCAL_MACHINE 本机系统级配置
HKEY_USERS 所有用户配置
HKEY_CURRENT_CONFIG 当前硬件配置

注册表中有“键、子键、数值”三个基本概念,类似文件夹、子文件夹和配置项。

7.2 注册表中的常见安全关注点

位置 风险 防御/排查
Run/RunOnce 启动项 程序开机自启动 检查异常路径和签名
Services 服务项 持久化服务 检查 ImagePath
Winlogon 登录流程劫持 检查 Shell、Userinit
IFEO 镜像劫持 检查 Debugger 项
AppInit_DLLs DLL 注入 检查异常 DLL
Policies 安全策略被篡改 对比基线

7.3 注册表安全设置

PPT 中提到三个典型安全设置:

设置 目的 示例
禁用注册表编辑器 防止普通用户随意修改配置 DisableRegistryTools=1
禁用 Remote Registry 防止远程修改注册表 禁用 Remote Registry 服务
限制 Run 启动项权限 防止恶意程序写入启动项 Run 键只读化或最小授权

注意: 注册表操作风险较高,教学实验前应先导出备份。

7.4 组策略基础

组策略 Group Policy 是 Windows 用于集中管理用户和计算机环境的重要工具。运行 gpedit.msc 可以打开本地组策略编辑器。

组策略与注册表的关系:

管理员配置组策略

策略写入注册表或策略文件

系统组件读取策略

限制用户行为或配置系统安全

组策略介于控制面板和注册表之间:

工具 特点 适用场景
控制面板/设置 简单直观 普通配置
注册表 能改几乎所有底层配置 精细化配置、排错
组策略 图形化、可集中管理 企业安全策略

7.5 AppLocker 配置

AppLocker 从 Windows 7 和 Windows Server 2008 R2 开始提供,用于控制用户可以运行哪些程序、脚本、安装包或应用。

规则类型:

类型 控制对象
可执行文件规则 .exe.com
Windows Installer 规则 .msi.msp.mst
脚本规则 .ps1.bat.cmd.vbs.js
打包应用规则 .appx

案例:防止学生机运行未知工具

实验室电脑经常被学生运行未知下载程序,可以通过 AppLocker 设置:

  • 允许 C:\WindowsC:\Program Files 下签名软件运行。
  • 阻止用户下载目录、桌面、临时目录中的可执行文件运行。
  • 对管理员组保留管理权限。
  • 先使用审计模式观察,再切换到强制模式。

7.6 账号策略和本地策略

账号策略包括:

  • 密码复杂度要求
  • 密码最短长度
  • 密码最长使用期限
  • 强制密码历史
  • 账户锁定阈值
  • 账户锁定时间

本地策略包括:

  • 审核策略
  • 用户权限分配
  • 安全选项

推荐基线:

项目 建议
密码长度 不少于 12 位
复杂度 开启复杂度要求
历史密码 至少记住 5 个历史密码
登录失败锁定 5-10 次失败后锁定
远程登录权限 仅授权用户组
审核策略 开启登录、账户管理、策略变更、进程创建审计

8. 综合案例:一台 Windows 服务器被入侵后的排查思路

8.1 背景

某企业 Windows Server 对外提供 IIS 网站服务。管理员发现网站访问变慢,并且安全设备提示服务器存在异常外连。

8.2 初步现象

  • IIS 日志中出现大量 POST 请求。
  • 服务器存在异常进程 svchost.exe,路径位于 C:\Users\Public
  • 安全日志中出现多个登录失败事件 4625。
  • 系统日志中出现新服务安装事件 7045。
  • 防火墙日志显示服务器向陌生外部 IP 建立连接。

8.3 排查流程

确认异常告警

保护现场

导出日志

检查进程和网络连接

检查服务/计划任务/启动项

分析 IIS 日志

定位可疑文件

判断入侵入口

清除威胁并修复漏洞

恢复业务和持续监控

8.4 关键检查点

1. 账户侧
  • 是否有新建用户:事件 ID 4720。
  • 是否有用户加入管理员组:事件 ID 4732。
  • 是否有异常远程登录:事件 ID 4624,登录类型 10 通常与 RDP 相关。
  • 是否有大量登录失败:事件 ID 4625。
2. 进程侧
  • 是否存在系统进程伪装。
  • 进程路径是否异常。
  • 父进程是否合理。
  • 是否有异常网络连接。
3. 服务侧
  • 是否新增服务:事件 ID 7045。
  • 服务 ImagePath 是否指向用户目录、临时目录、Web 目录。
  • 服务名称是否伪装成系统组件。
4. Web 侧
  • IIS 日志中是否存在异常 POST。
  • 上传目录中是否存在 .aspx.ashx.asp 脚本。
  • 是否存在 SQL 注入、文件上传、弱口令入口。
5. 日志侧
  • 是否出现事件 ID 1102,即审计日志被清除。
  • 是否存在日志缺口。
  • IIS 日志是否被删除或截断。

8.5 处置建议

  1. 先隔离,不要立刻关机,避免内存证据丢失。
  2. 导出 Windows 事件日志、IIS 日志、防火墙日志。
  3. 保留可疑样本、Hash、路径、时间戳。
  4. 检查账户和权限变更。
  5. 清除 WebShell、恶意服务、计划任务、启动项。
  6. 修复 Web 漏洞和系统漏洞。
  7. 修改所有相关密码,尤其是管理员、数据库、服务账户。
  8. 部署日志集中转发和持续监控。

9. 课堂实验与思考题

9.1 实验一:EFS 与 BitLocker 对比实验

目标: 理解文件级加密与磁盘级加密的区别。

实验任务:

  1. 在 NTFS 分区创建测试文件。
  2. 对文件启用 EFS 加密。
  3. 使用另一个用户尝试访问该文件。
  4. 启用 BitLocker 加密一个测试分区或虚拟磁盘。
  5. 讨论两者保护场景差异。

思考:

  • 为什么 EFS 不能防止有删除权限的用户删除文件?
  • 为什么 BitLocker 更适合笔记本丢失场景?

9.2 实验二:Windows 登录日志分析

目标: 掌握登录成功和失败日志识别。

任务:

  1. 打开事件查看器。
  2. 筛选安全日志中的 4624、4625。
  3. 查看登录类型、来源 IP、用户名。
  4. 判断是否存在异常登录行为。

思考:

  • 登录类型 2、3、10 分别常见于什么场景?
  • 为什么大量 4625 可能代表爆破?

9.3 实验三:可疑进程识别

目标: 掌握进程路径和签名检查。

任务:

  1. 使用任务管理器或 Process Explorer 查看进程。
  2. 找到 svchost.exelsass.exeservices.exe
  3. 检查文件路径、签名、父进程。
  4. 总结正常系统进程的特点。

思考:

  • 为什么同名进程不一定都是正常进程?
  • 恶意程序为什么喜欢伪装成系统进程?

9.4 实验四:组策略安全加固

目标: 学会使用组策略提升系统安全性。

任务:

  1. 打开 gpedit.msc
  2. 配置密码复杂度策略。
  3. 配置账户锁定策略。
  4. 查看本地安全策略中的审核策略。
  5. 讨论组策略与注册表的关系。

9.5 综合思考题

  1. 为什么 Windows 安全不能只依赖杀毒软件?
  2. EFS、BitLocker、NTFS 权限分别解决什么问题?
  3. 日志为什么既是管理员的安全依据,也是攻击者想清除的目标?
  4. 如果发现 445 端口暴露在公网,应如何处置?
  5. 黄金票据和白银票据的主要区别是什么?
  6. RAID 5 能否替代备份?为什么?
  7. 如何设计一套适合中小企业 Windows 服务器的安全基线?

附录 A:Windows 安全排查速查表

方向 检查内容 重点关注
账户 本地用户、管理员组、登录日志 新用户、弱口令、异常登录
进程 路径、签名、父进程、命令行 伪装进程、异常外连
服务 服务名称、ImagePath、启动类型 新增服务、用户目录程序
计划任务 触发器、执行路径 定时执行恶意脚本
启动项 Run、Startup、Winlogon 持久化
网络 监听端口、外连 IP 3389、445、异常 C2
日志 4624、4625、4688、7045、1102 登录、进程、服务、清痕
Web IIS 日志、上传目录、脚本文件 WebShell、注入、文件上传
注册表 Run、Services、Policies、IFEO 自启动、策略篡改
补丁 系统版本、补丁状态、漏洞扫描 高危 RCE、SMB 漏洞

附录 B:Windows 服务器基础加固清单

  • 关闭不必要端口与服务。
  • 禁止 SMB、RDP 等管理端口暴露到公网。
  • 启用 Windows 防火墙并按最小开放原则配置。
  • 开启 BitLocker 保护服务器磁盘或关键终端。
  • 普通用户不授予本地管理员权限。
  • 配置强密码、账户锁定和 MFA。
  • 启用并集中收集安全日志。
  • 对 IIS、数据库、中间件进行最小权限配置。
  • 定期安装安全补丁。
  • 使用漏洞扫描器进行授权范围内的周期性扫描。
  • 对关键目录配置 NTFS 权限和备份。
  • 部署 EDR、IDS/IPS 或主机安全产品。
  • 建立应急响应流程和备份恢复演练。

结语

Windows 安全不是单一技术点,而是一套由身份认证、访问控制、数据保护、服务管理、日志审计、漏洞修复、策略管控共同组成的体系。学习 Windows 攻防时,不能只关注“怎么攻击”,更要理解攻击为什么能发生、系统在哪里留下痕迹、管理员应该如何加固、取证人员应该如何还原时间线。只有把攻击面、防御面和取证面结合起来,才能真正理解 Windows 操作系统安全。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐