Improper Input Validation Affecting tensorflow/tensorflow package, versions [,1.15.4)[2.0.0,2.0.3)[2.1.0,2.1.2)[2.2.0,2.2.1)[2.3.0,2.3.1)


Severity

Recommended
0.0
medium
0
10

CVSS assessment made by Snyk's Security Team. Learn more

Threat Intelligence

Exploit Maturity
Proof of Concept
EPSS
0.17% (55th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications

Snyk Learn

Learn about Improper Input Validation vulnerabilities in an interactive lesson.

Start learning
  • Snyk IDSNYK-UNMANAGED-TENSORFLOWTENSORFLOW-2333496
  • published12 Jan 2022
  • disclosed25 Sept 2020
  • creditUnknown

Introduced: 25 Sep 2020

CVE-2020-15190  (opens in a new tab)
CWE-20  (opens in a new tab)
CWE-476  (opens in a new tab)

How to fix?

Upgrade tensorflow/tensorflow to version 1.15.4, 2.0.3, 2.1.2, 2.2.1, 2.3.1 or higher.

Overview

Affected versions of this package are vulnerable to Improper Input Validation. In Tensorflow before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, the tf.raw_ops.Switch operation takes as input a tensor and a boolean and outputs two tensors. Depending on the boolean value, one of the tensors is exactly the input tensor whereas the other one should be an empty tensor. However, the eager runtime traverses all tensors in the output. Since only one of the tensors is defined, the other one is nullptr, hence we are binding a reference to nullptr. This is undefined behavior and reported as an error if compiling with -fsanitize=null. In this case, this results in a segmentation fault The issue is patched in commit da8558533d925694483d2c136a9220d6d49d843c, and is released in TensorFlow versions 1.15.4, 2.0.3, 2.1.2, 2.2.1, or 2.3.1.

CVSS Scores

version 3.1