Skip to content

Commit 0f84a0f

Browse files
Add advisory for CVE-2022-23591
PiperOrigin-RevId: 426007630 Change-Id: I3bdb06c721fbf8cdf3a22d1fad8661b7716a2611
1 parent 1bdea4a commit 0f84a0f

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
## TFSA-2022-054: Stack overflow due to self-recursive function in `GraphDef`
2+
3+
### CVE Number
4+
CVE-2022-23591
5+
6+
### Impact
7+
The `GraphDef` format in TensorFlow does not allow self recursive functions. The runtime assumes that this invariant is satisfied. However, a `GraphDef` containing a fragment such as the following can be consumed when loading a `SavedModel`:
8+
9+
```
10+
library {
11+
function {
12+
signature {
13+
name: "SomeOp"
14+
description: "Self recursive op"
15+
}
16+
node_def {
17+
name: "1"
18+
op: "SomeOp"
19+
}
20+
node_def {
21+
name: "2"
22+
op: "SomeOp"
23+
}
24+
}
25+
}
26+
```
27+
28+
This would result in a stack overflow during execution as resolving each `NodeDef` means resolving the function itself and its nodes.
29+
30+
### Patches
31+
We have patched the issue in GitHub commit [448a16182065bd08a202d9057dd8ca541e67996c](https://github.com/tensorflow/tensorflow/commit/448a16182065bd08a202d9057dd8ca541e67996c).
32+
33+
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.
34+
35+
### For more information
36+
Please consult [our security guide](https://github.com/tensorflow/tensorflow/blob/master/SECURITY.md) for more information regarding the security model and how to contact us with issues and questions.

0 commit comments

Comments
 (0)