TensorFlow is an end-to-end open source platform for machine learning. An attacker can cause a denial of service via a FPE runtime error in tf.raw_ops.DenseCountSparseOutput
. This is because the implementation(https://github.com/tensorflow/tensorflow/blob/efff014f3b2d8ef6141da30c806faf141297eca1/tensorflow/core/kernels/count_ops.cc#L123-L127) computes a divisor value from user data but does not check that the result is 0 before doing the division. Since data
is given by the values
argument, num_batch_elements
is 0. The fix will be included in TensorFlow 2.5.0. We will also cherrypick this commit on TensorFlow 2.4.2, and TensorFlow 2.3.3, as these are also affected.
[ { "source": "https://github.com/tensorflow/tensorflow/commit/da5ff2daf618591f64b2b62d9d9803951b945e9f", "signature_version": "v1", "target": { "file": "tensorflow/core/kernels/count_ops.cc" }, "digest": { "threshold": 0.9, "line_hashes": [ "72393913217518281347375068281201240954", "88181845039156400855791946809819040970", "100098651302529629121122028015915145137", "237038861069723650922054167167079494299" ] }, "deprecated": false, "signature_type": "Line", "id": "CVE-2021-29554-d41b253f" } ]