protobuf-java has a potential Denial of Service issue
Summary
A potential Denial of Service issue in protobuf-java core and lite was discovered in the parsing procedure for binary and text format data. Input streams containing multiple instances of non-repeated embedded messages with repeated or unknown fields causes objects to be converted back-n-forth between mutable and immutable forms, resulting in potentially long garbage collection pauses.
Reporter: OSS Fuzz
Affected versions: This issue affects both the Java full and lite Protobuf runtimes, as well as Protobuf for Kotlin and JRuby, which themselves use the Java Protobuf runtime.
Severity
CVE-2022-3171 Medium - CVSS Score: 5.7 (NOTE: there may be a delay in publication)
Remediation and Mitigation
Please update to the latest available versions of the following packages:
protobuf-java (3.21.7, 3.20.3, 3.19.6, 3.16.3) protobuf-javalite (3.21.7, 3.20.3, 3.19.6, 3.16.3) protobuf-kotlin (3.21.7, 3.20.3, 3.19.6, 3.16.3) protobuf-kotlin-lite (3.21.7, 3.20.3, 3.19.6, 3.16.3) google-protobuf [JRuby gem only] (3.21.7, 3.20.3, 3.19.6)
Affected software
Click a technology to see all vulnerabilities affecting it.
| Platform | Package | Vulnerable versions | Fixed in |
|---|---|---|---|
| Java / Kotlin (Maven) | com.google.protobuf:protobuf-java | >= 3.21.0-rc-1, < 3.21.7, >= 3.20.0-rc-1, < 3.20.3, >= 3.17.0-rc-1, < 3.19.6, < 3.16.3 | 3.21.7, 3.20.3, 3.19.6, 3.16.3 |
| Java / Kotlin (Maven) | com.google.protobuf:protobuf-javalite | >= 3.21.0-rc-1, < 3.21.7, >= 3.20.0-rc-1, < 3.20.3, >= 3.17.0-rc-1, < 3.19.6, < 3.16.3 | 3.21.7, 3.20.3, 3.19.6, 3.16.3 |
| Java / Kotlin (Maven) | com.google.protobuf:protobuf-kotlin | >= 3.21.0-rc-1, < 3.21.7, >= 3.20.0-rc-1, < 3.20.3, >= 3.17.0-rc-1, < 3.19.6, < 3.16.3 | 3.21.7, 3.20.3, 3.19.6, 3.16.3 |
| Java / Kotlin (Maven) | com.google.protobuf:protobuf-kotlin-lite | >= 3.21.0-rc-1, < 3.21.7, >= 3.20.0-rc-1, < 3.20.3, >= 3.17.0-rc-1, < 3.19.6, < 3.16.3 | 3.21.7, 3.20.3, 3.19.6, 3.16.3 |
References
- https://github.com/protocolbuffers/protobuf/security/advisories/GHSA-h4h5-3hr4-j3g2
- https://nvd.nist.gov/vuln/detail/CVE-2022-3171
- https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=48771
- https://github.com/protocolbuffers/protobuf
- https://github.com/protocolbuffers/protobuf/releases/tag/v21.7
- https://github.com/protocolbuffers/protobuf/releases/tag/v3.16.3
- https://github.com/protocolbuffers/protobuf/releases/tag/v3.19.6
- https://github.com/protocolbuffers/protobuf/releases/tag/v3.20.3
- https://github.com/rubysec/ruby-advisory-db/blob/master/gems/google-protobuf/CVE-2022-3171.yml
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/CBAUKJQL6O4TIWYBENORSY5P43TVB4M3
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/MPCGUT3T5L6C3IDWUPSUO22QDCGQKTOP
- https://security.gentoo.org/glsa/202301-09
- CVSS vector
CVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H- Weakness (CWE)
CWE-20- Platform
- Java / Kotlin (Maven)
- Package
com.google.protobuf:protobuf-java, com.google.protobuf:protobuf-javalite, com.google.protobuf:protobuf-kotlin- Disclosed
- 04.10.2022
- Updated
- 11.10.2026 13:19
Sources and licenses
OSV / GitHub Advisory Database - GHSA-h4h5-3hr4-j3g2 - CC BY 4.0
Vulnerability history: com.google.protobuf:protobuf-java
All published vulnerabilities of this package (Java / Kotlin (Maven)), newest first. Shows whether this is a one-off slip or a package that needs watching.
- Total entries
- 6
- First → latest
- 01.2022 09.2024
- Without a fix
- 0
- Exploited in attacks
- 0
Severity breakdown
- High 5
- Medium 1
Disclosures per year
- 2022: 5
- 2023: 0
- 2024: 1
- 2025: 0
- 2026: 0
-
protobuf-java has a potential Denial of Service issue this entry
Know which vulnerabilities affect your application
With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.