CVE-2025-57052:cJSON库存在CVSS 9.8高危JSON解析漏洞(含PoC)

漏洞概述

安全研究员Salah Chafai(漏洞利用开发与安全专家)近日披露,轻量级C语言JSON解析库cJSON存在一个高危漏洞(编号CVE-2025-57052,CVSS评分9.8)。攻击者可构造畸形JSON指针绕过数组边界检查,导致内存越界访问、段错误、权限提升或拒绝服务攻击。

cJSON漏洞示意图

技术细节

该漏洞源于cJSON_Utils.c文件中的decode_array_index_from_pointer函数。研究报告指出:"循环错误地检查pointer[0]而非pointer[position],导致非数字字符被当作数组索引处理。"

这种逻辑错误意味着类似"0A"的输入会被解析为索引10,即使数组仅包含三个元素。此类越界访问可能导致应用程序崩溃,或在特定场景下允许攻击者读取/篡改预期范围外的内存。

漏洞验证

Chafai发布了一个简易C程序演示漏洞利用过程:当使用cJSON解析用户JSON数组时,合法索引"0"和"1"能正确返回Alice和Bob的数据,但精心构造的索引"0A"会使cJSON尝试访问不存在的第10个元素。

报告强调:"提供索引0A将导致cJSON访问越界的索引10,可能引发段错误(崩溃)。"

影响范围

由于cJSON被嵌入到无数项目中,受影响软件包括:

  • 处理JSON指针的Web API
  • 依赖轻量级解析器的嵌入式/IoT设备
  • 需要结构化JSON输入的桌面/服务器应用

报告警告:"任何使用cJSON解析JSON指针的软件...都可能遭受拒绝服务攻击

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值