CVE-2022-29204
Missing validation causes denial of service in TensorFlow via `Conv3DBackpropFilterV2`
Description
TensorFlow is an open source platform for machine learning. Prior to versions 2.9.0, 2.8.1, 2.7.2, and 2.6.4, the implementation of `tf.raw_ops.UnsortedSegmentJoin` does not fully validate the input arguments. This results in a `CHECK`-failure which can be used to trigger a denial of service attack. The code assumes `num_segments` is a positive scalar but there is no validation. Since this value is used to allocate the output tensor, a negative value would result in a `CHECK`-failure (assertion failure), as per TFSA-2021-198. Versions 2.9.0, 2.8.1, 2.7.2, and 2.6.4 contain a patch for this issue.
How to fix CVE-2022-29204
To remediate CVE-2022-29204, upgrade the affected package to a fixed version below.
- —upgrade to 2.6.4 or later
- —upgrade to 2.6.4 or later
- —upgrade to 2.6.4 or later
- —upgrade to 2.6.4 or later
Is CVE-2022-29204 being exploited?
Low — EPSS is 0.1%, meaning exploitation activity has not been observed at scale.
Affected packages (4)
- >= 1.15.0, < 2.6.4, >= 2.7.0, < 2.7.2, >= 2.8.0, < 2.8.1
- from 0, < 2.6.4
- from 0, < 2.6.4
- from 0, < 2.6.4
CVSS scores
| Source | Version | Severity | Vector |
|---|---|---|---|
| osv | CVSS 3.1 | MEDIUM5.5 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
References (11)
- ADVISORYnvd.nist.gov/vuln/detail/CVE-2022-29204
- PATCHgithub.com/tensorflow/tensorflow
- WEBgithub.com/tensorflow/tensorflow/blob/f3b9bf4c3c0597563b289c0512e98d4ce81f886e/tensorflow/core/kernels/unsorted_segment_join_op.cc#L83-L14
- WEBgithub.com/tensorflow/tensorflow/blob/master/tensorflow/security/advisory/tfsa-2021-198.md