Ecosyste.ms: Advisories

An open API service providing security vulnerability metadata for many open source software ecosystems.

Security Advisories: GSA_kwCzR0hTQS13cnZ3LWhnMjItNG02N80hQw

A potential Denial of Service issue in protobuf-java

Summary

A potential Denial of Service issue in protobuf-java was discovered in the parsing procedure for binary data.

Reporter: OSS-Fuzz

Affected versions: All versions of Java Protobufs (including Kotlin and JRuby) prior to the versions listed below. Protobuf "javalite" users (typically Android) are not affected.

Severity

CVE-2021-22569 High - CVSS Score: 7.5, An implementation weakness in how unknown fields are parsed in Java. A small (~800 KB) malicious payload can occupy the parser for several minutes by creating large numbers of short-lived objects that cause frequent, repeated GC pauses.

Proof of Concept

For reproduction details, please refer to the oss-fuzz issue that identifies the specific inputs that exercise this parsing weakness.

Remediation and Mitigation

Please update to the latest available versions of the following packages:

Permalink: https://github.com/advisories/GHSA-wrvw-hg22-4m67
JSON: https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS13cnZ3LWhnMjItNG02N80hQw
Source: GitHub Advisory Database
Origin: Unspecified
Severity: High
Classification: General
Published: over 2 years ago
Updated: over 1 year ago


CVSS Score: 7.5
CVSS vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Identifiers: GHSA-wrvw-hg22-4m67, CVE-2021-22569
References: Repository: https://github.com/protocolbuffers/protobuf
Blast Radius: 61.8

Affected Packages

maven:com.google.protobuf:protobuf-kotlin
Dependent packages: 56
Dependent repositories: 169
Downloads:
Affected Version Ranges: >= 3.19.0, < 3.19.2, >= 3.18.0, < 3.18.2
Fixed in: 3.19.2, 3.18.2
All affected versions: 3.18.0, 3.18.1, 3.19.0, 3.19.1
All unaffected versions: 3.17.0, 3.17.1, 3.17.2, 3.17.3, 3.18.2, 3.18.3, 3.19.2, 3.19.3, 3.19.4, 3.19.5, 3.19.6, 3.20.0, 3.20.1, 3.20.2, 3.20.3, 3.21.0, 3.21.1, 3.21.2, 3.21.3, 3.21.4, 3.21.5, 3.21.6, 3.21.7, 3.21.8, 3.21.9, 3.21.10, 3.21.11, 3.21.12, 3.22.0, 3.22.1, 3.22.2, 3.22.3, 3.22.4, 3.22.5, 3.23.0, 3.23.1, 3.23.2, 3.23.3, 3.23.4, 3.24.0, 3.24.1, 3.24.2, 3.24.3, 3.24.4, 3.25.0, 3.25.1, 3.25.2, 3.25.3, 4.26.0, 4.26.1
maven:com.google.protobuf:protobuf-java
Dependent packages: 4,892
Dependent repositories: 38,630
Downloads:
Affected Version Ranges: >= 3.19.0, < 3.19.2, >= 3.18.0, < 3.18.2, < 3.16.1
Fixed in: 3.19.2, 3.18.2, 3.16.1
All affected versions: 2.0.1, 2.0.3, 2.1.0, 2.2.0, 2.3.0, 2.4.1, 2.5.0, 2.6.0, 2.6.1, 3.0.0, 3.0.2, 3.1.0, 3.2.0, 3.3.0, 3.3.1, 3.4.0, 3.5.0, 3.5.1, 3.6.0, 3.6.1, 3.7.0, 3.7.1, 3.8.0, 3.9.0, 3.9.1, 3.9.2, 3.10.0, 3.11.0, 3.11.1, 3.11.3, 3.11.4, 3.12.0, 3.12.1, 3.12.2, 3.12.4, 3.13.0, 3.14.0, 3.15.0, 3.15.1, 3.15.2, 3.15.3, 3.15.4, 3.15.5, 3.15.6, 3.15.7, 3.15.8, 3.16.0, 3.18.0, 3.18.1, 3.19.0, 3.19.1
All unaffected versions: 3.16.1, 3.16.3, 3.17.0, 3.17.1, 3.17.2, 3.17.3, 3.18.2, 3.18.3, 3.19.2, 3.19.3, 3.19.4, 3.19.5, 3.19.6, 3.20.0, 3.20.1, 3.20.2, 3.20.3, 3.21.0, 3.21.1, 3.21.2, 3.21.3, 3.21.4, 3.21.5, 3.21.6, 3.21.7, 3.21.8, 3.21.9, 3.21.10, 3.21.11, 3.21.12, 3.22.0, 3.22.1, 3.22.2, 3.22.3, 3.22.4, 3.22.5, 3.23.0, 3.23.1, 3.23.2, 3.23.3, 3.23.4, 3.24.0, 3.24.1, 3.24.2, 3.24.3, 3.24.4, 3.25.0, 3.25.1, 3.25.2, 3.25.3, 4.26.0, 4.26.1
rubygems:google-protobuf
Dependent packages: 164
Dependent repositories: 4,547
Downloads: 255,698,610 total
Affected Version Ranges: < 3.19.2
Fixed in: 3.19.2
All affected versions: 3.0.0, 3.0.2, 3.1.0, 3.2.0, 3.3.0, 3.5.0, 3.5.1, 3.6.0, 3.6.1, 3.7.0, 3.7.1, 3.8.0, 3.9.0, 3.9.1, 3.9.2, 3.10.1, 3.11.0, 3.11.1, 3.11.2, 3.11.3, 3.11.4, 3.12.0, 3.12.1, 3.12.2, 3.12.4, 3.13.0, 3.14.0, 3.15.0, 3.15.1, 3.15.2, 3.15.3, 3.15.4, 3.15.5, 3.15.6, 3.15.7, 3.15.8, 3.16.0, 3.17.0, 3.17.1, 3.17.2, 3.17.3, 3.18.0, 3.18.1, 3.18.2, 3.18.3, 3.19.0, 3.19.1
All unaffected versions: 3.19.2, 3.19.3, 3.19.4, 3.19.5, 3.19.6, 3.20.0, 3.20.1, 3.20.2, 3.20.3, 3.21.0, 3.21.1, 3.21.2, 3.21.3, 3.21.4, 3.21.5, 3.21.6, 3.21.7, 3.21.8, 3.21.9, 3.21.10, 3.21.11, 3.21.12, 3.22.0, 3.22.1, 3.22.2, 3.22.3, 3.22.5, 3.23.0, 3.23.1, 3.23.2, 3.23.3, 3.23.4, 3.24.0, 3.24.1, 3.24.2, 3.24.3, 3.24.4, 3.25.0, 3.25.1, 3.25.2, 3.25.3, 4.26.0, 4.26.1