{"schema_version":"1.9.0","id":"CVE-2022-1941","published":"2022-09-22T00:00:00Z","modified":"2026-08-12T12:59:31.462666Z","aliases":["GHSA-8gq9-2x98-w8hf","PYSEC-2026-899"],"related":["ALSA-2025:7138","SUSE-SU-2022:3922-1","SUSE-SU-2023:2783-1","SUSE-SU-2023:2783-2"],"summary":"Out of Memory issue in ProtocolBuffers for cpp and python","details":"A parsing vulnerability for the MessageSet type in the ProtocolBuffers versions prior to and including 3.16.1, 3.17.3, 3.18.2, 3.19.4, 3.20.1 and 3.21.5 for protobuf-cpp, and versions prior to and including 3.16.1, 3.17.3, 3.18.2, 3.19.4, 3.20.1 and 4.21.5 for protobuf-python can lead to out of memory failures. A specially crafted message with multiple key-value per elements creates parsing issues, and can lead to a Denial of Service against services receiving unsanitized input. We recommend upgrading to versions 3.18.3, 3.19.5, 3.20.2, 3.21.6 for protobuf-cpp and 3.18.3, 3.19.5, 3.20.2, 4.21.6 for protobuf-python. Versions for 3.16 and 3.17 are no longer updated.","affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/protocolbuffers/protobuf","events":[{"introduced":"0"},{"fixed":"a902b39270841beafc307dfa709610aa1cac2f06"},{"introduced":"17b30e96476be70b8773b2b807bab857fd3ceb39"},{"fixed":"b464cfbee18c71c40e761a5273ad369f3547294b"},{"introduced":"bc799d78f81115940eec953e2937245c70e3e6e4"},{"fixed":"a20c65f2cd549445fda907f7b83894c8eb7427d6"},{"introduced":"7062d0a2d0075d5e7d5c294fd3984df67a976da3"},{"fixed":"24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb"}],"database_specific":{"cpe":["cpe:2.3:a:google:protobuf-cpp:*:*:*:*:*:*:*:*","cpe:2.3:a:google:protobuf-python:*:*:*:*:*:*:*:*"],"extracted_events":[{"introduced":"0"},{"fixed":"3.18.3"},{"introduced":"3.19.0"},{"fixed":"3.19.5"},{"introduced":"3.20.0"},{"fixed":"3.20.2"},{"introduced":"3.21.0"},{"fixed":"3.21.6"}],"source":"CPE_RANGE"}}],"versions":["v21.0-rc2","v21.0-rc1","v3.20.1","v3.18.2","v3.19.4","v3.20.1-rc1","v3.20.0-rc3","v3.20.0","v3.20.0-rc2","v3.19.3","v3.19.2","v3.19.1","v3.19.0","v3.18.1","v3.18.0","v3.18.0-rc2","v3.18.0-rc1","v3.12.3","v3.0.0-beta-3-pre-1","v3.0.0-beta-2","v3.0.0-beta-1-bzl-fix","v3.0.0-beta-1","v3.0.0-alpha-4","v3.0.0-alpha-3","v2.6.1rc1","v2.6.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2022-1941.json","vanir_signatures":[{"deprecated":false,"digest":{"line_hashes":["153926112890941523864860940857322357160","289567205693198179886075926256830408437","146191563495415598666003706080146287964","82847680890546882463891229857875315122"],"threshold":0.9},"id":"CVE-2022-1941-0f527957","signature_type":"Line","signature_version":"v1","source":"https://github.com/protocolbuffers/protobuf/commit/24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb","target":{"file":"src/google/protobuf/duration.pb.h"}},{"deprecated":false,"digest":{"line_hashes":["153926112890941523864860940857322357160","289567205693198179886075926256830408437","146191563495415598666003706080146287964","82847680890546882463891229857875315122"],"threshold":0.9},"id":"CVE-2022-1941-32965c2b","signature_type":"Line","signature_version":"v1","source":"https://github.com/protocolbuffers/protobuf/commit/24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb","target":{"file":"src/google/protobuf/any.pb.h"}},{"deprecated":false,"digest":{"line_hashes":["153926112890941523864860940857322357160","289567205693198179886075926256830408437","146191563495415598666003706080146287964","82847680890546882463891229857875315122"],"threshold":0.9},"id":"CVE-2022-1941-3fea45ab","signature_type":"Line","signature_version":"v1","source":"https://github.com/protocolbuffers/protobuf/commit/24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb","target":{"file":"src/google/protobuf/wrappers.pb.h"}},{"deprecated":false,"digest":{"line_hashes":["153926112890941523864860940857322357160","289567205693198179886075926256830408437","146191563495415598666003706080146287964","82847680890546882463891229857875315122"],"threshold":0.9},"id":"CVE-2022-1941-4c0a2ccc","signature_type":"Line","signature_version":"v1","source":"https://github.com/protocolbuffers/protobuf/commit/24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb","target":{"file":"src/google/protobuf/empty.pb.h"}},{"deprecated":false,"digest":{"line_hashes":["153926112890941523864860940857322357160","289567205693198179886075926256830408437","146191563495415598666003706080146287964","82847680890546882463891229857875315122"],"threshold":0.9},"id":"CVE-2022-1941-622f07a8","signature_type":"Line","signature_version":"v1","source":"https://github.com/protocolbuffers/protobuf/commit/24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb","target":{"file":"src/google/protobuf/compiler/plugin.pb.h"}},{"deprecated":false,"digest":{"line_hashes":["153926112890941523864860940857322357160","289567205693198179886075926256830408437","146191563495415598666003706080146287964","82847680890546882463891229857875315122"],"threshold":0.9},"id":"CVE-2022-1941-713864cf","signature_type":"Line","signature_version":"v1","source":"https://github.com/protocolbuffers/protobuf/commit/24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb","target":{"file":"src/google/protobuf/field_mask.pb.h"}},{"deprecated":false,"digest":{"line_hashes":["153926112890941523864860940857322357160","289567205693198179886075926256830408437","146191563495415598666003706080146287964","82847680890546882463891229857875315122"],"threshold":0.9},"id":"CVE-2022-1941-94fa56e7","signature_type":"Line","signature_version":"v1","source":"https://github.com/protocolbuffers/protobuf/commit/24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb","target":{"file":"src/google/protobuf/descriptor.pb.h"}},{"deprecated":false,"digest":{"line_hashes":["153926112890941523864860940857322357160","289567205693198179886075926256830408437","146191563495415598666003706080146287964","82847680890546882463891229857875315122"],"threshold":0.9},"id":"CVE-2022-1941-9fa4dbe9","signature_type":"Line","signature_version":"v1","source":"https://github.com/protocolbuffers/protobuf/commit/24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb","target":{"file":"src/google/protobuf/timestamp.pb.h"}},{"deprecated":false,"digest":{"line_hashes":["153926112890941523864860940857322357160","289567205693198179886075926256830408437","146191563495415598666003706080146287964","82847680890546882463891229857875315122"],"threshold":0.9},"id":"CVE-2022-1941-b84f9c2e","signature_type":"Line","signature_version":"v1","source":"https://github.com/protocolbuffers/protobuf/commit/24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb","target":{"file":"src/google/protobuf/struct.pb.h"}},{"deprecated":false,"digest":{"line_hashes":["153926112890941523864860940857322357160","289567205693198179886075926256830408437","146191563495415598666003706080146287964","82847680890546882463891229857875315122"],"threshold":0.9},"id":"CVE-2022-1941-d51c80ab","signature_type":"Line","signature_version":"v1","source":"https://github.com/protocolbuffers/protobuf/commit/24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb","target":{"file":"src/google/protobuf/type.pb.h"}},{"deprecated":false,"digest":{"line_hashes":["153926112890941523864860940857322357160","289567205693198179886075926256830408437","146191563495415598666003706080146287964","82847680890546882463891229857875315122"],"threshold":0.9},"id":"CVE-2022-1941-df0f7015","signature_type":"Line","signature_version":"v1","source":"https://github.com/protocolbuffers/protobuf/commit/24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb","target":{"file":"src/google/protobuf/source_context.pb.h"}},{"deprecated":false,"digest":{"line_hashes":["153926112890941523864860940857322357160","289567205693198179886075926256830408437","146191563495415598666003706080146287964","82847680890546882463891229857875315122"],"threshold":0.9},"id":"CVE-2022-1941-fcf8c8ea","signature_type":"Line","signature_version":"v1","source":"https://github.com/protocolbuffers/protobuf/commit/24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb","target":{"file":"src/google/protobuf/api.pb.h"}}],"vanir_signatures_modified":"2026-08-12T12:59:31Z"}}],"references":[{"type":"WEB","url":"https://cloud.google.com/support/bulletins#GCP-2022-019"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/1xxx/CVE-2022-1941.json"},{"type":"ADVISORY","url":"https://github.com/protocolbuffers/protobuf/security/advisories/GHSA-8gq9-2x98-w8hf"},{"type":"ADVISORY","url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/CBAUKJQL6O4TIWYBENORSY5P43TVB4M3/"},{"type":"ADVISORY","url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/MPCGUT3T5L6C3IDWUPSUO22QDCGQKTOP/"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2022-1941"},{"type":"ADVISORY","url":"https://security.netapp.com/advisory/ntap-20240705-0001/"},{"type":"ARTICLE","url":"http://www.openwall.com/lists/oss-security/2022/09/27/1"},{"type":"ARTICLE","url":"https://lists.debian.org/debian-lts-announce/2023/04/msg00019.html"}],"database_specific":{"cna_assigner":"Google","cwe_ids":["CWE-1286"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/1xxx/CVE-2022-1941.json","unresolved_ranges":[{"extracted_events":[{"last_affected":"4.21.5"}],"source":"AFFECTED_FIELD"}]},"severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}]}