Skip to main content

CVE-2022-36018: CWE-617: Reachable Assertion in tensorflow tensorflow

Medium
Published: Fri Sep 16 2022 (09/16/2022, 22:05:15 UTC)
Source: CVE
Vendor/Project: tensorflow
Product: tensorflow

Description

TensorFlow is an open source platform for machine learning. If `RaggedTensorToVariant` is given a `rt_nested_splits` list that contains tensors of ranks other than one, it results in a `CHECK` fail that can be used to trigger a denial of service attack. We have patched the issue in GitHub commit 88f93dfe691563baa4ae1e80ccde2d5c7a143821. The fix will be included in TensorFlow 2.10.0. We will also cherrypick this commit on TensorFlow 2.9.1, TensorFlow 2.8.1, and TensorFlow 2.7.2, as these are also affected and still in supported range. There are no known workarounds for this issue.

AI-Powered Analysis

AILast updated: 06/22/2025, 17:21:15 UTC

Technical Analysis

CVE-2022-36018 is a medium-severity vulnerability affecting TensorFlow, an open-source machine learning platform widely used for developing and deploying machine learning models. The vulnerability arises from a reachable assertion failure (CWE-617) in the function RaggedTensorToVariant. Specifically, if the input parameter `rt_nested_splits` contains tensors with ranks other than one, the system triggers a CHECK failure, causing the TensorFlow process to crash. This behavior can be exploited by an attacker to cause a denial of service (DoS) condition by providing malformed input data to the affected TensorFlow versions. The affected versions include all releases prior to 2.7.2, versions 2.8.0 up to but not including 2.8.1, and versions 2.9.0 up to but not including 2.9.1. The issue was patched in commit 88f93dfe691563baa4ae1e80ccde2d5c7a143821 and incorporated into TensorFlow 2.10.0, with backports to 2.7.2, 2.8.1, and 2.9.1. There are currently no known workarounds, and no exploits have been observed in the wild. The vulnerability does not require authentication or user interaction but does require the attacker to supply crafted input to the TensorFlow API or system using the vulnerable function. The impact is limited to denial of service through process termination, with no indication of code execution or data corruption. This vulnerability is primarily a stability and availability concern for systems running affected TensorFlow versions, especially those exposed to untrusted input data streams or APIs that process machine learning data dynamically.

Potential Impact

For European organizations, the primary impact of CVE-2022-36018 is the potential disruption of machine learning services and applications that rely on vulnerable TensorFlow versions. Organizations in sectors such as finance, healthcare, automotive, and telecommunications that deploy TensorFlow models for critical analytics, predictive maintenance, or real-time decision-making could experience service outages or degraded performance due to unexpected crashes. This could lead to operational downtime, loss of productivity, and potential reputational damage. Since the vulnerability results in denial of service rather than data compromise, the confidentiality and integrity of data are not directly threatened. However, availability interruptions in critical systems can have cascading effects, especially in regulated industries or where machine learning models are part of safety-critical systems. Additionally, organizations that provide machine learning services or platforms to customers may face customer dissatisfaction or contractual penalties if service availability is impacted. The lack of known exploits reduces immediate risk, but the absence of workarounds means that patching is the only effective mitigation. Organizations with automated or continuous integration pipelines that incorporate TensorFlow should prioritize updating to patched versions to maintain service reliability.

Mitigation Recommendations

1. Immediate upgrade: Organizations should upgrade all TensorFlow deployments to version 2.10.0 or later, or apply the backported patches available in versions 2.7.2, 2.8.1, and 2.9.1. This is the only effective mitigation as no workarounds exist. 2. Input validation: Implement strict validation and sanitization of input data fed into TensorFlow APIs, especially for any user-supplied or external data that could influence the `rt_nested_splits` parameter. Reject or sanitize inputs that do not conform to expected tensor rank constraints. 3. Isolation and sandboxing: Run TensorFlow workloads in isolated environments or containers with resource limits and process monitoring to contain potential crashes and prevent cascading failures in larger systems. 4. Monitoring and alerting: Deploy monitoring solutions to detect unexpected TensorFlow process terminations or service outages, enabling rapid incident response. 5. Review CI/CD pipelines: Ensure that machine learning model training and deployment pipelines incorporate updated TensorFlow versions and include automated vulnerability scanning for dependencies. 6. Vendor coordination: For organizations using third-party machine learning platforms or managed services, verify that providers have applied patches or mitigations for this vulnerability. 7. Documentation and training: Educate development and operations teams about the vulnerability and the importance of timely patching and input validation to prevent denial of service scenarios.

Need more detailed analysis?Get Pro

Technical Details

Data Version
5.1
Assigner Short Name
GitHub_M
Date Reserved
2022-07-15T00:00:00.000Z
Cisa Enriched
true

Threat ID: 682d9845c4522896dcbf4396

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

Last enriched: 6/22/2025, 5:21:15 PM

Last updated: 8/15/2025, 11:01:15 AM

Views: 12

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