漏洞概述 标题: [Security] TLS ECH transcript reconstruction: heap buffer overflow via repeated ech_outer_extensions 描述: 该漏洞涉及在解密Encrypted Client Hello (ECH)时,解析器在重建内部ClientHello时,对 的处理存在堆缓冲区溢出问题。具体而言,解析器在遍历内部扩展时,对每个 (类型0x4f8e)条目,将 重置为外部扩展的偏移,并复制引用到内部扩展中,但没有遵循RFC中“最多一个ech_outer_extensions”的规则。许多 条目引用相同的大型外部扩展,导致复制N×K字节到一个<K大小的缓冲区,从而引发堆缓冲区溢出。 影响范围 触发条件: 打开一个包含嵌入DSB的伪造捕获文件。 后果: 触发大型控制器堆溢出(观察到WRITE大小为4100字节,约328KB内存),可能导致内存损坏、崩溃或RCE(远程代码执行)。 修复方案 当前状态: 问题已标记为“Done”,但具体修复方案未在页面中详细说明。 建议: 需要确保在处理 时,严格遵守RFC规定,限制最多一个 条目,并增加边界检查以防止缓冲区溢出。 POC代码 总结 该漏洞是由于在处理TLS ECH时,对 的处理不当导致的堆缓冲区溢出。修复方案需要严格遵守RFC规定,增加边界检查,并限制 的数量。