cJSON JSON Patch Non-Atomic Application Destroys Data Before Validation
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| DaveGamble | cJSON | affected |
|
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Davegamble | Cjson |
|
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.433% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | cJSON through 1.7.19 applies RFC 6902 JSON Patch operations non-atomically in apply_patch() in cJSON_Utils.c. For a replace operation that is missing its value member, or a move operation whose destination path cannot be resolved, the existing target member is detached and deleted before the operation is fully validated, so the target document is mutated while cJSONUtils_ApplyPatches() or cJSONUtils_ApplyPatchesCaseSensitive() returns a failure status. An attacker who can supply the patch document can destroy addressable members of the target document even though the API reports that the patch failed, defeating the all-or-nothing behavior callers rely on to reject bad patches. | |
| Title | cJSON JSON Patch Non-Atomic Application Destroys Data Before Validation | |
| First Time appeared |
Davegamble
Davegamble cjson |
|
| Weaknesses | CWE-696 | |
| CPEs | cpe:2.3:a:davegamble:cjson:*:*:*:*:*:*:*:* | |
| Vendors & Products |
Davegamble
Davegamble cjson |
|
| References |
| |
| Metrics |
cvssV3_1
|