WaratekVRT Sign in

CVE-2022-3509 protobuf-java

Affected softwareprotobuf-java
Severity7.5 High CVSS 3.1 2 scores
Fixed in3.16.3, 3.19.6, 3.20.3, 3.21.7
WeaknessUncontrolled resource consumption (CWE-400)
Published12 Dec 2022
Updated17 Jun 2026

Description

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.

Exploitation status

No public exploit

No exploit has been reported in the sources we check. The 1 repository below are public GitHub repositories with fewer than 5 stars.

  • CISA KEV not listed
  • VulnCheck KEV not listed
  • CISA Vulnrichment exploitation: none
  • Indexed PoC 1 indexed, none at 5+ stars
  • EPSS 0.97% chance in 30 days

1 of these are GitHub repositories with fewer than 5 stars. They are listed for reference and don't count toward the exploitation status above.

IndexArtifactStarsFirst seen
GitHub PoC Details of CVE-2022-3509 vulnerability 2026-10-20

Waratek protection

No exploit published

Within Waratek scope. In the sources we check, nobody has published exploit code for this CVE or reported it being exploited.

A public code fix exists: protocolbuffers/protobuf a3888f5.

  • Protection none
  • Action unverified
  • Review automated Upstream data
  • Record active
Decided by Exploit code for this candidate, published in a reviewed catalogue or a GitHub repository with 5 or more stars, or in use per CISA or VulnCheck; not only a CISA verdict, a forecast, or nothing at all
Finding This CVE is not listed in CISA KEV or VulnCheck KEV, CISA Vulnrichment records no active exploitation, no reviewed exploit catalogue carries an entry for it, and no GitHub PoC repository for it has 5 or more stars. Nobody has published exploit code worth tracing, so it is not a candidate for a rule ahead of the ones where somebody has; an upstream fix path does exist, so the remediation half of the candidacy still holds. This is a statement about what has been published, not about whether the defect is reachable or serious.
Candidate fix https://github.com/protocolbuffers/protobuf/commit/a3888f53317a8018e7a439bac4abeb8f3425d5e9 : a commit: the change itself

CVSS

7.5 HIGH v3.1 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H 2 metrics

We show the highest score from the newest CVSS version. Scores from different versions can't be compared, and the first score listed is sometimes a 0.0 placeholder.

VersionScoreBandVectorAssignerType
CVSS 3.1 7.5 HIGH CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H cve-coordination@google.com Secondary published
CVSS 3.1 7.5 HIGH CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H NVD Primary

Affected software and releases

Maven packages

Affected and fixed versions, from OSV.dev
PackageIntroducedFixedLast affected
com.google.protobuf:protobuf-java 3.0.0 3.16.3 unbounded
com.google.protobuf:protobuf-java 3.17.0 3.19.6 unbounded
com.google.protobuf:protobuf-java 3.20.0 3.20.3 unbounded
com.google.protobuf:protobuf-java 3.21.0 3.21.7 unbounded
com.google.protobuf:protobuf-javalite 3.20.0 3.20.3 unbounded
com.google.protobuf:protobuf-javalite 3.21.0 3.21.7 unbounded
com.google.protobuf:protobuf-javalite 3.0.0 3.16.3 unbounded

Products and versions

4 products, 15 version entries
SourceVendorProductSchemeAffected versions
osv com.google.protobuf protobuf-java generic ≥ 3.0.0 and < 3.16.3 · ≥ 3.17.0 and < 3.19.6 · ≥ 3.20.0 and < 3.20.3 · ≥ 3.21.0 and < 3.21.7
osv com.google.protobuf protobuf-javalite generic ≥ 3.0.0 and < 3.16.3 · ≥ 3.20.0 and < 3.20.3 · ≥ 3.21.0 and < 3.21.7
nvd google protobuf-java generic ≥ 3.16.0 and < 3.16.3 · ≥ 3.19.0 and < 3.19.6 · ≥ 3.20.0 and < 3.20.3 · ≥ 3.21.0 and < 3.21.7
nvd google protobuf-javalite generic ≥ 3.16.0 and < 3.16.3 · ≥ 3.17.0 and < 3.19.6 · ≥ 3.20.0 and < 3.20.3 · ≥ 3.21.0 and < 3.21.7

References

URLTags
https://github.com/protocolbuffers/protobuf/commit/a3888f53317a8018e7a439bac4abeb8f3425d5e9 commit
https://github.com/protocolbuffers/protobuf/blob/v2.6.1/java/core/src/main/java/com/google/protobuf/MessageReflection.java WEB
https://github.com/protocolbuffers/protobuf/blob/v3.0.0/java/core/src/main/java/com/google/protobuf/MessageReflection.java WEB
https://github.com/protocolbuffers/protobuf/tree/main/java PACKAGE

Timeline

Published2022-12-12By the CVE Program.
NVD record modified2026-06-17NVD's own last-modified date for this record.