{"id":"CVE-2024-53984","summary":"Nanopb does not release memory on error return when using PB_DECODE_DELIMITED","details":"Nanopb is a small code-size Protocol Buffers implementation.  When the compile time option PB_ENABLE_MALLOC is enabled, the message contains at least one field with FT_POINTER field type, custom stream callback is used with unknown stream length. and the pb_decode_ex() function is used with flag PB_DECODE_DELIMITED, then the pb_decode_ex() function does not automatically call pb_release(), like is done for other failure cases. This could lead to memory leak and potential denial-of-service. This vulnerability is fixed in 0.4.9.1.","aliases":["GHSA-xwqq-qxmw-hj5r"],"modified":"2026-08-12T15:13:12.574554Z","published":"2024-12-02T15:54:47.478Z","related":["openSUSE-SU-2024:0400-1"],"database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-401","CWE-755"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/53xxx/CVE-2024-53984.json"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/53xxx/CVE-2024-53984.json"},{"type":"ADVISORY","url":"https://github.com/nanopb/nanopb/security/advisories/GHSA-xwqq-qxmw-hj5r"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2024-53984"},{"type":"FIX","url":"https://github.com/nanopb/nanopb/commit/2b86c255aa52250438d5aba124d0e86db495b378"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/nanopb/nanopb","events":[{"introduced":"c29ca83ff47a7224172a74ccfee07d91fa040e4c"},{"fixed":"2b86c255aa52250438d5aba124d0e86db495b378"}],"database_specific":{"extracted_events":[{"introduced":"0.4.0"},{"fixed":"0.4.9.1"}],"source":["AFFECTED_FIELD","REFERENCES"]}}],"versions":["nanopb-0.4.9","0.4.9","nanopb-0.4.8","0.4.8","nanopb-0.4.7","0.4.7","nanopb-0.4.6","0.4.6.4","0.4.6","nanopb-0.4.5","0.4.5","nanopb-0.4.4","0.4.4","nanopb-0.4.3","0.4.3","nanopb-0.4.2","0.4.2","nanopb-0.4.1","0.4.1","nanopb-0.4.0","0.4.0","nanopb-0.4.0-dev"],"database_specific":{"vanir_signatures":[{"id":"CVE-2024-53984-25c544ca","signature_type":"Line","signature_version":"v1","source":"https://github.com/nanopb/nanopb/commit/2b86c255aa52250438d5aba124d0e86db495b378","target":{"file":"pb_decode.c"},"deprecated":false,"digest":{"line_hashes":["133668931834258263763085092036640588701","169821086851512961497746753284745162339","272838966146809958213744410910866871932","65836438945697767567965544224116460321"],"threshold":0.9}},{"deprecated":false,"digest":{"length":470,"function_hash":"234246104478002698156771035608019259976"},"id":"CVE-2024-53984-9d21860c","signature_type":"Function","signature_version":"v1","source":"https://github.com/nanopb/nanopb/commit/2b86c255aa52250438d5aba124d0e86db495b378","target":{"file":"pb_decode.c","function":"pb_decode_ex"}}],"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-53984.json","vanir_signatures_modified":"2026-08-12T15:13:12Z"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L"}]}