GHSA-g5ww-5jh7-63cx
Protobuf Java vulnerable to Uncontrolled Resource Consumption
Packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| Maven | com.google.protobuf:protobuf-java | >= 3.0.0, < 3.16.3 | 3.16.3 |
| Maven | com.google.protobuf:protobuf-java | >= 3.17.0, < 3.19.6 | 3.19.6 |
| Maven | com.google.protobuf:protobuf-java | >= 3.20.0, < 3.20.3 | 3.20.3 |
| Maven | com.google.protobuf:protobuf-java | >= 3.21.0, < 3.21.7 | 3.21.7 |
| Maven | com.google.protobuf:protobuf-javalite | >= 3.20.0, < 3.20.3 | 3.20.3 |
| Maven | com.google.protobuf:protobuf-javalite | >= 3.21.0, < 3.21.7 | 3.21.7 |
| Maven | com.google.protobuf:protobuf-javalite | >= 3.0.0, < 3.16.3 | 3.16.3 |
Details
As written in the advisory (Markdown source, shown as plain text).
A parsing issue similar to CVE-2022-3171, but with textformat 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 service attack. Inputs 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. We recommend updating to the versions mentioned above.
References
External links from the advisory. They lead to third-party sites.
- https://nvd.nist.gov/vuln/detail/CVE-2022-3509
- https://github.com/protocolbuffers/protobuf/commit/a3888f53317a8018e7a439bac4abeb8f3425d5e9
- https://github.com/protocolbuffers/protobuf/blob/v2.6.1/java/core/src/main/java/com/google/protobuf/MessageReflection.java
- https://github.com/protocolbuffers/protobuf/blob/v3.0.0/java/core/src/main/java/com/google/protobuf/MessageReflection.java
- https://github.com/protocolbuffers/protobuf/tree/main/java