The implementation of UnravelIndex is vulnerable to a division by zero caused by an integer overflow bug:
import tensorflow as tf tf.raw_ops.UnravelIndex(indices=-0x100000,dims=[0x100000,0x100000])// patches
We have patched the issue in GitHub commit 58b34c6c8250983948b5a781b426f6aa01fd47af.
The fix will be included in TensorFlow 2.8.0. We will also cherrypick this commit on TensorFlow 2.7.1, TensorFlow 2.6.3, and TensorFlow 2.5.3, as these are also affected and still in supported range.
// for more informationPlease consult our security guide for more information regarding the security model and how to contact us with issues and questions.
// attributionThis vulnerability has been reported by Yu Tian of Qihoo 360 AIVul Team.
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
- Attack vector
- Network
- Attack complexity
- Low
- Privileges required
- Low
- User interaction
- None
- Scope
- Unchanged
- Confidentiality
- None
- Integrity
- None
- Availability
- High