In affected versions of TensorFlow 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. This is fixed in versions 1.15.5, 2.0.4, 2.1.3, 2.2.2, 2.3.2, and 2.4.0.
In affected versions of TensorFlow 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. This is fixed in versions 1.15.5, 2.0.4, 2.1.3, 2.2.2, 2.3.2, and 2.4.0.
NVD Analysts use publicly available information to associate vector strings and CVSS scores. We also display any CVSS information provided within the CVE List from the CNA.
Note: It is possible that the NVD CVSS may not match that of the CNA. The most common reason for this is that publicly available information does not provide sufficient detail or that information simply was not available at the time the CVSS vector string was assigned.
NVD Analysts use publicly available information to associate vector strings and CVSS scores. We also display any CVSS information provided within the CVE List from the CNA.
Note: NVD Analysts have published a CVSS score for this CVE based on publicly available information at the time of analysis. The CNA has not provided a score within the CVE List.
References to Advisories, Solutions, and Tools
By selecting these links, you will be leaving NIST webspace.
We have provided these links to other web sites because they
may have information that would be of interest to you. No
inferences should be drawn on account of other sites being
referenced, or not, from this page. There may be other web
sites that are more appropriate for your purpose. NIST does
not necessarily endorse the views expressed, or concur with
the facts presented on these sites. Further, NIST does not
endorse any commercial products that may be mentioned on
these sites. Please address comments about this page to nvd@nist.gov.
OR
*cpe:2.3:a:google:tensorflow:*:*:*:*:*:*:*:* versions up to (excluding) 1.15.5
*cpe:2.3:a:google:tensorflow:*:*:*:*:*:*:*:* versions from (including) 2.0.0 up to (excluding) 2.0.4
*cpe:2.3:a:google:tensorflow:*:*:*:*:*:*:*:* versions from (including) 2.1.0 up to (excluding) 2.1.3
*cpe:2.3:a:google:tensorflow:*:*:*:*:*:*:*:* versions from (including) 2.2.0 up to (excluding) 2.2.2
*cpe:2.3:a:google:tensorflow:*:*:*:*:*:*:*:* versions from (including) 2.3.0 up to (exclud
Added
CVSS V2
NIST (AV:L/AC:L/Au:N/C:P/I:N/A:N)
Added
CVSS V3.1
NIST AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
Added
CWE
NIST CWE-125
Added
CWE
NIST CWE-908
Changed
Reference Type
https://github.com/tensorflow/tensorflow/commit/0cc38aaa4064fd9e79101994ce9872c6d91f816b No Types Assigned
https://github.com/tensorflow/tensorflow/commit/0cc38aaa4064fd9e79101994ce9872c6d91f816b Patch, Third Party Advisory
Changed
Reference Type
https://github.com/tensorflow/tensorflow/security/advisories/GHSA-q263-fvxm-m5mw No Types Assigned
https://github.com/tensorflow/tensorflow/security/advisories/GHSA-q263-fvxm-m5mw Exploit, Patch, Third Party Advisory
In affected versions of TensorFlow 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
In affected versions of TensorFlow 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
Quick Info
CVE Dictionary Entry: CVE-2020-26271 NVD
Published Date: 12/10/2020 NVD
Last Modified: 12/14/2020
Source: GitHub, Inc.