Skip to main content

CVE-2022-3509: n/a in Google ProtocolBuffers

Medium
VulnerabilityCVE-2022-3509cvecve-2022-3509n-acwe-400
Published: Tue Nov 01 2022 (11/01/2022, 18:09:31 UTC)
Source: CVE
Vendor/Project: Google
Product: ProtocolBuffers

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.

AI-Powered Analysis

AILast updated: 06/21/2025, 18:52:36 UTC

Technical Analysis

CVE-2022-3509 is a medium-severity vulnerability affecting Google Protocol Buffers (protobuf-java core and lite versions prior to 3.21.7, 3.20.3, 3.19.6, and 3.16.3). The vulnerability arises from a parsing issue in the textformat component of the protobuf-java library. Specifically, when inputs contain multiple instances of non-repeated embedded messages that include repeated or unknown fields, the protobuf objects undergo repeated conversions between mutable and immutable states. This behavior leads to excessive memory allocation and deallocation, causing prolonged garbage collection (GC) pauses. The consequence is a denial of service (DoS) condition where the application using the affected protobuf version may become unresponsive or significantly degraded in performance due to these GC pauses. This vulnerability is classified under CWE-400, which relates to uncontrolled resource consumption. Exploitation does not require authentication or user interaction but depends on the ability to supply crafted protobuf textformat inputs to the vulnerable system. No known exploits have been reported in the wild to date. The recommended remediation is to upgrade protobuf-java to fixed versions 3.21.7, 3.20.3, 3.19.6, or 3.16.3 or later, which address this parsing inefficiency and prevent the excessive GC pauses. Given protobuf's widespread use in many applications and services for data serialization, this vulnerability could impact any software stack that processes untrusted protobuf textformat inputs using the affected versions.

Potential Impact

For European organizations, the impact of CVE-2022-3509 primarily manifests as a denial of service through resource exhaustion. Systems that rely on vulnerable protobuf-java versions for parsing textformat inputs may experience significant performance degradation or outages when processing maliciously crafted messages. This can disrupt critical services, especially in sectors with high data throughput or real-time processing requirements such as telecommunications, finance, healthcare, and public administration. The vulnerability could be exploited to degrade service availability, potentially affecting customer-facing applications, internal APIs, or inter-service communications. Although the vulnerability does not directly compromise confidentiality or integrity, the resulting service interruptions can lead to operational downtime, loss of productivity, and reputational damage. Additionally, prolonged GC pauses may complicate incident response and system monitoring, delaying detection and mitigation efforts. European organizations with complex microservices architectures or those leveraging protobuf for inter-process communication are particularly at risk if they have not applied the recommended updates.

Mitigation Recommendations

1. Immediate upgrade of protobuf-java libraries to versions 3.21.7, 3.20.3, 3.19.6, or 3.16.3 or later is essential to eliminate the vulnerability. 2. Conduct an inventory of all software components and services using protobuf-java to identify affected versions, including transitive dependencies in build systems. 3. Implement input validation and filtering at network boundaries to detect and block suspicious protobuf textformat payloads containing multiple non-repeated embedded messages with repeated or unknown fields. 4. Employ runtime monitoring and alerting for abnormal GC activity or performance degradation indicative of exploitation attempts. 5. Where feasible, isolate services that process untrusted protobuf inputs in sandboxed or containerized environments to limit the impact of potential DoS attacks. 6. Engage with software vendors and third-party providers to ensure they have patched protobuf dependencies in their products. 7. Incorporate protobuf library updates into regular patch management cycles to prevent lagging behind on critical fixes. 8. Review and test incident response plans to handle potential DoS scenarios caused by protobuf parsing issues.

Need more detailed analysis?Get Pro

Technical Details

Data Version
5.1
Assigner Short Name
Google
Date Reserved
2022-10-14T13:51:45.771Z
Cisa Enriched
true

Threat ID: 682d984ac4522896dcbf71bd

Added to database: 5/21/2025, 9:09:30 AM

Last enriched: 6/21/2025, 6:52:36 PM

Last updated: 8/18/2025, 11:30:39 PM

Views: 21

Actions

PRO

Updates to AI analysis are available only with a Pro account. Contact root@offseq.com for access.

Please log in to the Console to use AI analysis features.

Need enhanced features?

Contact root@offseq.com for Pro access with improved analysis and higher rate limits.

Latest Threats