Hacker News 中文摘要

RSS订阅

Cloudflare Circl FourQ实现中的加密问题(CVE-2025-8556) -- Cryptographic Issues in Cloudflare's Circl FourQ Implementation (CVE-2025-8556)

文章摘要

研究人员在2025年初审计开源椭圆曲线实现时,发现Cloudflare的CIRCL密码库中FourQ曲线实现存在加密漏洞。通过HackerOne报告后获得冷淡回应,直接联系Cloudflare后问题得到确认和修复。FourQ是微软研发的128位安全椭圆曲线,CIRCL库提供了其基本实现和Diffie-Hellman密钥交换功能。

文章总结

标题:Cloudflare CIRCL库FourQ实现中的加密漏洞(CVE-2025-8556)

核心内容概述:

2025年初,我们在审计开源椭圆曲线实现时,发现Cloudflare的CIRCL加密库中FourQ椭圆曲线实现存在多个加密漏洞。这些漏洞主要涉及无效点攻击风险,可能允许攻击者通过精心构造的无效曲线点获取服务器私钥信息。

技术细节:

  1. FourQ曲线背景:
  • 由微软研发的128位安全强度椭圆曲线
  • 采用扭曲爱德华曲线方程
  • 具有两个自同态映射,适合资源受限的嵌入式场景
  • Cloudflare的CIRCL库实现了FourQ曲线及名为Curve4Q的Diffie-Hellman密钥交换
  1. 漏洞原理:
  • 无效点攻击:当服务器未验证输入点是否在曲线上时,攻击者可构造特殊点使计算结果落入小阶子群
  • 通过中国剩余定理组合多次攻击,最终可恢复完整私钥
  • 虽然爱德华曲线通常能抵抗此类攻击,但在特定条件下(如Z坐标为0)仍存在风险
  1. 主要漏洞点:
  • Point.Unmarshal:未按IETF规范对共轭点进行二次验证
  • pointR1.isEqual:当Z坐标为0时存在验证缺陷
  • pointR1.ClearCofactor:未验证清除辅因子后的中性点
  • pointR1.ScalarMult:执行标量乘法前缺少曲线验证

修复情况: 我们于2025年3月通过HackerOne计划报告漏洞,经直接联系Cloudflare后获得响应。Cloudflare团队已修复这些问题,包括: - 完善点解组验证流程 - 修正坐标比较逻辑 - 增加辅因子清除验证 - 强化标量乘法前的安全检查

安全建议: - 所有椭圆曲线实现都应严格验证输入点有效性 - 关键操作(解组、加法、标量乘法)前必须进行曲线验证 - 建议采用深度防御策略,实施多重验证机制

(注:原文中部分技术细节描述、数学公式及代码片段已作简化处理,保留核心安全逻辑)

评论总结

总结评论内容如下:

  1. 对漏洞赏金平台的批评

    • 主要观点:漏洞赏金平台在处理复杂技术问题时效率低下,审核人员缺乏足够的技术理解。
    • 引用:
      • "Reporting issues which are actually complicated or require an in depth understanding of technology are brickwalled"(报告复杂问题时常常受阻)
      • "At least cloudflare has a competent security team"(至少Cloudflare有专业的安全团队)
  2. 对Cloudflare安全实践的质疑

    • 主要观点:Cloudflare在发布CIRCL库前应进行第三方审计,避免基础性错误。
    • 引用:
      • "Cloudflare should have been forced, by law, to engage a third party neutral auditor"(应强制Cloudflare进行第三方审计)
      • "User-supplied EC point validation is one of the most basic yet crucial steps"(用户提供的EC点验证是最基本但关键的步骤)
  3. 对加密实现问题的讨论

    • 主要观点:即使是大型公司也应避免自行实现加密算法,尤其是忽略基础安全措施。
    • 引用:
      • "Does the 'don’t implement your own cryptography' advice apply to multi-billion companies?"(“不要自己实现加密”的建议是否适用于大公司?)
      • "all points are verified to lie in an N-torsion subgroup of the elliptic curve"(应验证所有点是否在椭圆曲线的N-torsion子群中)
  4. 其他观点

    • 对文章长度的调侃:"This is a pretty good write up, but took more than the suggested 2 minutes to read."(文章很好,但超过了建议的2分钟阅读时间)
    • 对网站设计的称赞:"what a nice background gradient those guys put into that website!"(网站的背景渐变设计很棒)
    • 对FourQ名称的幽默回应:"I'm just now remembering why this curve was called FourQ"(刚想起来这条曲线为什么叫FourQ)

总结涵盖了主要观点和论据,同时保留了不同角度的评论,并引用关键语句支持。