| 标题 | DaveGamble cJSON v1.7.19 Use After Free |
|---|
| 描述 | A heap-use-after-free (UAF) exists in cJSON's RFC 7386 MergePatch implementation. When cJSONUtils_MergePatch() is called with a non-object patch (e.g., an array), the merge_patch() function in cJSON_Utils.c frees the arget object at line 1328, then calls cJSON_Duplicate(patch, 1) which internally calls cJSON_Duplicate_rec() at line 2808 of cJSON.c. The cJSON_Duplicate_rec() function dereferences item->type on the already-freed object: the freed heap memory gets reallocated for the duplicate tree, and the original freed memory region is then read, triggering a heap-use-after-free.(CWE-416 Use After Free) |
|---|
| 来源 | ⚠️ https://github.com/DaveGamble/cJSON/issues/1060 |
|---|
| 用户 | lrrh (UID 100159) |
|---|
| 提交 | 2026-07-30 18時13分 (1 月前) |
|---|
| 管理 | 2026-09-09 18時21分 (1 month later) |
|---|
| 状态 | 已接受 |
|---|
| VulDB条目 | 401815 [DaveGamble cJSON 直到 1.7.19 cJSON_Utils.c cJSONUtils_MergePatch 内存损坏] |
|---|
| 积分 | 20 |
|---|