Day37-15|18.5.1 OSI 的安全体系架构概述:用攻击、服务和机制组织网络安全

对应教材:第 18 章 安全架构设计理论与实践——18.5.1 OSI 的安全体系架构概述
学习定位:理解 OSI 安全体系架构的基本思想,掌握安全攻击、安全服务和安全机制的分类,理解安全控制在不同网络层次的部署方式,并能将认证、访问控制、机密性、完整性和抗抵赖映射到实际网络架构。

一、为什么需要网络安全体系架构

网络安全不是在互联网出口放置一台防火墙就结束了。数据从终端到应用,可能经过无线接入、交换、路由、传输、网关、负载均衡、服务和数据库;攻击者也可能从多个层面破坏通信、冒充身份、篡改数据或耗尽资源。

OSI 安全体系架构提供了一种分析网络安全的方法:先识别安全攻击,再确定需要提供的安全服务,最后选择实现这些服务的安全机制,并将机制放到合适的网络层次和通信节点中。

其基本关系可以表示为:

安全攻击 → 安全目标 → 安全服务 → 安全机制 → 协议与部署 → 测试和审计

架构师可以用这套关系避免“看到攻击就堆设备”。例如,针对通信窃听,目标是保护机密性,服务是数据保密服务,机制可以是加密、密钥管理和安全隧道,部署位置则可能是应用、传输、网络或链路层,具体取决于端到端范围和性能要求。

二、OSI 安全体系的三个基本概念

2.1 安全攻击

安全攻击是任何危害系统安全、通信安全或信息资源安全的行为。攻击可以针对保密性、完整性、可用性、真实性或不可否认性。

攻击分析要结合攻击对象、入口、能力、路径、影响和可见性。相同攻击在不同层次可能表现不同:链路窃听是通信层风险,应用越权是应用层风险,DDoS 可能从网络层一直影响到应用资源。

2.2 安全服务

安全服务是系统为保护通信和资源而提供的功能或能力。安全服务通常由一个或多个安全机制实现,可能跨越多个网络层次和组件。

常见安全服务包括认证、访问控制、数据保密、数据完整性和抗抵赖。实际系统还会加入可用性、审计、隐私和密钥管理等保障能力。

2.3 安全机制

安全机制是实现安全服务的技术或流程手段,包括加密、数字签名、访问控制、认证交换、数据完整性校验、流量填充、路由控制、公证、审计和恢复等。

安全机制不是固定绑定某个产品。例如访问控制可以由防火墙、IAM、API 网关、数据库权限和应用策略共同实现;认证可以使用密码、证书、多因素、令牌和设备证明。

三、安全攻击的分类

3.1 被动攻击

被动攻击不直接改变通信内容,主要试图获取信息或观察通信行为,通常包括窃听、流量分析和通信模式分析。

被动攻击的特点是隐蔽性强,不容易通过内容变化发现。防护重点是加密、流量保护、链路安全、元数据控制、访问限制和异常通信监控。

3.1.1 窃听

攻击者获取通信中的内容,例如账号、口令、业务数据、控制指令和文件。无线、未加密链路、错误证书配置和内部旁路设备都可能产生窃听风险。

3.1.2 流量分析

即使通信内容已加密,攻击者也可以观察通信双方、时间、频率、报文长度和流量变化,推断用户行为、业务峰值和系统结构。敏感场景可以通过流量填充、隐藏元数据、统一出口和访问模式控制降低风险。

3.2 主动攻击

主动攻击会修改、伪造、重放、阻断或生成通信内容,可能破坏完整性、真实性和可用性。

3.2.1 冒充

攻击者伪装成合法用户、设备、服务或网络节点,使用盗取的密码、伪造证书、地址欺骗或劫持会话实施访问。

3.2.2 重放

攻击者捕获以前的合法消息,在之后重新发送,例如重复提交支付、重复执行控制命令或重用认证报文。防护需要随机数、时间戳、序列号、一次性令牌、幂等号和状态校验。

3.2.3 消息篡改

攻击者修改通信内容、参数、路由或配置,导致交易、控制指令和策略发生错误。数字签名、消息认证码、哈希、完整性校验和事务状态可以降低风险。

3.2.4 拒绝服务

攻击者通过大量流量、连接、请求、异常报文或资源消耗使系统不能正常服务。防护需要分层限流、清洗、缓存、资源隔离、弹性扩展和优先级。

3.2.5 中间人攻击

攻击者插入通信双方之间,拦截、读取或修改信息,并分别伪装成双方。证书认证、双向认证、端到端加密、密钥校验和安全的信任链是主要防护手段。

四、安全服务分类

4.1 认证服务

认证服务确认通信实体或数据来源的身份,通常分为对等实体认证和数据来源认证。

对等实体认证用于建立连接、访问服务或执行会话时验证对端身份,防止冒充和重放;数据来源认证用于确认消息来自声称的主体,但不一定保证消息未被修改,因此通常要结合完整性服务。

认证架构要考虑主体、凭据、信任锚、证书、会话、撤销、重放和审计。只验证用户名和密码不一定能满足高风险场景。

4.2 访问控制服务

访问控制决定主体是否可以使用资源、执行操作或建立通信。它可以在网络、主机、数据库、应用、API、文件和管理平台中实施。

访问控制要遵循身份明确、最小权限、默认拒绝、职责分离、动态评估和可审计原则。不能只根据 IP 地址判断,因为地址可能变化、共享或被伪造。

4.3 数据保密服务

数据保密服务防止未经授权的主体了解数据内容,通常包括连接保密、无连接保密、选择字段保密、流量保密和数据传输保密。

保密设计要明确保护范围:是终端到终端、终端到网关、网关到服务,还是链路到链路?如果加密只在网关终止,内部链路是否还需要加密?密钥如何生成、轮换、吊销和恢复?

4.4 数据完整性服务

完整性服务防止数据被未经授权修改、删除、插入、重排或重放。可以提供有恢复的连接完整性、无恢复的连接完整性、选择字段完整性和无连接完整性。

完整性服务通常采用哈希、消息认证码、数字签名、序列号、时间戳、事务和对账。对交易和控制指令,还要结合业务状态和幂等机制。

4.5 抗抵赖服务

抗抵赖服务为发送方和接收方提供证据,防止一方否认其发送、接收或执行过某项操作。数字签名、可信时间、证书、审计记录、审批链和不可篡改存储可以共同支持抗抵赖。

抗抵赖不等于普通日志。日志需要能够证明主体、时间、内容摘要、签名、结果和证据链,并且保存和访问过程受到保护。

五、安全机制分类

5.1 特定安全机制

特定机制主要用于实现某类安全服务:

  1. 加密机制:保护机密性和通信内容。
  2. 数字签名:支持认证、完整性和抗抵赖。
  3. 访问控制机制:限制主体对资源的使用。
  4. 数据完整性机制:检测篡改、插入、删除和重放。
  5. 认证交换机制:验证实体身份和建立会话信任。
  6. 流量填充机制:降低流量分析风险。
  7. 路由控制机制:选择可信通信路径或隔离危险路径。
  8. 公证机制:由可信第三方提供时间、身份或交易证据。

5.2 普遍性安全机制

普遍性机制可以在多个层次提供整体支撑,包括可信功能、标签、安全审计、事件检测、安全恢复和安全管理。

可信功能提供安全内核、可信启动、可信平台和策略执行能力;标签为数据、主体和通信附加安全属性;审计记录安全相关事件;事件检测识别违规和攻击;恢复在故障或攻击后恢复安全状态;安全管理负责策略、密钥、配置和权限。

六、安全服务与网络层次的映射

6.1 链路层

链路层适合保护单段物理或局部通信,例如局域网接入、无线链路和专用链路。优点是对上层应用透明,缺点是保护范围局部,数据在路由节点或网关处可能重新暴露。

6.2 网络层

网络层可以通过 IPsec、VPN、路由控制和网络隔离保护跨网络通信。它适合站点到站点、终端到网络和网络到网络的安全连接,但需要考虑地址、路由、隧道、密钥、性能和故障切换。

6.3 传输层

传输层安全协议可以为应用连接提供端到端或近似端到端的认证、加密和完整性。证书、信任链、协议版本、密码套件和证书轮换是关键。

6.4 会话与应用层

应用层可以实现业务身份、细粒度授权、字段脱敏、业务签名、幂等、防重放和审计。应用层最了解业务语义,能够判断“是否允许转账”“是否允许导出”,但也需要承担更复杂的开发和运维责任。

6.5 多层叠加

高价值业务通常采用多层叠加:链路或网络层保护基础通信,传输层保护连接,应用层保护业务语义和数据,运营层提供日志、检测和响应。叠加不能简单重复,应分析保护边界、性能、密钥和故障关系。

七、OSI 安全体系与安全架构设计

7.1 先识别攻击

根据业务场景识别窃听、冒充、重放、篡改、拒绝服务和中间人等攻击,绘制攻击面和信任边界。

7.2 再确定服务

将攻击映射到认证、访问控制、保密、完整性、抗抵赖、审计和恢复等服务。例如,重放需要认证和完整性服务,拒绝服务需要可用性、流量控制和资源隔离,数据泄露需要保密和访问控制。

7.3 最后选择机制

根据端到端范围、网络层次、设备能力、性能和运维条件,选择加密、签名、证书、访问控制、代理、隧道、日志和恢复机制。

7.4 设计验证

验证每项攻击是否有控制、控制是否有责任人、控制是否产生证据、故障时是否可用、性能是否满足指标,以及控制失效时是否有补偿和恢复。

八、案例分析:跨区域订单系统通信安全

某集团总部、分支机构和云平台之间传输订单、客户和库存数据。系统需要防止窃听、冒充、重放和篡改,关键操作还要求抗抵赖;网络链路可能经过公共运营商。

第一,识别攻击。公共链路面临窃听和中间人,终端和服务账号面临冒充,订单提交面临重放,交易字段面临篡改,管理员操作面临抵赖。

第二,确定服务。站点和服务需要实体认证;订单和库存数据需要传输保密;消息需要完整性和防重放;高风险订单和审批需要数字签名和抗抵赖;跨区域链路需要可用性和故障切换。

第三,选择机制。总部与分支之间采用经过认证的加密隧道,应用连接使用传输层加密和证书;订单消息包含时间戳、唯一交易号和签名或消息认证码;服务账号使用短期凭据;管理操作通过跳板机、MFA、审批和不可篡改审计。

第四,映射部署。网络层保护站点间通信,传输层保护应用连接,应用层验证业务签名、金额、状态和幂等,数据库层执行最小权限和审计,运营平台关联登录、交易、网络和配置日志。

第五,设计故障。证书服务或密钥服务短时故障时,已有有效会话按期限运行,高风险新交易暂停;主链路故障切换到备链路,确保策略和容量;消息重复或乱序时按交易号和状态机处理。

第六,验证。执行抓包、证书替换、重放、篡改、账号盗用、链路中断和密钥轮换测试,验证攻击无法绕过控制,且业务在规定时间内恢复。

九、常见失分点

  1. 只背 OSI 七层,不分析安全攻击、服务和机制。
  2. 将认证、保密、完整性和抗抵赖混为一谈。
  3. 只说加密,不说明端到端范围、密钥和证书。
  4. 只保护链路,不保护应用业务语义和身份。
  5. 忽略重放、中间人、流量分析和拒绝服务。
  6. 安全机制没有映射到部署位置、责任和验证方法。

十、今日必背清单

  1. OSI 安全体系架构通过攻击、服务和机制组织网络安全。
  2. 攻击可分为被动攻击和主动攻击,典型包括窃听、流量分析、冒充、重放、篡改和拒绝服务。
  3. 安全服务包括认证、访问控制、数据保密、数据完整性和抗抵赖。
  4. 安全机制包括加密、签名、访问控制、认证交换、完整性、流量填充、路由控制和公证。
  5. 普遍性机制包括可信功能、标签、安全审计、事件检测、安全恢复和安全管理。
  6. 安全服务要映射到链路、网络、传输、会话和应用层次。
  7. 认证不等于授权,保密不等于完整性,日志不等于抗抵赖。
  8. 案例题应按“攻击—服务—机制—部署—验证”作答。

十一、课后练习

练习一:单项选择

下列哪项最适合防止攻击者重复提交以前捕获的合法交易请求?

A. 只增加链路带宽
B. 使用时间戳、随机数、序列号或幂等号并进行状态校验
C. 只隐藏服务器地址
D. 只保存访问日志

练习二:判断题

只要通信采用加密,就一定能够防止冒充、重放、拒绝服务和业务越权。( )

练习三:简答题

请说明安全攻击、安全服务和安全机制三者之间的关系。

练习四:案例题

某企业只在互联网出口部署 VPN,认为内部应用通信已经安全。现在发现内部账号被盗后可以访问多个业务系统,且交易请求存在重放风险。请按 OSI 安全体系思想提出改进方案。

十二、参考答案

练习一答案

答案:B。

解析:重放防护需要将消息与时间、随机数、序列号或唯一交易号绑定,并结合状态和幂等校验。单纯加密或日志不能阻止合法报文被重复发送。

练习二答案

答案:错误。

解析:加密主要保护保密性,不能自动提供正确的身份认证、业务授权、重放防护、完整性、抗抵赖和可用性。需要根据攻击类型组合安全服务和机制。

练习三答案

参考答案:安全攻击描述可能破坏保密性、完整性、可用性或真实性的行为;安全服务描述系统为抵御攻击而提供的认证、访问控制、保密、完整性和抗抵赖能力;安全机制是实现这些服务的技术和流程,如加密、签名、认证交换、访问控制、序列号、审计和恢复。设计过程是先识别攻击,再确定目标服务,最后选择机制和部署位置,并通过测试和审计验证。

练习四答案

参考答案:VPN 主要提供通道保护,不能替代应用、身份和业务级安全。应建立统一身份和 MFA,对内部应用实施最小权限、RBAC/ABAC、服务间认证和微隔离;管理面使用 PAM、跳板和审计;关键应用使用传输层加密和证书,敏感交易增加应用级签名或消息认证。

交易请求加入唯一交易号、时间窗口、随机数或序列号,服务端保存状态并实施幂等、防重放和业务状态校验;应用和数据库限制账号权限,严禁共享高权限账号;集中采集身份、网络、应用和数据库日志,检测异常访问和重复交易;对 VPN、身份、证书和应用服务设计高可用、撤销、轮换和故障恢复。

十三、今日复盘

请选一个实际通信场景,依次写出它可能遭受的攻击、需要的安全服务、使用的安全机制、机制部署在哪一层,以及如何验证。若能完成这五步,就掌握了 OSI 安全体系架构从理论到设计的转换方法。

下一篇继续 Day37-16:18.5.2 认证框架。