【TCP/IP】20. 因特网安全

发布于:2025-07-13 ⋅ 阅读:(18) ⋅ 点赞:(0)

20. 因特网安全

20.1 安全威胁

网络安全威胁是指对网络资源的机密性、完整性、可用性和非否认性造成的危害,主要分为被动攻击主动攻击两类。

  1. 被动攻击
    攻击者不修改数据,仅通过截获和分析信息获取利益,目标是 “获取信息”。
    • 手段:截获传输中的数据并分析。
    • 分类:
      • 析出消息内容:从截获的信息中提取有用数据(如未加密的明文);若信息加密,攻击者会尝试破解以获取内容。
      • 通信量分析:通过分析消息模式(如通信主机标识、通信频率 / 长度),推测通信性质(如是否在传输敏感数据)。
    • 特点:难以检测(不干扰数据传输),但可通过加密等技术预防。
  2. 主动攻击
    攻击者直接修改、伪造数据或干扰系统运行,目标是 “破坏或篡改信息”。
    • 手段:篡改数据、伪造身份、阻止合法访问。
    • 分类:
      • 篡改消息:非法修改传输中的数据(如修改订单金额),破坏信息完整性。
      • 伪装:冒充合法用户或实体(如伪造 IP 地址),破坏信息真实性。
      • 拒绝服务(DoS/DDoS):通过大量请求耗尽系统资源(如带宽、服务器算力),阻止合法用户访问,破坏系统可用性。
    • 特点:难以预防(攻击点多样),但易检测(数据或行为异常)。

20.2 安全服务

安全服务是网络安全系统提供的保护机制,用于抵御安全威胁,主要包括以下 9 类:

  1. 机密性
    • 作用:保护信息不被未授权者获取(抵御被动攻击)。
    • 实现:
      • 通过加密技术防止消息内容被析出;
      • 通过流量填充(生成伪造流量)干扰通信量分析。
    • 应用:可保护整个消息流、单个消息或消息中的特定字段。
  2. 完整性
    • 作用:确保信息未被非法篡改(抵御主动攻击中的篡改消息)。
    • 分类:面向连接的完整性(持续验证)、无连接的完整性(单次验证)。
    • 实现:通过报文鉴别码(MAC)或散列函数检测数据是否被修改,若发现篡改则报告并按需恢复。
  3. 身份认证(真实性)
    • 作用:确认通信双方的真实身份(抵御伪装攻击)。
    • 实现:通过交换认证信息(如口令、数字证书、生物特征)验证对等实体的合法性,确保通信对象可信。
  4. 访问控制
    • 作用:限制对网络资源的访问,仅授权用户可操作(如文件、数据库、服务器)。
    • 实现:基于身份、角色或权限的策略(如防火墙规则、操作系统权限设置)。
  5. 非否认性
    • 作用:防止发送方或接收方抵赖已传输的信息(如交易记录、合同)。
    • 实现:通过数字签名(发送方无法否认发送)和第三方仲裁(双方共同信任的机构验证)。
  6. 可用性
    • 作用:保障系统持续正常提供服务(抵御拒绝服务攻击)。
    • 实现:
      • 严格的访问控制和防病毒措施;
      • 资源分布与冗余(如集群服务器、多链路);
      • 数据备份和快速恢复机制。
  7. 安全审计
    • 作用:检查安全事件的跟踪记录(如登录日志、操作记录),追溯攻击源或违规行为。
    • 实现:记录系统活动,定期分析日志以发现异常。
  8. 入侵检测
    • 作用:检测试图破坏系统机密性、完整性或可用性的行为(如病毒、黑客攻击)。
    • 实现:基于特征(已知攻击模式)或异常(偏离正常行为)的检测算法。
  9. 事故响应
    • 作用:在安全事件发生后,按预案快速处理(如隔离攻击、恢复系统、追查责任),减少损失。

20.3 基本安全技术

为实现安全服务,需依赖多种核心技术,主要包括以下 7 类:

20.3.1 密码技术

密码技术是网络安全的基础,通过加密 / 解密保护信息机密性,分为编码学(加密)和密码分析学(破解)。

  • 基本模型
    • 明文:加密前的原始信息;
    • 密文:加密后的不可理解信息;
    • 加密算法:将明文转换为密文的规则;
    • 解密算法:将密文还原为明文的规则(加密算法的逆过程);
    • 密钥:控制加密 / 解密过程的参数(算法公开,密钥保密)。
  • 分类
    • 对称密码体制(如 DES、AES):加密和解密使用相同密钥,效率高但密钥分发困难(适合封闭网络);
    • 非对称密码体制(如 RSA):加密用公钥,解密用私钥,密钥分发方便(公钥可公开),但算法开销大(适合密钥交换)。

20.3.2 报文鉴别技术

用于证实收到的报文来自可信源且未被篡改(抵御主动攻击)。

  • 报文鉴别码(MAC)
    • 发送方用密钥和算法对报文生成定长 MAC,附加在报文后;
    • 接收方用相同密钥和算法重新计算 MAC,若与报文中的 MAC 匹配,则确认完整性和源真实性。
  • 散列函数(Hash Function)
    • 输入为变长报文,输出为定长散列码(报文摘要 MD),具有 “单向性”(无法从散列码反推报文)和 “抗碰撞性”(不同报文难生成相同散列码)。
    • 常用算法:
      • MD5:生成 128 位散列码,输入按 512 比特分组处理(已被攻破);
      • SHA-1:生成 160 位散列码,输入最大长度 2⁶⁴比特(已被攻破);
      • HMAC:结合散列函数和密钥,增强安全性(可替换底层散列函数)。

20.3.3 身份认证技术

确认被认证对象的真实性,基于 “唯一属性” 验证(如口令、生物特征)。

  • 基于口令的认证:用户提交口令,系统与存储的口令比对(简单但易被窃取)。
  • 双因素认证:结合两种不同属性(如口令 + 硬件令牌),安全性更高。
  • 询问 - 响应机制:
    • 示例:挑战握手鉴别协议(CHAP),通过三次握手周期性认证:
      1. 认证方发送随机 “挑战码”;
      2. 被认证方用密钥加密挑战码,返回 “响应”;
      3. 认证方解密响应,与原始挑战码比对,一致则认证通过。
  • Kerberos:基于第三方(密钥分发中心 KDC)的认证系统,适用于开放网络,通过票据授予服务(TGS)分发加密票据,实现身份验证。
  • X.509:国际电信联盟定义的认证框架,基于公钥证书(包含用户公钥和认证机构签名),广泛用于 SSL/TLS 等协议。

20.3.4 数字签名技术

用于保证信息完整性、源真实性和非否认性,类似 “电子签名”。

  • 生成过程:
    1. 发送方用散列函数(如 SHA-1)计算报文的摘要;
    2. 用自己的私钥对摘要加密,生成 “数字签名”;
    3. 将签名附加在报文后发送。
  • 验证过程:
    1. 接收方用相同散列函数计算报文摘要;
    2. 用发送方的公钥解密签名,得到原始摘要;
    3. 比对两个摘要,一致则确认完整性和源真实性。

20.3.5 虚拟专用网(VPN)技术

依托公用网络(如因特网),通过加密、封装等技术构建 “虚拟专用链路”,提供类似专用网络的安全性。

  • 核心技术:封装(隐藏原始地址)、加密(保护内容)、鉴别(验证节点)、访问控制。
  • 分类:
    • 远程访问 VPN(Access VPN):供远程用户(如员工)接入企业网;
    • 内部网 VPN(Intranet VPN):连接企业分支机构,构建统一内部网;
    • 外部网 VPN(Extranet VPN):连接企业与合作伙伴,共享部分资源。

20.3.6 防火墙技术

隔离可信网络(如企业内网)与不可信网络(如因特网),控制出入流量的访问控制设备。

  • 本质:实施访问控制策略的系统(可为路由器、专用设备或软件)。
  • 体系结构:
    • 静态包过滤:基于 IP 地址、端口等静态字段过滤,简单但灵活性差;
    • 动态包过滤:结合连接状态(如 TCP 三次握手)过滤,支持临时开放端口;
    • 电路级网关:在传输层建立 “代理连接”,隐藏内网细节;
    • 应用级网关:在应用层代理特定服务(如 HTTP、FTP),细粒度控制但效率低。

20.3.7 防病毒技术

抵御计算机病毒(具有传染性、破坏性的恶意程序)。

  • 病毒特点:传染性、隐蔽性、潜伏性、破坏性、触发性(如特定时间激活)。
  • 病毒结构:
    • 引导模块:将病毒载入内存,激活其他模块;
    • 传染模块:复制病毒到其他文件或系统;
    • 破坏模块:实施破坏(如删除文件、格式化磁盘)。
  • 防御手段:杀毒软件(特征码匹配、行为分析)、防火墙、定期备份。

20.4 IP 层安全

IP 层安全主要通过IPSec(IP Security) 协议族实现,提供鉴别、机密性和密钥管理,保护 IP 数据报传输。

  1. IPSec 体系结构

    • 核心组成:
      • 安全协议:鉴别首部(AH)和封装安全有效载荷(ESP);
      • 安全关联(SA):定义通信双方的安全策略(如算法、密钥);
      • 密钥管理:交换和维护加密 / 鉴别密钥;
      • 算法:加密(如 AES)、鉴别(如 HMAC-SHA)算法。
    • 保护范围:主机与主机、安全网关之间、主机与安全网关之间的通信。
    • 安全服务:访问控制、无连接完整性、数据源鉴别、抗重放攻击、机密性、有限流量机密性。
  2. 安全关联(SA)

    • 定义:通信双方为保护流量达成的 “安全约定”,标识为SA =(SPI,IPDA,协议)
      • SPI(安全参数索引):32 位值,区分相同目的地和协议的不同 SA(本地有效);
      • IPDA(IP 目的地址):单播地址(目前仅支持单播);
      • 协议:AH 或 ESP。
    • 作用:接收方通过 SPI 确定对应的 SA,应用约定的安全策略。
  3. 鉴别首部(AH)

    • 功能:提供无连接完整性、数据源鉴别、抗重放攻击(可选),不提供机密性。

    • 首部格式

      (固定 32 字节 + 可变部分):

      • 下一个首部(8 位):标识 AH 后的协议(如 TCP、UDP);
      • 载荷长度(8 位):AH 首部长度(单位 32 位字 - 2);
      • 保留(16 位):为 0;
      • SPI(32 位):安全参数索引;
      • 序列号(32 位):防止重放攻击(递增);
      • 鉴别数据(可变):用密钥计算的散列值(验证完整性和源)。
    • 工作模式:

      • 传输模式:保护 IP 数据报的上层协议(如 TCP),适用于主机间端到端通信;
      • 隧道模式:保护整个 IP 数据报(加新 IP 首部),适用于安全网关间通信(隐藏原始地址)。
  4. 封装安全有效载荷(ESP)

    • 功能:提供机密性(必选)和鉴别(可选),支持访问控制、抗重放攻击。
    • 格式:
      • 首部:SPI(32 位)、序列号(32 位);
      • 载荷:加密的上层数据;
      • 尾部:填充(满足加密块对齐)、填充长度(8 位)、下一个首部(8 位);
      • 鉴别数据(可选):验证完整性和源。
    • 工作模式:
      • 传输模式:加密 IP 数据报的上层数据(如 TCP),保留原始 IP 首部;
      • 隧道模式:加密整个原始 IP 数据报,添加新 IP 首部(隐藏原始地址)。

20.5 传输层安全

传输层安全主要通过SSL(安全套接层) 协议实现,位于 TCP 之上、应用层之下,为应用层提供安全传输(如 HTTPS)。

  1. SSL 协议组成
    • 记录协议:封装高层协议数据,提供压缩、加密和 MAC 保护;
    • 握手协议:最复杂部分,用于双方认证身份、协商加密算法(如 AES)、MAC 算法(如 HMAC-SHA)和会话密钥;
    • 修改密文协议:单个字节(值为 1),用于更新当前加密状态(将挂起的密钥 / 算法生效);
    • 告警协议:传递告警信息(如 “警告” 或 “致命” 级别),如证书无效、算法不支持。
  2. TLS 与 SSL 的关系
    • TLS(传输层安全)是 IETF 标准化的 SSL 版本,与 SSLv3 类似,但存在差异:
      • 版本号不同(TLS 为 3.1,SSLv3 为 3.0);
      • MAC 计算、密钥扩展函数、告警代码等细节不同。

20.6 应用层安全

应用层安全针对特定应用协议(如 HTTP、电子邮件)提供增强保护,主要包括 S-HTTP 和 S/MIME。

20.6.1 安全超文本传输协议(S-HTTP)

  • 定义:HTTP 的安全增强版本,为 Web 通信提供机密性、完整性和鉴别。
  • 特点:
    • 支持多种加密算法(如 RSA、AES)、散列函数(如 SHA-1)和数字签名;
    • 保留 HTTP 的事务模型,消息格式为 “请求行 / 状态行 + 首部 + 实体”,首部可加密;
    • 用 “Secure” 方法和 “Secure-HTTP/1.4” 标识,与 HTTP 共享 80 端口。
  • 安全机制:
    • 消息签名(防抵赖)、消息鉴别(防篡改)、消息加密(防泄露);
    • 支持密钥管理(如公钥交换、对称密钥预分配)和抗重放攻击(询问 - 响应机制)。

20.6.2 电子邮件安全(S/MIME)

  • 定义:对 MIME(多用途因特网邮件扩展)的安全扩展,保护电子邮件及其他 MIME 传输(如 HTTP)。
  • 安全服务:报文完整性、机密性、非否认性。
  • 内容类型:通过 MIME 首部标识安全实体,主要包括:
    • multipart/signed:明文 + 签名部分;
    • application/pkcs7-mime; smime-type=signed-data:签名的 MIME 实体;
    • application/pkcs7-mime; smime-type=enveloped-data:加密的 MIME 实体。
  • 签名过程:
    1. 准备 MIME 实体,用 SHA-1/MD5 计算散列值;
    2. 用发送方私钥加密散列值,生成签名;
    3. 打包签名者证书、算法标识和签名,Base64 编码后添加 S/MIME 首部。
  • 验证过程:
    1. 对接收的实体 Base64 解码;
    2. 用发送方公钥解密签名,得到原始散列值;
    3. 重新计算实体散列值,比对一致则验证通过。

本章要点

  • 安全威胁分为被动攻击(难检测、可预防)和主动攻击(难预防、易检测),被动攻击包括析出消息内容和通信量分析,主动攻击包括篡改消息、伪装和拒绝服务。
  • 安全服务包括机密性、完整性、身份认证等 9 类,分别通过加密、鉴别、访问控制等技术实现。
  • 基本安全技术核心包括:密码技术(对称 / 非对称加密)、报文鉴别(MAC / 散列函数)、身份认证(口令 / Kerberos/X.509)、数字签名(防抵赖)、VPN(虚拟专用链路)、防火墙(访问控制)、防病毒(抵御恶意程序)。
  • IP 层安全通过 IPSec 实现,AH 提供鉴别,ESP 提供加密和鉴别,均支持传输和隧道模式,依赖安全关联(SA)定义安全策略。
  • 传输层安全以 SSL/TLS 为核心,通过记录协议和握手协议提供加密和鉴别。
  • 应用层安全包括 S-HTTP(Web 安全)和 S/MIME(电子邮件安全),分别增强 HTTP 和 MIME 的安全性。

网站公告

今日签到

点亮在社区的每一天
去签到