Multiple vulnerabilities in TensorFlow



Published: 2021-01-07
Risk High
Patch available YES
Number of vulnerabilities 9
CVE-ID CVE-2020-26266
CVE-2020-26267
CVE-2020-26268
CVE-2020-26270
CVE-2020-26271
CVE-2020-13790
CVE-2020-15250
CVE-2019-20838
CVE-2020-14155
CWE-ID CWE-908
CWE-125
CWE-399
CWE-20
CWE-377
CWE-190
Exploitation vector Network
Public exploit N/A
Vulnerable software
Subscribe
TensorFlow
Server applications / Other server solutions

Vendor TensorFlow

Security Bulletin

This security bulletin contains information about 9 vulnerabilities.

1) Use of uninitialized resource

EUVDB-ID: #VU49324

Risk: Low

CVSSv3.1: 3.4 [CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N/E:U/RL:O/RC:C]

CVE-ID: CVE-2020-26266

CWE-ID: CWE-908 - Use of Uninitialized Resource

Exploit availability: No

Description

The vulnerability allows a local user to bypass certain security restrictions.

The vulnerability exists due to usage of uninitialized resources in Eigen. Under certain cases a saved model can trigger use of uninitialized values during code execution. This is caused by having tensor buffers be filled with the default value of the type but forgetting to default initialize the quantized floating point types in Eigen.

Mitigation

Install updates from vendor's website.

Vulnerable software versions

TensorFlow: 1.0.0 - 2.3.1

External links

http://github.com/tensorflow/tensorflow/releases/tag/v2.3.2
http://github.com/tensorflow/tensorflow/releases/tag/v2.2.2
http://github.com/tensorflow/tensorflow/releases/tag/v2.1.3
http://github.com/tensorflow/tensorflow/releases/tag/v2.0.4
http://github.com/tensorflow/tensorflow/releases/tag/v1.15.5


Q & A

Can this vulnerability be exploited remotely?

No. This vulnerability can be exploited locally. The attacker should have authentication credentials and successfully authenticate on the system.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.

2) Out-of-bounds read

EUVDB-ID: #VU49325

Risk: Low

CVSSv3.1: 2.2 [CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N/E:U/RL:O/RC:C]

CVE-ID: CVE-2020-26267

CWE-ID: CWE-125 - Out-of-bounds read

Exploit availability: No

Description

The vulnerability allows a local user to gain access to potentially sensitive information.

The vulnerability exists due to a boundary condition within the the tf.raw_ops.DataFormatVecPermute API when processing the src_format and dst_format attributes. The code assumes that these two arguments define a permutation of NHWC. A local user can run a specially crafted program to trigger out-of-bounds read error and read contents of memory on the system.

Mitigation

Install updates from vendor's website.

Vulnerable software versions

TensorFlow: 1.0.0 - 2.3.1

External links

http://github.com/tensorflow/tensorflow/releases/tag/v2.3.2
http://github.com/tensorflow/tensorflow/releases/tag/v2.2.2
http://github.com/tensorflow/tensorflow/releases/tag/v2.1.3
http://github.com/tensorflow/tensorflow/releases/tag/v2.0.4
http://github.com/tensorflow/tensorflow/releases/tag/v1.15.5


Q & A

Can this vulnerability be exploited remotely?

No. This vulnerability can be exploited locally. The attacker should have authentication credentials and successfully authenticate on the system.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.

3) Resource management error

EUVDB-ID: #VU49327

Risk: Low

CVSSv3.1: 4.8 [CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H/E:U/RL:O/RC:C]

CVE-ID: CVE-2020-26268

CWE-ID: CWE-399 - Resource Management Errors

Exploit availability: No

Description

The vulnerability allows a local user to perform a denial of service (DoS) attack.

The vulnerability exists due to improper management of internal resources within the application. The tf.raw_ops.ImmutableConst operation returns a constant tensor created from a memory mapped file which is assumed immutable. However, if the type of the tensor is not an integral type, the operation crashes the Python interpreter as it tries to write to the memory area. If the file is too small, TensorFlow properly returns an error as the memory area has fewer bytes than what is needed for the tensor it creates. However, as soon as there are enough bytes, the above snippet causes a segmentation fault.

Mitigation

Install updates from vendor's website.

Vulnerable software versions

TensorFlow: 1.0.0 - 2.3.1

External links

http://github.com/tensorflow/tensorflow/releases/tag/v2.3.2
http://github.com/tensorflow/tensorflow/releases/tag/v2.2.2
http://github.com/tensorflow/tensorflow/releases/tag/v2.1.3
http://github.com/tensorflow/tensorflow/releases/tag/v2.0.4
http://github.com/tensorflow/tensorflow/releases/tag/v1.15.5


Q & A

Can this vulnerability be exploited remotely?

No. This vulnerability can be exploited locally. The attacker should have authentication credentials and successfully authenticate on the system.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.

4) Input validation error

EUVDB-ID: #VU49328

Risk: Low

CVSSv3.1: 4.8 [CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H/E:U/RL:O/RC:C]

CVE-ID: CVE-2020-26270

CWE-ID: CWE-20 - Improper input validation

Exploit availability: No

Description

The vulnerability allows a local user to perform a denial of service (DoS) attack.

The vulnerability exists due to insufficient validation when processing an input with zero-length within the the LSTM/GRU layer. A local user can pass specially crafted input to the application and perform a denial of service (DoS) attack.

The vulnerability affects TensorFlow running an LSTM/GRU model.

Mitigation

Install updates from vendor's website.

Vulnerable software versions

TensorFlow: 1.0.0 - 2.3.1

External links

http://github.com/tensorflow/tensorflow/releases/tag/v2.3.2
http://github.com/tensorflow/tensorflow/releases/tag/v2.2.2
http://github.com/tensorflow/tensorflow/releases/tag/v2.1.3
http://github.com/tensorflow/tensorflow/releases/tag/v2.0.4
http://github.com/tensorflow/tensorflow/releases/tag/v1.15.5


Q & A

Can this vulnerability be exploited remotely?

No. This vulnerability can be exploited locally. The attacker should have authentication credentials and successfully authenticate on the system.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.

5) Use of uninitialized resource

EUVDB-ID: #VU49329

Risk: Low

CVSSv3.1: 2.9 [CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N/E:U/RL:O/RC:C]

CVE-ID: CVE-2020-26271

CWE-ID: CWE-908 - Use of Uninitialized Resource

Exploit availability: No

Description

The vulnerability allows a local user to gain access to sensitive information.

The vulnerability exists due to usage of uninitialized resources. Under certain cases, loading a saved model can result in accessing uninitialized memory while building the computation graph. The MakeEdge function creates an edge between one output tensor of the src node (given by output_index) and the input slot of the dst node (given by input_index). This is only possible if the types of the tensors on both sides coincide, so the function begins by obtaining the corresponding DataType values and comparing these for equality. However, there is no check that the indices point to inside of the arrays they index into. Thus, this can result in accessing data out of bounds of the corresponding heap allocated arrays. In most scenarios, this can manifest as unitialized data access, but if the index points far away from the boundaries of the arrays this can be used to leak addresses from the library.

Mitigation

Install updates from vendor's website.

Vulnerable software versions

TensorFlow: 1.0.0 - 2.3.1

External links

http://github.com/tensorflow/tensorflow/releases/tag/v2.3.2
http://github.com/tensorflow/tensorflow/releases/tag/v2.2.2
http://github.com/tensorflow/tensorflow/releases/tag/v2.1.3
http://github.com/tensorflow/tensorflow/releases/tag/v2.0.4
http://github.com/tensorflow/tensorflow/releases/tag/v1.15.5


Q & A

Can this vulnerability be exploited remotely?

No. This vulnerability can be exploited locally. The attacker should have authentication credentials and successfully authenticate on the system.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.

6) Out-of-bounds read

EUVDB-ID: #VU28930

Risk: Medium

CVSSv3.1: 5.7 [CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H/E:U/RL:O/RC:C]

CVE-ID: CVE-2020-13790

CWE-ID: CWE-125 - Out-of-bounds read

Exploit availability: No

Description

The vulnerability allows a remote attacker to perform a denial of service (DoS) attack.

The vulnerability exists due to heap-based buffer over-read in get_rgb_row() in rdppm.c via a malformed PPM input file. A remote attacker can perform a denial of service attack.

Mitigation

Install updates from vendor's website.

Vulnerable software versions

TensorFlow: 1.0.0 - 2.3.1

External links

http://github.com/tensorflow/tensorflow/releases/tag/v2.3.2
http://github.com/tensorflow/tensorflow/releases/tag/v2.2.2
http://github.com/tensorflow/tensorflow/releases/tag/v2.1.3
http://github.com/tensorflow/tensorflow/releases/tag/v2.0.4
http://github.com/tensorflow/tensorflow/releases/tag/v1.15.5


Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote non-authenticated attacker via the Internet.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.

7) Insecure Temporary File

EUVDB-ID: #VU49330

Risk: Low

CVSSv3.1: 2.9 [CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N/E:U/RL:O/RC:C]

CVE-ID: CVE-2020-15250

CWE-ID: CWE-377 - Insecure Temporary File

Exploit availability: No

Description

The vulnerability allows a local user to gain access to sensitive information.

The vulnerability exists due to the application is using the test rule TemporaryFolder that stores sensitive information in temporary files in the system temporary directory, accessible by other system users. A local user can read temporary files and obtain sensitive information, related to the application.

Mitigation

Install updates from vendor's website.

Vulnerable software versions

TensorFlow: 1.0.0 - 2.3.1

External links

http://github.com/tensorflow/tensorflow/releases/tag/v2.3.2
http://github.com/tensorflow/tensorflow/releases/tag/v2.2.2
http://github.com/tensorflow/tensorflow/releases/tag/v2.1.3
http://github.com/tensorflow/tensorflow/releases/tag/v2.0.4
http://github.com/tensorflow/tensorflow/releases/tag/v1.15.5


Q & A

Can this vulnerability be exploited remotely?

No. This vulnerability can be exploited locally. The attacker should have authentication credentials and successfully authenticate on the system.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.

8) Out-of-bounds read

EUVDB-ID: #VU30256

Risk: Medium

CVSSv3.1: 6.5 [CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H/E:U/RL:O/RC:C]

CVE-ID: CVE-2019-20838

CWE-ID: CWE-125 - Out-of-bounds read

Exploit availability: No

Description

The vulnerability allows a remote non-authenticated attacker to perform a denial of service (DoS) attack.

libpcre in PCRE before 8.43 allows a subject buffer over-read in JIT when UTF is disabled, and X or R has more than one fixed quantifier, a related issue to CVE-2019-20454.

Mitigation

Install updates from vendor's website.

Vulnerable software versions

TensorFlow: 1.0.0 - 2.3.1

External links

http://github.com/tensorflow/tensorflow/releases/tag/v2.3.2
http://github.com/tensorflow/tensorflow/releases/tag/v2.2.2
http://github.com/tensorflow/tensorflow/releases/tag/v2.1.3
http://github.com/tensorflow/tensorflow/releases/tag/v2.0.4
http://github.com/tensorflow/tensorflow/releases/tag/v1.15.5


Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote non-authenticated attacker via the Internet.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.

9) Integer overflow

EUVDB-ID: #VU29488

Risk: High

CVSSv3.1: 7.1 [CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H/E:U/RL:O/RC:C]

CVE-ID: CVE-2020-14155

CWE-ID: CWE-190 - Integer overflow

Exploit availability: No

Description

The vulnerability allows a remote attacker to execute arbitrary code on the target system.

The vulnerability exists due to integer overflow. A remote attacker can pass a large number after a (?C substring, trigger integer overflow and execute arbitrary code on the target system.

Successful exploitation of this vulnerability may result in complete compromise of vulnerable system.

Mitigation

Install updates from vendor's website.

Vulnerable software versions

TensorFlow: 1.0.0 - 2.3.1

External links

http://github.com/tensorflow/tensorflow/releases/tag/v2.3.2
http://github.com/tensorflow/tensorflow/releases/tag/v2.2.2
http://github.com/tensorflow/tensorflow/releases/tag/v2.1.3
http://github.com/tensorflow/tensorflow/releases/tag/v2.0.4
http://github.com/tensorflow/tensorflow/releases/tag/v1.15.5


Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote non-authenticated attacker via the Internet.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.



###SIDEBAR###