Advisory Database
  • Advisories
  • Dependency Scanning
  1. pypi
  2. ›
  3. tensorflow-gpu
  4. ›
  5. CVE-2022-21725

CVE-2022-21725: Division by zero in Tensorflow

February 10, 2022 (updated November 13, 2024)

The estimator for the cost of some convolution operations can be made to execute a division by 0:

import tensorflow as tf

@tf.function
def test():
y=tf.raw_ops.AvgPoolGrad(
orig_input_shape=[1,1,1,1],
grad=[[[[1.0],[1.0],[1.0]]],[[[2.0],[2.0],[2.0]]],[[[3.0],[3.0],[3.0]]]],
ksize=[1,1,1,1],
strides=[1,1,1,0],
padding='VALID',
data_format='NCHW')
return y

test()

The function fails to check that the stride argument is stricly positive:

int64_t GetOutputSize(const int64_t input, const int64_t filter,
const int64_t stride, const Padding& padding) {
// Logic for calculating output shape is from GetWindowedOutputSizeVerbose()
// function in third_party/tensorflow/core/framework/common_shape_fns.cc.
if (padding == Padding::VALID) {
return (input - filter + stride) / stride;
} else {  // SAME.
return (input + stride - 1) / stride;
}
}

Hence, the fix is to add a check for the stride argument to ensure it is valid.

References

  • github.com/advisories/GHSA-v3f7-j968-4h5f
  • github.com/pypa/advisory-database/tree/main/vulns/tensorflow-cpu/PYSEC-2022-49.yaml
  • github.com/pypa/advisory-database/tree/main/vulns/tensorflow-gpu/PYSEC-2022-104.yaml
  • github.com/tensorflow/tensorflow
  • github.com/tensorflow/tensorflow/blob/ffa202a17ab7a4a10182b746d230ea66f021fe16/tensorflow/core/grappler/costs/op_level_cost_estimator.cc
  • github.com/tensorflow/tensorflow/commit/3218043d6d3a019756607643cf65574fbfef5d7a
  • github.com/tensorflow/tensorflow/security/advisories/GHSA-v3f7-j968-4h5f
  • nvd.nist.gov/vuln/detail/CVE-2022-21725

Code Behaviors & Features

Detect and mitigate CVE-2022-21725 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →

Affected versions

All versions before 2.5.3, all versions starting from 2.6.0 before 2.6.3, all versions starting from 2.7.0 before 2.7.1, version 2.7.0

Fixed versions

  • 2.5.3
  • 2.6.3
  • 2.7.1

Solution

Upgrade to versions 2.5.3, 2.6.3, 2.7.1 or above.

Impact 6.5 MEDIUM

CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

Learn more about CVSS

Weakness

  • CWE-369: Divide By Zero

Source file

pypi/tensorflow-gpu/CVE-2022-21725.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Sun, 08 Nov 2026 00:17:12 +0000.