GHSA-q8qj-fc9q-cphr

Suggest an improvement
Source
https://github.com/advisories/GHSA-q8qj-fc9q-cphr
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2020/09/GHSA-q8qj-fc9q-cphr/GHSA-q8qj-fc9q-cphr.json
JSON Data
https://api.osv.dev/v1/vulns/GHSA-q8qj-fc9q-cphr
Aliases
Published
2020-09-25T18:28:25Z
Modified
2024-10-28T14:53:41Z
Severity
  • 5.3 (Medium) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L CVSS Calculator
  • 6.9 (Medium) CVSS_V4 - CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N CVSS Calculator
Summary
Undefined behavior in Tensorflow
Details

Impact

If a user passes an invalid argument to dlpack.to_dlpack the expected validations will cause variables to bind to nullptr while setting a status variable to the error condition.

However, this status argument is not properly checked: https://github.com/tensorflow/tensorflow/blob/0e68f4d3295eb0281a517c3662f6698992b7b2cf/tensorflow/c/eager/dlpack.cc#L265-L267

Hence, code following these methods will bind references to null pointers: https://github.com/tensorflow/tensorflow/blob/0e68f4d3295eb0281a517c3662f6698992b7b2cf/tensorflow/c/eager/dlpack.cc#L279-L285

This is undefined behavior and reported as an error if compiling with -fsanitize=null.

Patches

We have patched the issue in 22e07fb204386768e5bcbea563641ea11f96ceb8 and will release a patch release for all affected versions.

We recommend users to upgrade to TensorFlow 2.2.1 or 2.3.1.

For more information

Please consult our security guide for more information regarding the security model and how to contact us with issues and questions.

Attribution

This vulnerability has been discovered during variant analysis of GHSA-rjjg-hgv6-h69v.

Database specific
{
    "nvd_published_at": "2020-09-25T19:15:00Z",
    "cwe_ids": [
        "CWE-20",
        "CWE-252",
        "CWE-476"
    ],
    "severity": "MODERATE",
    "github_reviewed": true,
    "github_reviewed_at": "2020-09-25T17:03:28Z"
}
References

Affected packages

PyPI / tensorflow

Package

Affected ranges

Type
ECOSYSTEM
Events
Introduced
2.2.0
Fixed
2.2.1

Affected versions

2.*

2.2.0

PyPI / tensorflow

Package

Affected ranges

Type
ECOSYSTEM
Events
Introduced
2.3.0
Fixed
2.3.1

Affected versions

2.*

2.3.0

PyPI / tensorflow-cpu

Package

Affected ranges

Type
ECOSYSTEM
Events
Introduced
2.2.0
Fixed
2.2.1

Affected versions

2.*

2.2.0

PyPI / tensorflow-cpu

Package

Affected ranges

Type
ECOSYSTEM
Events
Introduced
2.3.0
Fixed
2.3.1

Affected versions

2.*

2.3.0

PyPI / tensorflow-gpu

Package

Affected ranges

Type
ECOSYSTEM
Events
Introduced
2.2.0
Fixed
2.2.1

Affected versions

2.*

2.2.0

PyPI / tensorflow-gpu

Package

Affected ranges

Type
ECOSYSTEM
Events
Introduced
2.3.0
Fixed
2.3.1

Affected versions

2.*

2.3.0