CVE-2021-22569: Denial of Service Vulnerability in protobuf-java

Summary

07/01/2022
Yes i
High
7.5

CVE-2021-22569: A potential Denial of Service issue in protobuf-java. Affects com.google.protobuf:protobuf-java across 3 version ranges.

< 3.16.1 >= 3.18.0, < 3.18.2 >= 3.19.0, < 3.19.2

Fixed in 3.16.1, 3.18.2 or 3.19.2, depending on the release line you run. How to fix ↓

Also tracked for

The same CVE-2021-22569 is tracked separately for each ecosystem and vendor. Its fix information is the same; the package and affected versions differ.

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Sponsored Devnack Your last release was probably never penetration tested Manual testing by engineers who build software, not an auditor's checklist. Trusted by teams at Swift and Google Talk to Devnack

Background

The protobuf-java package is an open-source library that provides support for Protocol Buffers, a language-agnostic binary serialization format developed by Google. It allows developers to define the structure of their data using a simple language and generate code in various programming languages to serialize and deserialize the data. This vulnerability affects all versions of Java Protobufs (including Kotlin and JRuby) prior to the fixed versions. It is important to note that Protobuf "javalite" users, typically Android, are not affected by this vulnerability.

Vulnerability Detail

The vulnerability, identified as CVE-2021-22569, is a potential Denial of Service (DoS) issue in protobuf-java. It stems from an implementation weakness in how unknown fields are parsed in Java. An attacker can exploit this weakness by sending a small (~800 KB) malicious payload that creates a large number of short-lived objects, causing frequent garbage collection (GC) pauses. This can lead to a DoS condition where the parser is occupied for several minutes, impacting the availability of the system. The vulnerability has a CVSS score of 7.5, indicating its high severity.

How To Fix

Fixed versions by release line

The minimum fixed version depends on the release line you run.

  • < 3.16.1 3.16.1
  • >= 3.18.0, < 3.18.2 3.18.2
  • >= 3.19.0, < 3.19.2 3.19.2

Tip — Not sure which release line you're on? Vulert can find the fix for the version you are using. Scan free →

Workaround

There is no specific workaround mentioned for this vulnerability.

Conclusion

The vulnerability in protobuf-java (CVE-2021-22569) poses a high risk due to its potential for causing a Denial of Service (DoS) condition. It is crucial to update the affected packages to the fixed versions mentioned above to ensure the security and availability of the system. For further support on vulnerability remediation, you can reach out to DevNack.com.

See every vulnerability recorded for com.google.protobuf:protobuf-java →

Share this vulnerability

FAQ

The vulnerability can be exploited to cause a Denial of Service (DoS) condition, where the parser is occupied for several minutes, impacting the availability of the system.

All versions of Java Protobufs (including Kotlin and JRuby) prior to the fixed versions are affected.

No, Protobuf "javalite" users, typically Android, are not affected by this vulnerability.

The CVSS score of this vulnerability is 7.5, indicating its high severity.

To mitigate the risk, it is recommended to update the affected packages to the latest available versions.

Related vulnerabilities

Recent vulnerabilities recorded for com.google.protobuf:protobuf-java.

How To Fix

Fixed versions by release line

The minimum fixed version depends on the release line you run.

  • < 3.16.1 3.16.1
  • >= 3.18.0, < 3.18.2 3.18.2
  • >= 3.19.0, < 3.19.2 3.19.2

Tip — Not sure which release line you're on? Vulert can find the fix for the version you are using. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback