High

protobuf-java has potential Denial of Service issue

  • Disclosed: 19.09.2024
  • Updated: 11.10.2026 13:20

Summary

When parsing unknown fields in the Protobuf Java Lite and Full library, a maliciously crafted message can cause a StackOverflow error and lead to a program crash.

Reporter: Alexis Challande, Trail of Bits Ecosystem Security Team ecosystem@trailofbits.com

Affected versions: This issue affects all versions of 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-2024-7254 High CVSS4.0 Score 8.7 (NOTE: there may be a delay in publication) This is a potential Denial of Service. Parsing nested groups as unknown fields with DiscardUnknownFieldsParser or Java Protobuf Lite parser, or against Protobuf map fields, creates unbounded recursions that can be abused by an attacker.

Proof of Concept

For reproduction details, please refer to the unit tests (Protobuf Java LiteTest and CodedInputStreamTest) that identify the specific inputs that exercise this parsing weakness.

Remediation and Mitigation

We have been working diligently to address this issue and have released a mitigation that is available now. Please update to the latest available versions of the following packages:

  • protobuf-java (3.25.5, 4.27.5, 4.28.2)
  • protobuf-javalite (3.25.5, 4.27.5, 4.28.2)
  • protobuf-kotlin (3.25.5, 4.27.5, 4.28.2)
  • protobuf-kotlin-lite (3.25.5, 4.27.5, 4.28.2)
  • com-protobuf [JRuby gem only] (3.25.5, 4.27.5, 4.28.2)

Affected software

Click a technology to see all vulnerabilities affecting it.

PlatformPackageVulnerable versionsFixed in
Java / Kotlin (Maven) com.google.protobuf:protobuf-java < 3.25.5, >= 4.0.0-RC1, < 4.27.5, >= 4.28.0-RC1, < 4.28.2 3.25.5, 4.27.5, 4.28.2
Java / Kotlin (Maven) com.google.protobuf:protobuf-javalite < 3.25.5, >= 4.0.0-RC1, < 4.27.5, >= 4.28.0-RC1, < 4.28.2 3.25.5, 4.27.5, 4.28.2
Java / Kotlin (Maven) com.google.protobuf:protobuf-kotlin < 3.25.5, >= 4.0.0-RC1, < 4.27.5, >= 4.28.0-RC1, < 4.28.2 3.25.5, 4.27.5, 4.28.2
Java / Kotlin (Maven) com.google.protobuf:protobuf-kotlin-lite < 3.25.5, >= 4.0.0-RC1, < 4.27.5, >= 4.28.0-RC1, < 4.28.2 3.25.5, 4.27.5, 4.28.2

References

CVSS score 7.5/10
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weakness (CWE)
CWE-20, CWE-400, CWE-787
Platform
Java / Kotlin (Maven)
Package
com.google.protobuf:protobuf-java, com.google.protobuf:protobuf-javalite, com.google.protobuf:protobuf-kotlin
Disclosed
19.09.2024
Updated
11.10.2026 13:20

Sources and licenses

OSV / GitHub Advisory Database - GHSA-735f-pc8j-v9w8 - CC BY 4.0

Vulnerability history: com.google.protobuf:protobuf-kotlin

All published vulnerabilities of this package (Java / Kotlin (Maven)), newest first. Shows whether this is a one-off slip or a package that needs watching.

Total entries
3
First → latest
01.2022 09.2024
Without a fix
0
Exploited in attacks
0

Severity breakdown

  • High 2
  • Medium 1

Disclosures per year

  1. 2022: 2
  2. 2023: 0
  3. 2024: 1
  4. 2025: 0
  5. 2026: 0
  1. protobuf-java has potential Denial of Service issue this entry
    High · 7.5 CVE-2024-7254 < 3.25.5, >= 4.0.0-RC1, < 4.27.5, >= 4.28.0-RC1, < 4.28.2 3.25.5, 4.27.5, 4.28.2
  2. Medium · 5.7 CVE-2022-3171 >= 3.21.0-rc-1, < 3.21.7, >= 3.20.0-rc-1, < 3.20.3, >= 3.17.0-rc-1, < 3.19.6, < 3.16.3 3.21.7, 3.20.3, 3.19.6, 3.16.3
  3. High · 7.5 CVE-2021-22569 >= 3.18.0, < 3.18.2, >= 3.19.0, < 3.19.2 3.18.2, 3.19.2

Know which vulnerabilities affect your application

With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.

Connect your application
DockRay newsletter

Application security in your inbox

Important vulnerabilities, actionable guidance and practical advice for your applications. Choose your technologies and follow what matters to your project.

  • A daily digest of new vulnerabilities, critical ones included.
  • Notifications about important updates.
  • Practical advice on application security and monitoring.

Leave empty to receive updates for every technology.

Free to subscribe. Unsubscribe with one click in any email.