VYPR
Low severityNVD Advisory· Published May 14, 2021· Updated Aug 3, 2024

Overflow/denial of service in `tf.raw_ops.ReverseSequence`

CVE-2021-29575

Description

TensorFlow is an end-to-end open source platform for machine learning. The implementation of tf.raw_ops.ReverseSequence allows for stack overflow and/or CHECK-fail based denial of service. The implementation(https://github.com/tensorflow/tensorflow/blob/5b3b071975e01f0d250c928b2a8f901cd53b90a7/tensorflow/core/kernels/reverse_sequence_op.cc#L114-L118) fails to validate that seq_dim and batch_dim arguments are valid. Negative values for seq_dim can result in stack overflow or CHECK-failure, depending on the version of Eigen code used to implement the operation. Similar behavior can be exhibited by invalid values of batch_dim. 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.

Affected packages

Versions sourced from the GitHub Security Advisory.

PackageAffected versionsPatched versions
tensorflowPyPI
< 2.1.42.1.4
tensorflowPyPI
>= 2.2.0, < 2.2.32.2.3
tensorflowPyPI
>= 2.3.0, < 2.3.32.3.3
tensorflowPyPI
>= 2.4.0, < 2.4.22.4.2
tensorflow-cpuPyPI
< 2.1.42.1.4
tensorflow-cpuPyPI
>= 2.2.0, < 2.2.32.2.3
tensorflow-cpuPyPI
>= 2.3.0, < 2.3.32.3.3
tensorflow-cpuPyPI
>= 2.4.0, < 2.4.22.4.2
tensorflow-gpuPyPI
< 2.1.42.1.4
tensorflow-gpuPyPI
>= 2.2.0, < 2.2.32.2.3
tensorflow-gpuPyPI
>= 2.3.0, < 2.3.32.3.3
tensorflow-gpuPyPI
>= 2.4.0, < 2.4.22.4.2

Affected products

1

Patches

1
ecf768cbe50c

Add missing validations to reverse_sequence_op

https://github.com/tensorflow/tensorflowMihai MaruseacMay 5, 2021via ghsa
1 file changed · +4 0
  • tensorflow/core/kernels/reverse_sequence_op.cc+4 0 modified
    @@ -115,6 +115,10 @@ class ReverseSequenceOp : public OpKernel {
           : OpKernel(context) {
         OP_REQUIRES_OK(context, context->GetAttr("batch_dim", &batch_dim_));
         OP_REQUIRES_OK(context, context->GetAttr("seq_dim", &seq_dim_));
    +    OP_REQUIRES(context, batch_dim_ >= 0,
    +                errors::InvalidArgument("Invalid batch_dim ", batch_dim_));
    +    OP_REQUIRES(context, seq_dim_ >= 0,
    +                errors::InvalidArgument("Invalid seq_dim ", seq_dim_));
       }
     
       void Compute(OpKernelContext* context) override {
    

Vulnerability mechanics

Generated by null/stub on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

7

News mentions

0

No linked articles in our index yet.