首页 网络安全 正文
  • 本文约3041字,阅读需15分钟
  • 139
  • 0

OpenFHE开源全同态加密库漏洞CVE-2024-56430

摘要

栋科技漏洞库关注到OpenFHE受影响版本中存在一个安全漏洞,该安全漏洞现已被追踪为CVE-2024-56430,该漏洞的CVSS评分为6.5。

OpenFHE是OpenFHE公司一个开源全同态加密库,一个比较成熟的使用C++写的同态加密库,实现了基于RLWE的常见的同态加密方案。

OpenFHE 实现了包括BGV,BFV,CKKS,FHEW/TFHE,具体实现版本是剩余整数系统(RNS)变体,即使用64位整数去表示大整数。

一、基本情况

OpenFHE 支持公钥加密、私钥加密、同态加法、层级同态乘法、自举(bootstrapping)、密钥交换,OpenFHE github可查阅最新进展。

OpenFHE开源全同态加密库漏洞CVE-2024-56430

栋科技漏洞库关注到OpenFHE受影响版本中存在一个安全漏洞,该安全漏洞现已被追踪为CVE-2024-56430,该漏洞的CVSS评分为6.5。

二、漏洞分析

CVE-2024-56430是OpenFHE 1.2.3版本存在的安全漏洞,在lib/binfhe-base-scheme.cpp的BinFHEContext::EvalFloor中有空指针解引用。

具体而言,该漏洞源于lib/binfhe-base-scheme.cpp文件的BinFHEContext::EvalFloor中存在一个空指针取消引用,从而导致了漏洞的发生。

漏洞代码位于/binfhe/lib/binfhe-base-scheme.cpp路径中的地L307-L308行,漏洞代码如下:

LWECiphertext BinFHEScheme::EvalFloor(const std::shared_ptr<BinFHECryptoParams>& params, const RingGSWBTKey& EK,
                                      ConstLWECiphertext& ct, const NativeInteger& beta, uint32_t roundbits) const {

四、漏洞复现

1、POC代码

抱歉访问受限,免费注册为本站会员即可正常访问

2、代码编译后执行报分段错误:

抱歉访问受限,免费注册为本站会员即可正常访问

3、漏洞分析

根据上面的错误信息,可以知道程序正在尝试访问空指针,从而导致分段错误。

PoC代码中传递了一个空指针(nullptr)BinFHEContext::EvalFloor,但BinFHEContext::EvalFloor没有处理空指针类型,导致分段错误。

四、影响范围

OpenFHE <= 1.2.3

五、修复建议

OpenFHE > 1.2.3

六、参考链接

文章回复-路羽博客.png此处内容已隐藏,评论后刷新即可查看!

评论
更换验证码
友情链接