Lucene search

K
cveGoogleCVE-2024-7254
HistorySep 19, 2024 - 1:15 a.m.

CVE-2024-7254

2024-09-1901:15:10
CWE-20
Google
web.nvd.nist.gov
14
protocol buffers
stackoverflow
nested groups
discardunknownfieldsparser
java protobuf lite parser
protobuf map fields
untrusted data
cve-2024-7254

CVSS4

8.7

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

NONE

CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/SC:N/VI:N/SI:N/VA:H/SA:N

AI Score

6.8

Confidence

High

EPSS

0

Percentile

9.6%

Any project that parses untrusted Protocol Buffers dataย containing an arbitrary number of nested groups / series of SGROUPย tags can corrupted by exceeding the stack limit i.e. StackOverflow. 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.

Affected configurations

Vulners
Vulnrichment
Node
googleprotocol_buffersRangeโ‰ค28.2
OR
googleprotobuf-javaRangeโ‰ค3.25.5
OR
googleprotobuf-javaRangeโ‰ค4.27.5
OR
googleprotobuf-javaRangeโ‰ค4.28.2
OR
googleprotobuf-javaliteRangeโ‰ค3.25.5
OR
googleprotobuf-javaliteRangeโ‰ค4.27.5
OR
googleprotobuf-javaliteRangeโ‰ค4.28.2
OR
googleprotobuf-kotlinRangeโ‰ค3.25.5
OR
googleprotobuf-kotlinRangeโ‰ค4.27.5
OR
googleprotobuf-kotlinRangeโ‰ค4.28.2
OR
googleprotobuf-kotlin-liteRangeโ‰ค3.25.5
OR
googleprotobuf-kotlin-liteRangeโ‰ค4.27.5
OR
googleprotobuf-kotlin-liteRangeโ‰ค4.28.2
OR
googleprotobufRangeโ‰ค3.25.5
OR
googleprotobufRangeโ‰ค4.27.5
OR
googleprotobufRangeโ‰ค4.28.2
VendorProductVersionCPE
googleprotocol_buffers*cpe:2.3:a:google:protocol_buffers:*:*:*:*:*:*:*:*
googleprotobuf-java*cpe:2.3:a:google:protobuf-java:*:*:*:*:*:*:*:*
googleprotobuf-javalite*cpe:2.3:a:google:protobuf-javalite:*:*:*:*:*:*:*:*
googleprotobuf-kotlin*cpe:2.3:a:google:protobuf-kotlin:*:*:*:*:*:*:*:*
googleprotobuf-kotlin-lite*cpe:2.3:a:google:protobuf-kotlin-lite:*:*:*:*:*:*:*:*
googleprotobuf*cpe:2.3:a:google:protobuf:*:*:*:*:*:*:*:*

CNA Affected

[
  {
    "defaultStatus": "unaffected",
    "product": "Protocol Buffers",
    "repo": "https://github.com/protocolbuffers/protobuf",
    "vendor": "Google",
    "versions": [
      {
        "lessThan": "28.2",
        "status": "affected",
        "version": "0",
        "versionType": "custom"
      }
    ]
  },
  {
    "collectionURL": "https://mvnrepository.com/artifact/com.google.protobuf/protobuf-java",
    "defaultStatus": "unaffected",
    "product": "protobuf-java",
    "vendor": "Google",
    "versions": [
      {
        "lessThan": "3.25.5",
        "status": "affected",
        "version": "0",
        "versionType": "custom"
      },
      {
        "lessThan": "4.27.5",
        "status": "affected",
        "version": "0",
        "versionType": "custom"
      },
      {
        "lessThan": "4.28.2",
        "status": "affected",
        "version": "0",
        "versionType": "custom"
      }
    ]
  },
  {
    "defaultStatus": "unaffected",
    "product": "protobuf-javalite",
    "vendor": "Google",
    "versions": [
      {
        "lessThan": "3.25.5",
        "status": "affected",
        "version": "0",
        "versionType": "custom"
      },
      {
        "lessThan": "4.27.5",
        "status": "affected",
        "version": "0",
        "versionType": "custom"
      },
      {
        "lessThan": "4.28.2",
        "status": "affected",
        "version": "0",
        "versionType": "custom"
      }
    ]
  },
  {
    "defaultStatus": "unaffected",
    "product": "protobuf-kotlin",
    "vendor": "Google",
    "versions": [
      {
        "lessThan": "3.25.5",
        "status": "affected",
        "version": "0",
        "versionType": "custom"
      },
      {
        "lessThan": "4.27.5",
        "status": "affected",
        "version": "0",
        "versionType": "custom"
      },
      {
        "lessThan": "4.28.2",
        "status": "affected",
        "version": "0",
        "versionType": "custom"
      }
    ]
  },
  {
    "defaultStatus": "unaffected",
    "product": "protobuf-kotllin-lite",
    "vendor": "Google",
    "versions": [
      {
        "lessThan": "3.25.5",
        "status": "affected",
        "version": "0",
        "versionType": "custom"
      },
      {
        "lessThan": "4.27.5",
        "status": "affected",
        "version": "0",
        "versionType": "custom"
      },
      {
        "lessThan": "4.28.2",
        "status": "affected",
        "version": "0",
        "versionType": "custom"
      }
    ]
  },
  {
    "collectionURL": "https://rubygems.org/gems/google-protobuf",
    "defaultStatus": "unaffected",
    "product": "google-protobuf [JRuby Gem]",
    "vendor": "Google",
    "versions": [
      {
        "lessThan": "3.25.5",
        "status": "affected",
        "version": "0",
        "versionType": "custom"
      },
      {
        "lessThan": "4.27.5",
        "status": "affected",
        "version": "0",
        "versionType": "custom"
      },
      {
        "lessThan": "4.28.2",
        "status": "affected",
        "version": "0",
        "versionType": "custom"
      }
    ]
  }
]

CVSS4

8.7

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

NONE

CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/SC:N/VI:N/SI:N/VA:H/SA:N

AI Score

6.8

Confidence

High

EPSS

0

Percentile

9.6%