🇰🇷 한글 설명
TensorFlow의 SparseReshape 함수에서 입력 인자에 대한 검증이 불완전하여 발생하는 취약점입니다. 잘못된 희소 텐서(sparse tensor) 인자가 전달될 경우 CHECK 실패로 인해 서비스 거부(DoS) 상태가 발생할 수 있습니다.
💡 쉬운 설명
머신러닝 도구인 TensorFlow에서 데이터 형식을 바꾸는 과정 중 오류 검사가 제대로 되지 않는 문제입니다. 공격자가 특수하게 조작된 데이터를 보내면 프로그램이 갑자기 멈춰버릴 수 있습니다.
🇺🇸 원문 (English)
TensorFlow is an end-to-end open source platform for machine learning. Incomplete validation in `SparseReshape` results in a denial of service based on a `CHECK`-failure. The implementation(https://github.com/tensorflow/tensorflow/blob/e87b51ce05c3eb172065a6ea5f48415854223285/tensorflow/core/kernels/sparse_reshape_op.cc#L40) has no validation that the input arguments specify a valid sparse tensor. The fix will be included in TensorFlow 2.5.0. We will also cherrypick this commit on TensorFlow 2.4.2 and TensorFlow 2.3.3, as these are the only affected versions.
📍 영향받는 시스템
TensorFlow 2.3.3, 2.4.2 버전
⚔️ 공격 벡터
유효하지 않은 희소 텐서 형식을 포함한 데이터를 SparseReshape 연산에 입력하여 프로그램 강제 종료 유도
🛡️ 대응 방법
TensorFlow를 2.5.0 이상 버전으로 업데이트하거나, 2.4.2 또는 2.3.3 버전의 보안 패치를 적용하십시오.
🔧 검증 코드
출력된 버전이 2.3.3, 2.4.2 또는 2.5.0 미만인지 확인하여 취약 여부를 판단합니다.
python3 -c 'import tensorflow as tf; print(tf.__version__)'