Heap buffer overflow in `RaggedTensorToTensor`
Package
Affected versions
< 2.1.4
      >= 2.2.0, < 2.2.3
      >= 2.3.0, < 2.3.3
      >= 2.4.0, < 2.4.2
  Patched versions
2.1.4
      2.2.3
      2.3.3
      2.4.2
  < 2.1.4
      >= 2.2.0, < 2.2.3
      >= 2.3.0, < 2.3.3
      >= 2.4.0, < 2.4.2
  2.1.4
      2.2.3
      2.3.3
      2.4.2
  < 2.1.4
      >= 2.2.0, < 2.2.3
      >= 2.3.0, < 2.3.3
      >= 2.4.0, < 2.4.2
  2.1.4
      2.2.3
      2.3.3
      2.4.2
  Description
        Published by the National Vulnerability Database
      May 14, 2021 
    
  
        Reviewed
      May 18, 2021 
    
  
        Published to the GitHub Advisory Database
      May 21, 2021 
    
  
        Last updated
      Nov 1, 2024 
    
  
Impact
An attacker can cause a heap buffer overflow in
tf.raw_ops.RaggedTensorToTensor:This is because the implementation uses the same index to access two arrays in parallel:
Since the user controls the shape of the input arguments, an attacker could trigger a heap OOB access when
parent_output_indexis shorter thanrow_split.Patches
We have patched the issue in GitHub commit a84358aa12f0b1518e606095ab9cfddbf597c121.
The fix will be included in TensorFlow 2.5.0. We will also cherrypick this commit on TensorFlow 2.4.2, TensorFlow 2.3.3, TensorFlow 2.2.3 and TensorFlow 2.1.4, as these are also affected and still in supported range.
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 reported by Ying Wang and Yakun Zhang of Baidu X-Team.
References