🔍 CVE-2021-37675

5.5
CVSS Score
MEDIUM
2021-08-12
2026-06-17 04:00
✅ 완료

🇰🇷 한글 설명

TensorFlow의 대부분의 합성곱(convolution) 연산 구현에서 0으로 나누기 취약점이 발견되었습니다. 공격자가 이를 악용할 경우 프로그램 충돌을 유발하여 서비스 거부(DoS) 상태를 만들 수 있습니다. 해당 문제는 shape inference 과정에서 나누기 및 나머지 연산 전 유효성 검사가 누락되어 발생합니다.

💡 쉬운 설명

인공지능 계산 도구인 TensorFlow에서 수학적으로 불가능한 '0으로 나누기' 계산이 수행될 수 있는 오류가 발견되었습니다. 공격자가 특수하게 조작된 데이터를 보내면 프로그램이 갑자기 멈추거나 꺼질 수 있습니다.

🇺🇸 원문 (English)

TensorFlow is an end-to-end open source platform for machine learning. In affected versions most implementations of convolution operators in TensorFlow are affected by a division by 0 vulnerability where an attacker can trigger a denial of service via a crash. The shape inference [implementation](https://github.com/tensorflow/tensorflow/blob/460e000de3a83278fb00b61a16d161b1964f15f4/tensorflow/core/framework/common_shape_fns.cc#L577) is missing several validations before doing divisions and modulo operations. We have patched the issue in GitHub commit 8a793b5d7f59e37ac7f3cd0954a750a2fe76bad4. 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.6.0 미만 버전 (2.5.1, 2.4.3, 2.3.4 포함)

⚔️ 공격 벡터

조작된 텐서 모양(shape) 데이터를 입력하여 연산 과정에서 0으로 나누기 오류 유도

🛡️ 대응 방법

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:L/UI:N/S:U/C:N/I:N/A:H

💻 영향받는 소프트웨어

Azure Machine Learning