🔍 CVE-2021-37637

7.7
CVSS Score
HIGH
2021-08-12
2026-06-17 04:00
✅ 완료

🇰🇷 한글 설명

TensorFlow의 `tf.raw_ops.CompressElement` 함수에 잘못된 입력을 전달할 경우 Null 포인터 역참조가 발생할 수 있습니다. 이는 버퍼의 유효성을 검증하기 전에 버퍼 크기에 접근하는 구현 결함으로 인해 발생합니다.

💡 쉬운 설명

프로그램이 데이터의 크기를 확인하기도 전에 잘못된 메모리 주소를 읽으려다 발생하는 오류입니다. 이로 인해 프로그램이 갑자기 종료되거나 시스템에 문제를 일으킬 수 있습니다.

🇺🇸 원문 (English)

TensorFlow is an end-to-end open source platform for machine learning. It is possible to trigger a null pointer dereference in TensorFlow by passing an invalid input to `tf.raw_ops.CompressElement`. The [implementation](https://github.com/tensorflow/tensorflow/blob/47a06f40411a69c99f381495f490536972152ac0/tensorflow/core/data/compression_utils.cc#L34) was accessing the size of a buffer obtained from the return of a separate function call before validating that said buffer is valid. We have patched the issue in GitHub commit 5dc7f6981fdaf74c8c5be41f393df705841fb7c5. The fix will be included in TensorFlow 2.6.0. We will also cherrypick this commit on TensorFlow 2.5.1, TensorFlow 2.4.3, and TensorFlow 2.3.4, as these are also affected and still in supported range.

📍 영향받는 시스템

TensorFlow 2.3.4, 2.4.3, 2.5.1 및 2.6.0 미만 버전

⚔️ 공격 벡터

조작된 잘못된 입력값을 `tf.raw_ops.CompressElement` 함수에 전달하여 발생

🛡️ 대응 방법

TensorFlow를 2.6.0 이상 버전으로 업데이트하거나, 지원되는 버전(2.5.1, 2.4.3, 2.3.4)의 최신 패치 버전으로 업데이트하십시오.

🔧 검증 코드

출력된 버전 번호가 취약한 버전 범위(2.6.0 미만)에 해당하는지 확인합니다.

Shell / Script
python3 -c 'import tensorflow as tf; print(tf.__version__)'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H