GitHub Advisoryadvisory · Maven, RubyGems
GHSA-h4h5-3hr4-j3g2 protobuf-java has a potential Denial of Service issue
MEDIUM
Official page ↗
- Aliases
- CVE-2022-3171
- Ecosystem
- Maven, RubyGems
- Packages
- com.google.protobuf:protobuf-java, com.google.protobuf:protobuf-kotlin, google-protobuf, com.google.protobuf:protobuf-javalite, com.google.protobuf:protobuf-kotlin-lite
- Severity
- Moderate
- CVSS vector
- CVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
- Weaknesses
- CWE-20
- Reviewed
- 2022-10-04
Affected packages
• Maven com.google.protobuf:protobuf-java: >= 3.21.0-rc-1, < 3.21.7 → fixed in 3.21.7
• Maven com.google.protobuf:protobuf-kotlin: >= 3.21.0-rc-1, < 3.21.7 → fixed in 3.21.7
• RubyGems google-protobuf: >= 3.21.0.rc.1, < 3.21.7 → fixed in 3.21.7
• Maven com.google.protobuf:protobuf-javalite: >= 3.21.0-rc-1, < 3.21.7 → fixed in 3.21.7
• Maven com.google.protobuf:protobuf-kotlin-lite: >= 3.21.0-rc-1, < 3.21.7 → fixed in 3.21.7
• Maven com.google.protobuf:protobuf-java: >= 3.20.0-rc-1, < 3.20.3 → fixed in 3.20.3
• Maven com.google.protobuf:protobuf-java: >= 3.17.0-rc-1, < 3.19.6 → fixed in 3.19.6
• Maven com.google.protobuf:protobuf-java: < 3.16.3 → fixed in 3.16.3
• Maven com.google.protobuf:protobuf-kotlin: >= 3.20.0-rc-1, < 3.20.3 → fixed in 3.20.3
• Maven com.google.protobuf:protobuf-kotlin: >= 3.17.0-rc-1, < 3.19.6 → fixed in 3.19.6
• Maven com.google.protobuf:protobuf-kotlin: < 3.16.3 → fixed in 3.16.3
• RubyGems google-protobuf: >= 3.20.0.rc.1, < 3.20.3 → fixed in 3.20.3
• RubyGems google-protobuf: >= 3.17.0.rc.1, < 3.19.6 → fixed in 3.19.6
• RubyGems google-protobuf: < 3.16.3 → fixed in 3.16.3
• Maven com.google.protobuf:protobuf-javalite: >= 3.20.0-rc-1, < 3.20.3 → fixed in 3.20.3
• Maven com.google.protobuf:protobuf-javalite: >= 3.17.0-rc-1, < 3.19.6 → fixed in 3.19.6
• Maven com.google.protobuf:protobuf-javalite: < 3.16.3 → fixed in 3.16.3
• Maven com.google.protobuf:protobuf-kotlin-lite: >= 3.20.0-rc-1, < 3.20.3 → fixed in 3.20.3
• Maven com.google.protobuf:protobuf-kotlin-lite: >= 3.17.0-rc-1, < 3.19.6 → fixed in 3.19.6
• Maven com.google.protobuf:protobuf-kotlin-lite: < 3.16.3 → fixed in 3.16.3
Description
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)
Related
Alias · CVE (1)
- CVE-2022-3171 A parsing issue with binary data in protobuf-java core and lite versions prior to 3.21.7, 3.20.3, 3.19.6 and 3.16.3 can lead to a denial of… vulnerability
Weakness · CWE (1)
- CWE-20 Improper Input Validation weakness
References
- https://github.com/protocolbuffers/protobuf/security/advisories/GHSA-h4h5-3hr4-j3g2 web
- https://nvd.nist.gov/vuln/detail/CVE-2022-3171 advisory
- https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=48771 web
- https://github.com/protocolbuffers/protobuf package
- https://github.com/protocolbuffers/protobuf/releases/tag/v21.7 web
- https://github.com/protocolbuffers/protobuf/releases/tag/v3.16.3 web
- https://github.com/protocolbuffers/protobuf/releases/tag/v3.19.6 web
- https://github.com/protocolbuffers/protobuf/releases/tag/v3.20.3 web
- https://github.com/rubysec/ruby-advisory-db/blob/master/gems/google-protobuf/CVE-2022-3171.yml web
- https://lists.fedoraproject.org/archives/list/[email protected]/message/CBAUKJQL6O4TIWYBENORSY5P43TVB4M3 web
- https://lists.fedoraproject.org/archives/list/[email protected]/message/MPCGUT3T5L6C3IDWUPSUO22QDCGQKTOP web
- https://security.gentoo.org/glsa/202301-09 web