跳到主要内容

7.5.5. Canonicalization Attacks (规范化攻击)

7.5.5. Canonicalization Attacks (规范化攻击)

签名基生成中的任何歧义可能为攻击者提供替换或破坏消息签名的杠杆. 某些消息组成部分值, 特别是 HTTP 字段值, 可能易受导致意外不安全行为的错误实现影响. 本规范的朴素实现可能通过取字段的单一值并直接用作组成部分值而不适当处理来实现 HTTP 字段处理.

例如, 若 obs-fold 字段值的处理不移除内部行折叠与空白, 签名者可能向签名基引入附加换行, 为攻击者提供挂载签名碰撞 (第 7.3.1 节) 攻击的潜在位置. 或者, 若多次出现的头字段未按本规范要求合并为单一字符串值, 可挂载类似攻击, 因为已签名的组成部分值会在签名基中出现多次并可能以此方式被替换或攻击.

为对抗此点, 签名者与验证者的所有实现必须实现完整的字段值处理算法.