跳到主要内容

ANSSI R226 拦截合规文档

文档目的: 本文档提供了在法国刑法第 R226-3 条和 R226-7 条下获得 ANSSI R226 授权所需的技术规范,适用于 OmniCSCF IMS 核心网络(呼叫会话控制功能)。

分类: 监管合规文档

目标机构: 法国国家信息系统安全局(ANSSI)

法规: R226 - 通信隐私和合法拦截的保护


1. 详细技术规范

1.1 系统识别

产品名称: OmniCSCF IMS 核心网络
产品类型: IP 多媒体子系统(IMS)核心网络
主要功能: VoIP/VoLTE 呼叫会话控制和多媒体服务交付
部署模型: 本地电信基础设施

网络组件:

  • P-CSCF(代理呼叫会话控制功能)
  • E-CSCF(紧急呼叫会话控制功能)
  • I-CSCF(查询呼叫会话控制功能)
  • S-CSCF(服务呼叫会话控制功能)

该系统处理 IP 多媒体子系统(IMS)网络的注册、认证、会话路由和呼叫控制。详细的拦截能力和加密特性在下面的章节中描述。

1.2 拦截能力

1.2.1 注册和会话获取

SIP 注册捕获:

CSCF 系统处理所有 SIP 注册并维护完整的注册状态:

  • 用户标识符:

  • 注册元数据:

    • 联系 URI(实际 UE 网络地址)
    • 路径头(通过 P-CSCF 返回的路由)
    • 服务路由头(路由到 S-CSCF)
    • 用户代理字符串(设备类型识别)
    • 注册过期时间戳
    • 源 IP 地址和端口
    • 传输协议(TCP/UDP/TLS)
    • 认证向量(RAND、AUTN、XRES、CK、IK 来自 HSS)
  • 网络位置信息:

    • P-Access-Network-Info 头(基站、位置区域)
    • P-Visited-Network-ID(漫游网络识别)
    • 接收的 IP 地址(实际源)
    • P-CSCF 地址(网络入口点)

呼叫会话捕获:

S-CSCF 维护所有活动呼叫的完整 SIP 对话状态:

  • 会话标识符:

    • Call-ID(唯一会话标识符)
    • From/To URI 和标签
    • 双方的路由集
    • Original-Dialog-ID(用于应用服务器交互跟踪)
  • 会话元数据:

    • 主叫身份(From 头,P-Asserted-Identity)
    • 被叫方(To 头,请求 URI)
    • 会话建立时间戳
    • 会话终止时间戳
    • 对话状态(早期/确认/已删除)
    • CSeq 编号(事务排序)
  • 媒体信息:

    • SIP 消息体中的 SDP(会话描述协议)
    • 媒体服务器地址(OmniTAS)
    • 编解码器信息(音频/视频格式)
    • 媒体流端点
    • RTP/RTCP 端口分配

紧急呼叫识别:

E-CSCF 组件识别并路由紧急呼叫:

  • 紧急号码检测(112、911 等)
  • IMEI(国际移动设备身份)捕获
  • IMEI 到 MSISDN 的映射(用于回拨)
  • 来自 UE 或网络的位置
  • HELD(HTTP 启用位置交付)协议支持
  • 紧急路由目的地(PSAP/紧急 AS)

1.2.2 数据存储和处理

重要:仅内存状态

CSCF 组件(P-CSCF、E-CSCF、I-CSCF、S-CSCF)仅在内存中维护所有状态数据。没有持久数据库存储注册或呼叫会话数据。所有注册绑定、对话状态和 IPsec 安全关联都存储在内存中,并在系统重启时丢失。

活动注册数据(内存中):

CSCF 系统仅维护实时状态:

P-CSCF 注册状态:

  • IPsec 安全关联数据(SPI 对、端口、加密参数)
  • UE 联系绑定和网络地址
  • IPsec 隧道端点和状态
  • 注册有效期

S-CSCF 注册状态:

  • 公共身份(IMPU)和当前注册状态
  • 带有路径头、用户代理、接收地址的联系绑定
  • 私有身份(IMPI)到公共身份的映射
  • 来自 HSS 的用户配置文件(在注册期间缓存)

活动会话状态(内存中):

S-CSCF 仅维护活动呼叫状态:

  • 呼叫标识符(Call-ID)、参与者身份(From/To 标签)
  • 路由集和联系地址
  • 会话状态(早期/确认/已终止)
  • 会话时间信息

无 CDR 或历史跟踪:

CSCF 组件生成或存储:

  • 呼叫详细记录(CDR)
  • 历史呼叫记录
  • 历史注册记录
  • 长期事件跟踪

CDR 生成和历史跟踪: 所有呼叫详细记录、计费数据和历史呼叫跟踪由**TAS(电话应用服务器 - OmniTAS)**处理,而不是由 CSCF 组件处理。

SIP/Diameter 消息日志记录:

CSCF 可以生成实时事件日志以供操作使用:

  • SIP 消息日志记录: 可选的 SIP 消息日志记录(INVITE、REGISTER 等)
  • Diameter 消息日志记录: 可选的 Diameter 事务日志记录(Cx、Rx、Ro)
  • 系统事件: 配置更改、错误、故障

这些日志是瞬态操作日志,而不是持久的呼叫记录。日志保留是可配置的,通常是短期的(几小时到几天),仅用于调试目的。

1.2.3 分析能力

实时监控:

Phoenix LiveView 网络控制面板提供:

  • 注册监控:

    • 查看所有注册用户,带分页
    • 按 IMPU、联系、IMPI 搜索
    • 注册详细信息(联系、路径、用户代理、过期)
    • 强制注销能力
  • 对话监控:

    • 活动呼叫会话视图
    • Call-ID、From/To URI、状态、持续时间
    • 呼叫终止能力(发送 BYE)
    • 每 5 秒自动刷新
  • 系统状态:

    • Diameter 对等状态(HSS、PCRF、OCS 连接)
    • 前端网关状态
    • 系统容量指标
    • IPsec 隧道容量(P-CSCF)

关于历史数据的说明:

CSCF 组件不维护历史数据。对于历史呼叫记录、CDR 和通信模式分析,合法拦截机构必须与**OmniTAS(电话应用服务器)**协调,该服务器处理所有 CDR 生成和长期呼叫跟踪。

实时服务触发可见性:

S-CSCF 实时处理初始过滤标准(iFC):

  • iFC 评估确定每个呼叫触发哪些应用服务器
  • 实时可见性显示哪些服务被调用
  • 应用服务器路由决策在 SIP 消息流中可见

网络状态:

  • HSS 连接状态(Diameter Cx 接口)
  • S-CSCF 选择分布(I-CSCF)
  • 呼叫路由模式
  • 应用服务器响应时��
  • Diameter 事务性能

1.3 对策能力

1.3.1 隐私保护机制

通信机密性:

  • IPsec 隧道: UE 和 P-CSCF 之间的 ESP(封装安全负载)隧道

    • 加密:AES-CBC、AES-GCM
    • 认证:HMAC-SHA1、HMAC-SHA256
    • 从 IMS AKA 派生密钥(CK/IK 来自 HSS)
    • 每个 UE 的安全关联
  • TLS/TLS 支持:

    • 支持 SIP over TLS(SIPS)
    • 支持 Diameter over TLS(HSS、PCRF、OCS 连接)
    • 基于证书的认证
    • 通过 ECDHE/DHE 实现完美前向保密(PFS)
  • SIP 隐私头:

    • P-Asserted-Identity(经过认证的来电显示)
    • 隐私头(请求来电显示抑制)
    • 匿名会话支持

访问控制:

  • Web UI 认证和访问控制
  • 控制面板的 BINRPC 接口(端口 2046)
  • 注册访问控制和角色分离
  • SIP 认证(通过 HSS 的 AKA)
  • Diameter 对等认证

审计日志:

  • 全面的 SIP 和 Diameter 消息日志记录
  • 注册/注销事件
  • 呼叫建立和终止事件
  • 通过 Web UI 的管理操作
  • 配置更改
  • 认证成功/失败

1.3.2 数据保护特性

访问安全:

  • 基于角色的访问控制(RBAC)
  • 只读监控账户
  • 认证和授权控制

系统加固:

  • 最小暴露的网络端口(5060 SIP、3868 Diameter、8086 Web UI)
  • SIP 消息合理性检查
  • Max-Forwards 循环预防
  • 速率限制和防洪保护
  • 消息大小限制
  • 工作进程隔离

1.4 合法拦截集成点

1.5.1 ETSI 合法拦截架构

CSCF 系统为符合 ETSI 的合法拦截提供基础。虽然原生 X1/X2/X3 接口并未内置,但所有必要的数据访问点均存在,以便与外部合法拦截中介功能(LIMF)系统集成。

标准 ETSI LI 接口:

X1 接口 - 管理功能:

  • 目的: 来自执法机构的授权和目标提供
  • 方向: LEMF → LIMF(双向)
  • 功能:
    • 为目标(IMPU、IMSI、MSISDN)激活/停用拦截
    • 设置拦截持续时间和有效期
    • 配置过滤标准(身份、时间窗口)
    • 检索拦截状态
  • 与 CSCF 的集成:
    • LIMF 维护授权数据库(目标列表 - 外部于 CSCF)
    • LIMF 监控 CSCF 的实时状态和消息日志,以匹配会话
    • LIMF 根据 X1 提供的标准进行过滤

X2 接口 - IRI(拦截相关信息)交付:

  • 目的: 向执法机构交付会话元数据
  • 方向: LIMF → LEMF(单向)
  • 数据格式: 符合 ETSI TS 102 232 的 XML/ASN.1
  • 来自 CSCF 的内容:
    • 会话标识符(Call-ID、对话标签)
    • 主叫方(From URI、P-Asserted-Identity、IMPU、IMSI、MSISDN)
    • 被叫方(To URI、请求 URI、IMPU、IMSI、MSISDN)
    • 注册时间戳
    • 会话建立/拆除时间戳
    • 网络位置(P-Access-Network-Info、基站、位置区域)
    • P-CSCF/S-CSCF 地址(网络元素识别)
    • 用户代理(设备类型)
    • 漫游信息(P-Visited-Network-ID)

X3 接口 - CC(通信内容)交付:

  • 目的: 交付实际通信内容
  • 方向: LIMF → LEMF(单向)
  • 数据格式: 符合 ETSI TS 102 232
  • 来自 CSCF 的内容:
    • SIP 消息体(SDP 会话描述)
    • 媒体服务器地址(用于 RTP 拦截)
    • 编解码器信息
    • SIP MESSAGE 即时消息(主体内容)
    • 应用数据(如果通过 CSCF 路由)

注意: 对于语音/视频 RTP 流,LIMF 还必须与媒体服务器(OmniTAS)集成,以捕获实际媒体内容。CSCF 提供会话设置信息(SDP),显示媒体流向。

1.5.2 CSCF 数据源用于合法拦截

1. 注册数据访问:

P-CSCF 注册数据:

  • IMPU(公共身份)
  • 联系 URI(UE 网络地址)
  • 接收的 IP 和端口
  • 路径头
  • 注册过期
  • IPsec SPI 和端口信息
  • 用户代理字符串

S-CSCF 注册数据:

  • 公共身份(IMPU)、禁止状态、注册状态
  • 带有路径头、用户代理、接收地址的联系绑定
  • 私有身份(IMPI)到公共身份的映射
  • 来自 HSS 的用户配置文件(XML 格式,包括用户详细信息)

访问方法:

  • 只读数据访问接口
  • Web UI 监控接口
  • 实时事件日志记录

2. 活动会话数据:

S-CSCF 对话数据:

  • Call-ID(唯一会话标识符)
  • From/To URI 和标签
  • 主叫和被叫的 CSeq 编号
  • 双方的路由集
  • 联系地址
  • 对话状态(早期���确认、已删除)
  • 开始时间戳
  • 超时值

访问方法:

  • 实时对话状态监控
  • 按会话标识符或方标识符查询
  • 法医分析的导出能力

3. SIP 消息日志记录:

日志捕获:

  • 所有 SIP 消息均可记录(REGISTER、INVITE、MESSAGE 等)
  • 可配置的日志级别
  • 带时间戳的结构化日志
  • Syslog 或基于文件的日志记录

日志分析:

  • 解析 SIP 头以提取身份
  • 提取 SDP 以获取媒体信息
  • 跟踪消息序列(CSeq)
  • 关联请求和响应

示例日志条目:

INFO: INVITE sip:+33687654321@ims.mnc001.mcc001.3gppnetwork.org SIP/2.0
From: <sip:+33612345678@ims.mnc001.mcc001.3gppnetwork.org>;tag=abc123
To: <sip:+33687654321@ims.mnc001.mcc001.3gppnetwork.org>
Call-ID: f81d4fae-7dec-11d0-a765-00a0c91e6bf6@ims.mnc001.mcc001.3gppnetwork.org
P-Asserted-Identity: <sip:+33612345678@ims.mnc001.mcc001.3gppnetwork.org>
P-Access-Network-Info: 3GPP-E-UTRAN-FDD; utran-cell-id-3gpp=208011234567890
Content-Type: application/sdp

v=0
o=- 1234567890 1234567890 IN IP4 192.168.1.100
s=-
c=IN IP4 10.20.30.40
t=0 0
m=audio 49170 RTP/AVP 0 8
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000

4. Diameter 消息日志记录:

Cx 消息(HSS 通信):

  • UAR/UAA:用户授权(包含 IMPU、IMPI)
  • LIR/LIA:��置信息(包含 IMPU、服务 S-CSCF)
  • MAR/MAA:认证(包含 IMPI、认证向量)
  • SAR/SAA:服务器分配(包含 IMPU、IMPI、用户配置文件 XML)

可用的 Diameter 数据:

  • IMSI(来自用户配置文件)
  • MSISDN(来自用户配置文件)
  • 相关的 IMPU(每个用户多个身份)
  • 用户配置文件(服务、禁止、漫游状态)

日志示例:

Diameter Cx SAA received from HSS:
User-Name: user@ims.mnc001.mcc001.3gppnetwork.org
Public-Identity: sip:+33612345678@ims.mnc001.mcc001.3gppnetwork.org
Server-Name: sip:scscf.ims.mnc001.mcc001.3gppnetwork.org
Result-Code: 2001 (Success)
User-Data: <XML user profile with IMSI, MSISDN, iFC>

5. 紧急呼叫数据(E-CSCF):

IMEI 到 MSISDN 映射:

  • P-CSCF 在 UE 使用 IMEI 注册时创建映射
  • 24 小时 TTL(生存时间)
  • 用于紧急回拨
  • 在 P-CSCF 集群节点之间同步

数据保留:

  • IMEI 到 MSISDN 的映射保留 24 小时
  • 可用于紧急回拨关联
  • 通过监控接口访问

紧急呼叫日志:

  • 紧急号码检测(112、911 等)
  • 从联系或 P 头提取 IMEI
  • 位置信息(来自 HELD 或 P-Access-Network-Info)
  • PSAP(公共安全应答点)路由
  • E-CSCF 到紧急 AS 路由

1.5.3 LIMF 的集成能力

该系统为合法拦��中介功能(LIMF)系统提供多种集成方法:

  1. 注册和会话数据访问:

    • 实时访问注册数据(身份、位置、设备信息)
    • 活动会话监控(呼叫状态、参与者、时间)
    • 历史查询能力
  2. 事件日志记录:

    • SIP 消息日志记录,具有可配置的详细级别
    • Diameter 消息日志记录,用于 HSS 交互
    • 带时间戳的结构化事件日志
  3. 实时监控:

    • 实时注册状态监控
    • 活动呼叫会话跟踪
    • 紧急呼叫检测和路由信息

集成方法支持基于轮询和事件驱动的架构,以便与 LIMF 连接。

1.5.4 CSCF 数据映射到 LI 接口

CSCF 数据到 IRI(X2)映射:

CSCF 数据源IRI 字段数据示例
IMPU(SIP 头/内存状态)A 方sip:+33612345678@ims.mnc001.mcc001.3gppnetwork.org
IMPI(SIP 头/内存状态)认证 IDuser@ims.mnc001.mcc001.3gppnetwork.org
IMSI(HSS 用户配置文件)用户 ID208011234567890
MSISDN(HSS 用户配置文件)电话号码+33612345678
Call-ID(SIP 头/对话状态)会话 IDf81d4fae-7dec-11d0-a765-00a0c91e6bf6@...
From/To(SIP 头)A 方/B 方sip:+33612345678@... / sip:+33687654321@...
注册时间戳(内存���)事件时间2025-11-29T10:30:00Z
P-Access-Network-Info(SIP 头)位置3GPP-E-UTRAN-FDD;utran-cell-id-3gpp=208011234567890
接收的 IP(SIP 联系)UE IP 地址10.20.30.40:5060
P-CSCF 地址(SIP 路由)网络元素10.4.12.165:5060
S-CSCF 地址(SIP 路由)网络元素10.4.11.45:5060

CSCF 数据到 CC(X3)映射:

CSCF 数据源CC 字段数据示例
SIP MESSAGE 主体即时消息内容"你好,你好吗?"
INVITE 中的 SDP媒体会话信息RTP 端点、编解码器
媒体服务器地址RTP 拦截目标10.50.60.70:49170

注意: 对于实际的语音/视频内容(RTP),LIMF 必须与媒体服务器(OmniTAS)协调,以捕获 RTP 流。CSCF 仅提供会话设置信息。

1.5 基于 Web 的监控接口

该系统包括一个基于 Web 的控制面板,用于实时监控和管理访问:

监控能力:

  • 实时注册状态(活跃用户、位置、设备信息)
  • 活动呼叫会话监控(参与者、呼叫状态、时间)
  • 按身份(IMPU、IMPI、IMSI、MSISDN)搜索和过滤
  • IPsec 隧道状态和容量监控
  • 法医分析的导出能力

安全性:

  • HTTPS/TLS 加密访问
  • 需要认证
  • 所有管理操作的审计日志记录
  • 监控人员的只读访问模式

2. 加密和密码分析能力

2.1 密码能力概述

OmniCSCF 实现了多层加密保护,用于信令和用户数据。本节记录了 ANSSI 所要求的所有密码能力。

2.2 IPsec ESP 隧道加密(UE 到 P-CSCF)

2.2.1 IPsec 协议实现

支持的 IPsec 模式:

  • ESP(封装安全负载) - IP 协议 50
  • 传输模式(非隧道模式)
  • 保护 UE 和 P-CSCF 之间的 SIP 信令

支持的加密算法:

该系统支持内核 IPsec:

  • AES-CBC(高级加密标准 - 密码块链接):

    • AES-128-CBC(128 位密钥)
    • AES-192-CBC(192 位密钥)
    • AES-256-CBC(256 位密钥) - 推荐
  • AES-GCM(高级加密标准 - Galois/计数器模式):

    • AES-128-GCM(128 位密钥,带 AEAD)
    • AES-256-GCM(256 位密钥,带 AEAD) - 推荐
  • 3DES-CBC(三重 DES - 密码块链接):

    • 168 位有效密钥(已弃用,遗留兼容性)
  • NULL 加密:

    • 无机密性(仅认证)
    • 仅用于调试或特定合规场景

支持的认证算法:

  • HMAC-SHA1(基于哈希的消息认证码 - SHA-1):

    • 160 位输出
    • 遗留兼容性
  • HMAC-SHA256(HMAC - SHA-256):

    • 256 位输出
    • 推荐
  • HMAC-SHA384(HMAC - SHA-384):

    • 384 位输出
  • HMAC-SHA512(HMAC - SHA-512):

    • 512 位输出
  • HMAC-MD5:

    • 128 位输出
    • 已弃用,仅用于遗留兼容性

密钥派生:

IPsec 密钥(CK - 密码密钥,IK - 完整性密钥)由 IMS AKA 认证派生:

  1. UE 与 S-CSCF/HSS 执行 AKA 认证
  2. HSS 生成 CK(128 位)和 IK(128 位)
  3. S-CSCF 通过内部接口将 CK/IK 传递给 P-CSCF
  4. P-CSCF 使用 CK/IK 与 UE 建立 IPsec 安全关联
  5. CK 用于 ESP 加密
  6. IK 用于 ESP 认证

安全关联参数:

  • 生命周期: 与 SIP 注册过期相关(通常为 599 秒)
  • 重放保护: 启用(防重放窗口)
  • 序列号: 32 位或 64 位(ESN - 扩展序列号)
  • 完美前向保密: 不适用(密钥来自 AKA,而非 Diffie-Hellman)

实现:

P-CSCF 的 IPsec 能力:

  • 与 Linux 内核 IPsec 堆栈(XFRM 框架)接口
  • 通过内核 API 配置安全策略和关联
  • SPI(安全参数索引)分配和管理
  • 保护流量的端口分配

2.2.2 IPsec 配置能力

密码套件选择:

P-CSCF 可以配置为优先选择特定的密码套件:

优先(强安全性):

  • ESP 使用 AES-256-GCM 和 HMAC-SHA256
  • ESP 使用 AES-256-CBC 和 HMAC-SHA256

支持(兼容性):

  • ESP 使用 AES-128-CBC 和 HMAC-SHA1
  • ESP 使用 3DES-CBC 和 HMAC-SHA1(遗留)

密钥管理:

  • 不使用 IKE(互联网密钥交换)
  • 密钥通过 IMS AKA 提供(CK/IK 来自 HSS)
  • 通过内核 XFRM 手动设置安全关联
  • 注册过期时自动拆除 SA

隧道生命周期:

  1. UE 注册 → AKA 认证 → 生成 CK/IK
  2. P-CSCF 从 S-CSCF 接收 CK/IK
  3. P-CSCF 分配 SPI 对(客户端 SPI、服务器 SPI)
  4. P-CSCF 分配端口对(客户端端口、服务器端口)
  5. P-CSCF 使用 CK/IK 配置内核 IPsec SA
  6. P-CSCF 在 200 OK 中将 IPsec 参数发送给 UE(Security-Server 头)
  7. UE 使用相同参数配置 IPsec SA
  8. 所有后续 SIP 流量通过 ESP 隧道流动
  9. 在注册过期或注销时:SA 被删除,资源被释放

2.3 TLS 加密(SIP 和 Diameter)

2.3.1 SIP 的 TLS(SIPS)

支持的 TLS 版本:

  • TLS 1.2(RFC 5246) - 支持
  • TLS 1.3(RFC 8446) - 支持(如果内核/库支持)
  • TLS 1.0/1.1 - 已弃用(默认禁用)
  • SSL 2.0/3.0 - 不支持(已知漏洞)

TLS 实现:

该系统使用 OpenSSL 或 LibreSSL:

  • 行业标准的 TLS 库
  • 经过密码学验证的实现
  • 定期安全更新

支持的密码套件:

TLS 1.3(推荐):

  • TLS_AES_256_GCM_SHA384
  • TLS_AES_128_GCM_SHA256
  • TLS_CHACHA20_POLY1305_SHA256

TLS 1.2(支持):

  • ECDHE-RSA-AES256-GCM-SHA384(完美前向保密)
  • ECDHE-RSA-AES128-GCM-SHA256(完美前向保密)
  • ECDHE-ECDSA-AES256-GCM-SHA384(完美前向保密)
  • DHE-RSA-AES256-GCM-SHA384(完美前向保密)
  • DHE-RSA-AES128-GCM-SHA256(完美前向保密)

禁用弱密码:

  • 无 RC4
  • 无 MD5
  • 无 NULL 加密
  • 无 EXPORT 级别的密码
  • 无 DES/3DES(已弃用)

证书支持:

  • X.509 证书(标准格式)
  • RSA 密钥: 最小 2048 位,推荐 4096 位
  • ECDSA 密钥: 支持 P-256、P-384、P-521 曲线
  • 证书链验证
  • CRL(证书撤销列表)检查(可选)
  • OCSP(在线证书状态协议)(可选)

TLS 特性:

  • 完美前向保密(PFS): 通过 ECDHE/DHE 密钥交换
  • 服务器名称指示(SNI): 支持
  • TLS 会话恢复: 支持(性能优化)
  • 客户端证书认证: 支持(双向 TLS)

SIP over TLS(SIPS):

  • 传输:TCP 带 TLS 加密
  • 端口:5061(标准 SIPS 端口)
  • 用于 CSCF 之间的通信(可选)
  • 用于受信网络连接

2.3.2 Diameter 的 TLS

Diameter 能力:

该系统支持:

  • Diameter over SCTP(优先考虑可靠性)
  • Diameter over TCP with TLS
  • 端口: 3868(标准 Diameter 端口)

用例:

  • Cx 接口: S-CSCF/I-CSCF 到 HSS(用户数据、认证)
  • Rx 接口: P-CSCF 到 PCRF(QoS 策略)
  • Ro 接口: S-CSCF 到 OCS(在线计费 - 如果启用)

Diameter 的 TLS 配置:

与 SIP 相同的密码套件

  • TLS 1.2/1.3
  • ECDHE/DHE 密钥交换(PFS)
  • AES-GCM 加密
  • SHA256/SHA384 认证

基于证书的认证:

  • Diameter 对等通过 TLS 证书进行认证
  • 双向 TLS(客户端和服务器证书)
  • 证书中的 FQDN(完全合格域名)验证
  • 受信 CA 链验证

2.4 认证密码学

2.4.1 IMS AKA 密码功能

3GPP AKA 算法(MILENAGE):

用于生成认证向量(RAND、AUTN、XRES、CK、IK):

密码功能:

  • f1: 消息认证功能(计算 MAC-A 和 MAC-S)
  • f2: 响应功能(从 RAND 和 K 计算 RES)
  • f3: 密码密钥派生(计算 CK)
  • f4: 完整性密钥派生(计算 IK)
  • f5: 匿名密钥功能(计算 AK 以保护 IMSI 隐私)

密钥材料:

  • K: 128 位永久用户密钥(存储在 ISIM 和 HSS 中)
  • OPc: 操作员变体密钥(从 K 和 OP 派生)
  • RAND: 128 位随机挑战
  • SQN: 48 位序列号(防重放保护)

AKA 序列:

  1. HSS 生成 RAND(���码学随机)
  2. HSS 计算 MAC-A = f1(K, RAND, SQN, AMF)
  3. HSS 计算 AUTN = (SQN ⊕ AK) || AMF || MAC-A
  4. HSS 计算 XRES = f2(K, RAND)
  5. HSS 计算 CK = f3(K, RAND)
  6. HSS 计算 IK = f4(K, RAND)
  7. HSS 将 {RAND, AUTN, XRES, CK, IK} 发送给 S-CSCF
  8. S-CSCF 用 RAND 和 AUTN 向 UE 发起挑战
  9. UE 使用 ISIM 计算 RES = f2(K, RAND)
  10. UE 将 RES 发送给 S-CSCF
  11. S-CSCF 将 RES 与 XRES 进行比较(认证验证)

安全属性:

  • 双向认证: UE 通过 AUTN 验证 HSS,HSS 通过 RES 验证 UE
  • 密钥新鲜性: RAND 是随机的,SQN 防止重放
  • 密钥派生: CK 和 IK 从共享秘密 K 派生

2.4.2 HTTP 摘要认证

对于非 IMS 认证(如果使用):

算法: MD5(RFC 2617)

  • 哈希函数: MD5(128 位输出)
  • 挑战-响应: 基于随机数
  • 重放保护: 带时间戳的随机数

注意: 使用 MD5 的 HTTP 摘要被认为是弱的。强烈推荐使用 IMS AKA。

2.5 哈希和完整性

2.5.1 可用的哈希函数

该系统可以使用(通过 OpenSSL/内核加密):

  • SHA-256: 256 位输出,推荐
  • SHA-384: 384 位输出
  • SHA-512: 512 位输出
  • SHA-1: 160 位输出,因安全原因已弃用
  • MD5: 128 位输出,因安全原因已弃���

用途:

  • 用于 IPsec/TLS 的 HMAC 构造
  • 数据完整性验证
  • 随机数生成
  • 重复检测(呼叫 ID 哈希)

2.5.2 消息完整性

SIP 消息完整性:

  • IPsec ESP: HMAC-SHA256 用于经过认证的 SIP over IPsec
  • TLS: 通过 TLS MAC 进行消息认证
  • SIP 摘要: 认证头完整性

Diameter 消息完整性:

  • TLS: Diameter over TLS 提供消息认证
  • HMAC: Diameter 消息可以包含 HMAC AVP 以确保完整性

2.6 随机数生成

密码学安全的随机数生成:

该系统依赖于:

  • Linux 内核 /dev/urandom: 密码学安全的 PRNG
  • OpenSSL RAND_bytes(): CSPRNG(密码学安全伪随机数生成器)

用途:

  • SPI 分配(随机起始值)
  • 呼叫 ID 生成
  • 分支参数生成
  • 认证的随机数生成
  • 会话 ID 生成

2.7 密钥管理

2.7.1 TLS 证书管理

证书存储:

  • 文件系统存储,权限受限(0600)
  • 位于:/etc/system/tls/
  • 证书和密钥采用 PEM 格式

证书生成:

# 生成 RSA 4096 位私钥
openssl genrsa -out system-key.pem 4096

# 生成 CSR(证书签名请求)
openssl req -new -key system-key.pem -out system.csr \
-subj "/C=FR/ST=IDF/L=Paris/O=Omnitouch/CN=scscf.ims.mnc001.mcc001.3gppnetwork.org"

# 自签名证书(开发/测试)
openssl x509 -req -days 365 -in system.csr \
-signkey system-key.pem -out system-cert.pem

# 生产:将 CSR 提交给受信 CA

证书轮换:

  • 建议每年更新证书
  • 优雅地重启服务以加载新证书
  • 不需要停机

2.7.2 IPsec 密钥管理

密钥派生:

  • CK(密码密钥)和 IK(完整性密钥)来自 IMS AKA
  • 128 位密钥来自 HSS
  • 通过 Diameter Cx(通过 TLS)安全传递

密钥生命周期:

  • 与 SIP 注册过期相关(通常为 599 秒)
  • 在注册刷新时重新密钥
  • 在注销时自动销毁密钥

密钥存储:

  • 瞬态(仅在活动注册期间内存中)
  • 安装在内核 IPsec 堆栈中
  • 无持久密钥存储
  • 当 SA 被删除时,密钥被丢弃

2.8 密码分析抵抗

2.8.1 算法选择

抵御密码分析:

  • 不使用自定义算法: 仅使用行业标准、经过同行评审的算法
  • 强密钥大小: AES-256、RSA-4096、SHA-256
  • 认证加密: AES-GCM(AEAD - 带相关数据的认证加密)
  • 完美前向保密: TLS 中的 ECDHE/DHE
  • 定期更新: 应用 OpenSSL/LibreSSL 安全补丁

禁用已弃用的算法:

  • MD5(哈希冲突)
  • RC4(流密码弱点)
  • DES/3DES(块大小小,密钥长度短)
  • SSL 2.0/3.0(协议漏洞)
  • TLS 1.0/1.1(BEAST、POODLE 攻击)

2.8.2 边信道攻击缓解

时间攻击抵抗:

  • 对认证响应进行恒定时间比较
  • 在密码操作中无时间泄露(通过 OpenSSL)

内存保护:

  • 内核 IPsec 堆栈隔离
  • 进程内存隔离
  • 对敏感数据不使用交换(如果配置)

2.9 合规性和标准

密码标准合规性:

  • NIST SP 800-52: TLS 指南
  • NIST SP 800-131A: 密码算法过渡
  • RFC 7525: TLS 推荐
  • ETSI TS 133 203: 3GPP 接入安全(IMS AKA)
  • ETSI TS 133 210: IP 网络层安全(IPsec)
  • 3GPP TS 33.203: IMS 的接入安全
  • 3GPP TS 33.210: 网络域安全

法国密码法规:

  • 无出口限制的密码学(所有标准算法)
  • 标准密码手段(无政府后门)
  • ANSSI 密码产品认证(如有需要)