本指南涵盖CISP认证中的风险管理、威胁建模、系统安全、应急响应和安全设计原则等关键领域的核心知识点。
一、风险管理
1.1 风险定义
📚 风险定义(GB/T 22081)
风险是事态的概率及其结果的组合。
风险的目标可能有很多不同方面:
- 财务目标
- 健康和人身安全目标
- 信息安全目标
- 环境目标等
目标也可能有不同级别:
- 战略目标
- 组织目标
- 项目目标
- 产品目标
- 过程目标等
1.2 风险要素关系模型
🔍 ISO/IEC 13335-1 风险要素关系
风险由以下要素组成:
- 资产(Assets):需要保护的对象
- 威胁(Threats):可能造成损害的潜在原因
- 脆弱性(Vulnerabilities):可被威胁利用的弱点
- 影响(Impact):风险实现后的后果
风险要素关系图:
Assets"] B["威胁
Threats"] C["脆弱性
Vulnerabilities"] D["风险
Risk"] E["影响
Impact"] F["保护措施
Safeguards"] A -->|具有| C B -->|利用| C B -->|针对| A C -->|导致| D D -->|产生| E F -->|降低| D F -->|保护| A F -->|减少| C style A fill:#e3f2fd,stroke:#1976d2 style B fill:#ffebee,stroke:#c62828 style C fill:#fff3e0,stroke:#f57c00 style D fill:#f3e5f5,stroke:#7b1fa2 style E fill:#ffcdd2,stroke:#c62828 style F fill:#e8f5e9,stroke:#388e3d
1.3 降低风险的方法
✅ 正确的风险降低方法
组织应该根据风险建立相应的保护要求,通过构建防护措施降低风险对组织产生的影响。
这是最全面和正确的风险管理方法。
为什么其他选项不够全面:
选项 | 说明 | 问题 |
---|---|---|
加强防护措施 | 只关注防护 | 没有说明如何确定防护需求 |
减少威胁和脆弱点 | 只关注威胁和脆弱性 | 忽略了资产保护和影响评估 |
减少资产 | 减少资产数量 | 不现实,业务需要资产 |
1.4 风险管理流程
完整的风险管理流程:
各阶段详解:
阶段 | 主要活动 | 输出 |
---|---|---|
风险识别 | 识别资产、威胁、脆弱性 | 风险清单 |
风险评估 | 评估风险可能性和影响 | 风险等级 |
风险处置 | 制定和实施防护措施 | 安全控制措施 |
风险监控 | 持续监控和评审 | 风险报告 |
1.5 风险处置策略
四种风险处置策略:
- 🛡️ 风险缓解:实施控制措施降低风险
- 🔄 风险转移:通过保险等方式转移风险
- ✅ 风险接受:接受残余风险
- 🚫 风险规避:停止相关活动
二、Windows安全标识符(SID)
2.1 SID概述
🔐 Windows SID
**安全标识符(Security Identifier, SID)**是标识用户、组和计算机账户的唯一编码。
特点:
- 在操作系统内部使用
- 每个账户都有唯一的SID
- 用于访问控制和权限管理
- 写入对象的ACL(访问控制列表)中
2.2 SID结构
SID示例:
S-1-5-21-1534169462-1651380828-111620652-500
SID结构解析:
SID各部分说明:
部分 | 值 | 说明 |
---|---|---|
前缀 | S | 表示这是一个SID |
版本号 | 1 | SID版本 |
颁发机构 | 5 | Windows NT颁发机构 |
子颁发机构标识符 | 21 | 第一个子颁发机构 |
域标识符 | 1534169462-1651380828-111620652 | 三个子颁发机构组成域标识 |
RID | 500 | 相对标识符 |
2.3 常见RID值
内置账户的RID:
RID | 账户类型 | 说明 |
---|---|---|
500 | Administrator | 内置管理员账户 |
501 | Guest | 内置来宾账户 |
502 | KRBTGT | Kerberos服务账户 |
512 | Domain Admins | 域管理员组 |
513 | Domain Users | 域用户组 |
⚠️ 常见错误
错误说法:SID以500结尾表示内置Guest账户。
❌ 为什么这是错误的:
- 500是Administrator(管理员)账户
- 501才是Guest(来宾)账户
✅ 正确理解:
- RID 500 = Administrator
- RID 501 = Guest
2.4 SID的作用
SID在Windows安全中的应用:
- 🔑 身份识别:唯一标识用户和组
- 🛡️ 访问控制:ACL中使用SID进行权限检查
- 📝 审计日志:记录操作者的SID
- 🔄 账户迁移:即使用户名改变,SID保持不变
查看SID的方法:
# 查看当前用户SID
whoami /user
# 查看所有用户SID
wmic useraccount get name,sid
# 使用PowerShell查看
Get-LocalUser | Select-Object Name, SID
三、STRIDE威胁建模
3.1 STRIDE概述
🎯 STRIDE威胁建模
STRIDE是微软SDL(Security Development Lifecycle)中提出的威胁建模方法。
将威胁分为六类,为每一类威胁提供标准的缓解措施。
3.2 STRIDE六类威胁
STRIDE威胁分类:
威胁类型 | 英文 | 说明 | 安全属性 |
---|---|---|---|
Spoofing | 欺骗 | 冒充他人身份 | 身份认证 |
Tampering | 篡改 | 修改数据或代码 | 完整性 |
Repudiation | 否认 | 否认执行过某操作 | 不可否认性 |
Information Disclosure | 信息泄露 | 未授权访问信息 | 机密性 |
Denial of Service | 拒绝服务 | 使服务不可用 | 可用性 |
Elevation of Privilege | 权限提升 | 获得未授权的权限 | 授权 |
3.3 Spoofing(欺骗)威胁
🎭 欺骗威胁
**Spoofing(欺骗)**是指攻击者冒充他人身份进行操作。
典型场景:
- 使用他人的用户名和密码登录
- 伪造IP地址
- 伪造电子邮件发件人
- 会话劫持
欺骗威胁示例分析:
✅ 正确答案
网站使用用户名、密码进行登录验证,攻击者可能会利用弱口令或其他方式获得用户密码,以该用户身份登录修改用户订单等信息。
这是典型的**身份欺骗(Spoofing)**威胁。
其他选项分析:
威胁描述 | 威胁类型 | 说明 |
---|---|---|
DDoS攻击降低访问速度 | Denial of Service | 拒绝服务 |
HTTP未加密导致信息泄露 | Information Disclosure | 信息泄露 |
HTTP无法确认数据完整性 | Tampering | 篡改 |
弱口令导致身份冒充 | Spoofing | 欺骗 ✅ |
3.4 STRIDE威胁与缓解措施
各类威胁的缓解措施:
威胁 | 缓解措施 | 技术实现 |
---|---|---|
Spoofing | 身份认证 | 多因素认证、数字证书、生物识别 |
Tampering | 完整性保护 | 数字签名、哈希校验、访问控制 |
Repudiation | 审计日志 | 日志记录、数字签名、时间戳 |
Information Disclosure | 加密保护 | TLS/SSL、数据加密、访问控制 |
Denial of Service | 可用性保护 | 限流、负载均衡、冗余设计 |
Elevation of Privilege | 授权控制 | 最小权限、权限分离、输入验证 |
3.5 威胁建模流程
STRIDE威胁建模步骤:
四、木马后门防护
4.1 木马后门概述
🦠 木马后门
木马后门是一种恶意软件,允许攻击者远程访问和控制受害者的计算机。
典型特征:
- 隐蔽性强
- 持久化驻留
- 远程控制能力
- 窃取信息
4.2 木马持久化技术
常见持久化方法:
方法 | 说明 | 示例 |
---|---|---|
注册表启动项 | 修改注册表自动启动 | HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run |
计划任务 | 创建定时任务 | Task Scheduler |
服务 | 注册为系统服务 | Windows Services |
启动文件夹 | 放入启动文件夹 | Startup folder |
DLL劫持 | 替换系统DLL | 利用DLL搜索顺序 |
注册表启动项示例:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
4.3 木马防护措施
有效的防护措施:
- ✅ 不下载、不执行、不接收来历不明的软件
- ✅ 不随意打开来历不明的邮件,不浏览不健康不正规的网站
- ✅ 安装反病毒软件和防火墙,安装专门的木马防治软件
⚠️ 无效的防护措施
使用共享文件夹对防范木马后门攻击是无用的。
❌ 为什么无效:
- 共享文件夹反而增加了攻击面
- 可能成为木马传播的途径
- 不能阻止木马的执行和持久化
✅ 正确做法:
- 限制或禁用不必要的共享
- 对共享文件夹设置严格的访问控制
- 定期扫描共享文件夹
4.4 木马检测与清除
检测方法:
- 🔍 进程监控:检查可疑进程
- 📝 注册表检查:检查启动项
- 🌐 网络监控:检测异常网络连接
- 📊 行为分析:监控异常行为
清除步骤:
- 断开网络连接
- 进入安全模式
- 使用杀毒软件扫描
- 手动清理注册表和文件
- 修改密码
- 系统加固
五、信息安全应急响应
5.1 应急响应概述
🚨 应急响应
信息安全应急响应是组织在发生安全事件时,采取的一系列措施来检测、遏制、根除和恢复的过程。
目标:
- 快速响应安全事件
- 最小化损失和影响
- 恢复正常运营
- 总结经验教训
5.2 应急响应阶段
广为接受的应急响应六阶段模型:
Preparation"] --> B["2. 检测
Detection"] B --> C["3. 遏制
Containment"] C --> D["4. 根除
Eradication"] D --> E["5. 恢复
Recovery"] E --> F["6. 跟踪总结
Lessons Learned"] F -.-> A style A fill:#e3f2fd,stroke:#1976d2 style B fill:#fff3e0,stroke:#f57c00 style C fill:#ffebee,stroke:#c62828 style D fill:#f3e5f5,stroke:#7b1fa2 style E fill:#e8f5e9,stroke:#388e3d style F fill:#e1f5fe,stroke:#0277bd
六个阶段详解:
阶段 | 主要活动 | 关键输出 |
---|---|---|
1. 准备 | 制定计划、建立团队、准备工具 | 应急响应计划 |
2. 检测 | 监控、识别安全事件 | 事件报告 |
3. 遏制 | 隔离受影响系统、防止扩散 | 遏制措施 |
4. 根除 | 清除恶意代码、修复漏洞 | 清理报告 |
5. 恢复 | 恢复系统和服务 | 恢复确认 |
6. 跟踪总结 | 分析事件、改进流程 | 总结报告 |
5.3 应急响应关键点
⚠️ 常见误解
错误说法:应急响应方法一定能确保事件处理的成功。
❌ 为什么这是错误的:
- 应急响应方法不是万能的
- 事件的复杂性和不确定性
- 依赖于执行质量和资源
- 可能遇到未知的威胁
✅ 正确理解:
- 应急响应方法提供了最佳实践框架
- 有助于提高成功率,但不能保证100%成功
- 需要根据实际情况灵活调整
- 持续改进和优化
5.4 应急响应最佳实践
准备阶段的关键活动:
- 📋 制定应急响应计划
- 👥 建立应急响应团队
- 🛠️ 准备应急工具包
- 🎓 定期培训和演练
- 📞 建立沟通机制
检测阶段的关键活动:
- 🔍 部署监控系统
- 📊 分析日志和告警
- 🚨 建立事件报告机制
- ⏱️ 快速响应机制
遏制阶段的策略:
- 🔒 短期遏制:快速隔离,防止扩散
- 🛡️ 长期遏制:临时修复,维持业务
- 📝 保留证据
六、安全设计原则
6.1 安全设计原则概述
🏗️ 安全设计原则
安全设计原则是在系统设计和开发过程中应遵循的基本准则,用于构建安全的系统。
6.2 纵深防御原则
🛡️ 纵深防御(Defense in Depth)
纵深防御是指在系统的多个层次部署多种安全控制措施,形成多层防护体系。
核心思想:
- 不依赖单一防护措施
- 多层次、多维度的防护
- 即使一层被突破,其他层仍能提供保护
纵深防御示例:
✅ 纵深防御实践
某购物网站的安全设计:
- 用户名口令认证(第一层防护)
- 数字证书身份认证(第二层防护)
- 口令使用SHA-1加密存储(第三层防护)
这是典型的纵深防御原则应用。
纵深防御层次:
6.3 其他安全设计原则
常见安全设计原则:
原则 | 说明 | 示例 |
---|---|---|
最小权限 | 只授予完成任务所需的最小权限 | 普通用户不应有管理员权限 |
职责分离 | 关键操作需要多人协作 | 财务审批需要多级审核 |
纵深防御 | 多层次防护 | 认证+授权+加密+审计 |
最少共享机制 | 减少共享资源 | 独立的数据库实例 |
默认安全 | 默认配置应该是安全的 | 默认禁用不必要的服务 |
失败安全 | 失败时保持安全状态 | 认证失败时拒绝访问 |
开放设计 | 安全不依赖于设计的保密性 | 使用公开的加密算法 |
6.4 最小权限原则
最小权限原则(Principle of Least Privilege):
- 🔑 用户只获得完成工作所需的最小权限
- ⏱️ 权限只在需要时授予
- 🔄 定期审查和回收权限
- 📊 记录权限使用情况
示例:
# 不好的做法
用户A:管理员权限(但只需要读取数据)
# 好的做法
用户A:只读权限(满足实际需求)
6.5 职责分离原则
职责分离原则(Separation of Duties):
- 👥 关键操作需要多人参与
- ✅ 防止单点欺诈
- 🔄 相互制约和监督
- 📝 审计追踪
示例:
场景 | 职责分离实现 |
---|---|
财务支付 | 申请人、审批人、执行人分离 |
代码发布 | 开发人员、审核人员、发布人员分离 |
数据库管理 | DBA、应用管理员、安全管理员分离 |
6.6 最少共享机制原则
最少共享机制原则(Least Common Mechanism):
- 🔒 减少共享资源
- 🛡️ 降低相互影响
- 🔐 隔离敏感数据
- 📊 独立的安全域
示例:
# 不好的做法
所有应用共享同一个数据库实例
# 好的做法
每个应用使用独立的数据库实例
七、总结
7.1 核心知识点
风险管理:
- 风险 = 事态的概率 × 结果
- 降低风险:根据风险建立保护要求,构建防护措施
Windows SID:
- SID结构:S-版本-颁发机构-子颁发机构-RID
- RID 500 = Administrator(不是Guest)
- RID 501 = Guest
STRIDE威胁建模:
- 六类威胁:Spoofing、Tampering、Repudiation、Information Disclosure、Denial of Service、Elevation of Privilege
- 弱口令导致身份冒充属于Spoofing威胁
木马防护:
- 有效措施:不下载可疑软件、安装杀毒软件
- 无效措施:使用共享文件夹
应急响应:
- 六阶段:准备、检测、遏制、根除、恢复、跟踪总结
- 不能保证100%成功,但提供最佳实践框架
安全设计原则:
- 纵深防御:多层次、多维度防护
- 最小权限:只授予必需的权限
- 职责分离:关键操作多人参与
- 最少共享:减少共享资源
7.2 考试要点
💡 考试提示
- 理解风险要素关系模型
- 记住SID的结构和常见RID值
- 掌握STRIDE六类威胁及其对应的安全属性
- 区分有效和无效的木马防护措施
- 记住应急响应的六个阶段
- 理解纵深防御原则的应用场景
相关资源:
- GB/T 22081 信息安全管理体系
- ISO/IEC 13335-1 信息技术安全管理指南
- Microsoft SDL威胁建模
- NIST SP 800-61 计算机安全事件处理指南