GitHub Advisoryadvisory · Maven, RubyGems

GHSA-h4h5-3hr4-j3g2 protobuf-java has a potential Denial of Service issue

MEDIUM Published 2022-10-04 Modified 2022-10-04 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