跳到主要内容

7. 安全考虑

7. 安全考虑

本文档规定了 SCHC 的一种消息格式扩展. 因此, [RFC8724] 和 [RFC9363] 中定义的相同安全考虑同样适用.

本文档规定的 YANG 模块为一类数据定义 schema, 这些数据设计为通过 NETCONF [RFC6241] 或 RESTCONF [RFC8040] 等网络管理协议访问. NETCONF 的最低层是安全传输层, 强制实现的安全传输是 Secure Shell (SSH) [RFC6242]. RESTCONF 的最低层是 HTTPS, 强制实现的安全传输是 TLS [RFC8446].

Network Configuration Access Control Model (NACM) [RFC8341] 提供了一种机制, 可将特定 NETCONF 或 RESTCONF 用户的访问限制为所有可用 NETCONF 或 RESTCONF 协议操作和内容的预配置子集.

此 YANG 模块中定义了若干可写/可创建/可删除的数据节点 (即 config true, 这是默认值). 在某些网络环境中, 这些数据节点可能被视为敏感或易受攻击. 如果没有适当保护就对这些数据节点执行写操作 (例如 edit-config), 可能会对网络运行产生负面影响. 以下是这些 subtree 和数据节点及其敏感性/脆弱性:

/schc:schc/schc:rule/schc:nature/schc:fragmentation/schc:mode/schc:ack-on-error:

所有数据节点都可能被修改. Rule 包含敏感信息, 例如 SCHC F/R mode 的配置和使用方式以及 SCHC Compound ACK 配置. 攻击者可能试图通过更改 F/R mode 或 SCHC Compound ACK 的使用方式来修改其他设备的 Rules, 从而阻断通信或产生额外 ACK. 因此, 设备必须只被允许修改远端 SCHC instance 上属于自己的 Rules. 请求者的身份必须经过验证. 这可以通过证书或访问列表完成.

在某些网络环境中, 此 YANG 模块中的部分可读数据节点可能被视为敏感或易受攻击. 因此, 控制对这些数据节点的读访问 (例如通过 get, get-config 或 notification) 很重要. 以下是这些 subtree 和数据节点及其敏感性/脆弱性:

/schc:schc/schc:rule/schc:nature/schc:fragmentation/schc:mode/schc:ack-on-error:

通过读取此模块, 攻击者可能了解设备使用的 F/R mode, 设备如何管理 bitmap 创建, buffer 大小, 以及设备何时会请求 ACK.