<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://cve.radiocsirt.org</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Sun, 25 Oct 2026 16:42:32 +0000</lastBuildDate>
    <item>
      <title>CVE-2021-29551 — OOB read in `MatrixTriangularSolve`</title>
      <link>https://cve.radiocsirt.org/vuln/cve-2021-29551</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; tensorflow&lt;/p&gt;
&lt;p&gt;TensorFlow is an end-to-end open source platform for machine learning. The implementation of `MatrixTriangularSolve`(https://github.com/tensorflow/tensorflow/blob/8cae746d8449c7dda5298327353d68613f16e798/tensorflow/core/kernels/linalg/matrix_triangular_solve_op_impl.h#L160-L240) fails to terminate kernel execution if one validation condition fails. 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.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; tensorflow&lt;/p&gt;
&lt;p&gt;TensorFlow is an end-to-end open source platform for machine learning. The implementation of `MatrixTriangularSolve`(https://github.com/tensorflow/tensorflow/blob/8cae746d8449c7dda5298327353d68613f16e798/tensorflow/core/kernels/linalg/matrix_triangular_solve_op_impl.h#L160-L240) fails to terminate kernel execution if one validation condition fails. 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.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/cve-2021-29551</guid>
    </item>
    <item>
      <title>GHSA-vqw6-72r7-fgw7 — OOB read in `MatrixTriangularSolve`</title>
      <link>https://cve.radiocsirt.org/vuln/ghsa-vqw6-72r7-fgw7</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: tensorflow, PyPI: tensorflow-cpu, PyPI: tensorflow-gpu&lt;/p&gt;
&lt;p&gt;### Impact
The implementation of [`MatrixTriangularSolve`](https://github.com/tensorflow/tensorflow/blob/8cae746d8449c7dda5298327353d68613f16e798/tensorflow/core/kernels/linalg/matrix_triangular_solve_op_impl.h#L160-L240) fails to terminate kernel execution if one validation condition fails:&lt;/p&gt;
&lt;p&gt;```cc
void ValidateInputTensors(OpKernelContext* ctx, const Tensor&amp;amp; in0,
                            const Tensor&amp;amp; in1) override {
  OP_REQUIRES(
      ctx, in0.dims() &amp;gt;= 2,
      errors::InvalidArgument(&amp;#34;In[0] ndims must be &amp;gt;= 2: &amp;#34;, in0.dims()));&lt;/p&gt;
&lt;p&gt;OP_REQUIRES(
      ctx, in1.dims() &amp;gt;= 2,
      errors::InvalidArgument(&amp;#34;In[0] ndims must be &amp;gt;= 2: &amp;#34;, in1.dims()));
}
  
void Compute(OpKernelContext* ctx) override {
  const Tensor&amp;amp; in0 = ctx-&amp;gt;input(0);
  const Tensor&amp;amp; in1 = ctx-&amp;gt;input(1);&lt;/p&gt;
&lt;p&gt;ValidateInputTensors(ctx, in0, in1);&lt;/p&gt;
&lt;p&gt;MatMulBCast bcast(in0.shape().dim_sizes(), in1.shape().dim_sizes());
  ...
}
```
  
Since `OP_REQUIRES` only sets `ctx-&amp;gt;status()` to a non-OK value and calls `return`, this allows malicious attackers to trigger an out of bounds read:&lt;/p&gt;
&lt;p&gt;```python
import tensorflow as tf
import numpy as np&lt;/p&gt;
&lt;p&gt;matrix_array = np.array([])
matrix_tensor = tf.convert_to_tensor(np.reshape(matrix_array,(1,0)),dtype=tf.float32)
rhs_array = np.array([])
rhs_tensor = tf.convert_to_tensor(np.reshape(rhs_array,(0,1)),dtype=tf.float32)&lt;/p&gt;
&lt;p&gt;tf.raw_ops.MatrixTriangularSolve(matrix=matrix_tensor,rhs=rhs_tensor,lower=False,adjoint=False)
```&lt;/p&gt;
&lt;p&gt;As the two input tensors are empty, the `OP_REQUIRES` in `Val…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: tensorflow, PyPI: tensorflow-cpu, PyPI: tensorflow-gpu&lt;/p&gt;
&lt;p&gt;### Impact
The implementation of [`MatrixTriangularSolve`](https://github.com/tensorflow/tensorflow/blob/8cae746d8449c7dda5298327353d68613f16e798/tensorflow/core/kernels/linalg/matrix_triangular_solve_op_impl.h#L160-L240) fails to terminate kernel execution if one validation condition fails:&lt;/p&gt;
&lt;p&gt;```cc
void ValidateInputTensors(OpKernelContext* ctx, const Tensor&amp;amp; in0,
                            const Tensor&amp;amp; in1) override {
  OP_REQUIRES(
      ctx, in0.dims() &amp;gt;= 2,
      errors::InvalidArgument(&amp;#34;In[0] ndims must be &amp;gt;= 2: &amp;#34;, in0.dims()));&lt;/p&gt;
&lt;p&gt;OP_REQUIRES(
      ctx, in1.dims() &amp;gt;= 2,
      errors::InvalidArgument(&amp;#34;In[0] ndims must be &amp;gt;= 2: &amp;#34;, in1.dims()));
}
  
void Compute(OpKernelContext* ctx) override {
  const Tensor&amp;amp; in0 = ctx-&amp;gt;input(0);
  const Tensor&amp;amp; in1 = ctx-&amp;gt;input(1);&lt;/p&gt;
&lt;p&gt;ValidateInputTensors(ctx, in0, in1);&lt;/p&gt;
&lt;p&gt;MatMulBCast bcast(in0.shape().dim_sizes(), in1.shape().dim_sizes());
  ...
}
```
  
Since `OP_REQUIRES` only sets `ctx-&amp;gt;status()` to a non-OK value and calls `return`, this allows malicious attackers to trigger an out of bounds read:&lt;/p&gt;
&lt;p&gt;```python
import tensorflow as tf
import numpy as np&lt;/p&gt;
&lt;p&gt;matrix_array = np.array([])
matrix_tensor = tf.convert_to_tensor(np.reshape(matrix_array,(1,0)),dtype=tf.float32)
rhs_array = np.array([])
rhs_tensor = tf.convert_to_tensor(np.reshape(rhs_array,(0,1)),dtype=tf.float32)&lt;/p&gt;
&lt;p&gt;tf.raw_ops.MatrixTriangularSolve(matrix=matrix_tensor,rhs=rhs_tensor,lower=False,adjoint=False)
```&lt;/p&gt;
&lt;p&gt;As the two input tensors are empty, the `OP_REQUIRES` in `Val…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/ghsa-vqw6-72r7-fgw7</guid>
    </item>
  </channel>
</rss>
