🇰🇷 한글 설명
TensorFlow의 `tf.raw_ops.CTCBeamSearchDecoder` 함수에서 입력값 검증이 누락되어 발생한 취약점입니다. 공격자가 빈 입력 텐서를 전달할 경우, 시스템이 null 버퍼에서 데이터를 읽으려 시도하여 세그멘테이션 오류(Segmentation Fault)를 일으키고 서비스 거부(DoS) 상태를 유발할 수 있습니다.
💡 쉬운 설명
머신러닝 도구인 TensorFlow에서 데이터가 비어있는 경우를 제대로 확인하지 못하는 문제가 있습니다. 이를 이용해 잘못된 데이터를 보내면 프로그램이 갑자기 멈추거나 꺼지게 만들 수 있습니다.
🇺🇸 원문 (English)
TensorFlow is an end-to-end open source platform for machine learning. Due to lack of validation in `tf.raw_ops.CTCBeamSearchDecoder`, an attacker can trigger denial of service via segmentation faults. The implementation(https://github.com/tensorflow/tensorflow/blob/a74768f8e4efbda4def9f16ee7e13cf3922ac5f7/tensorflow/core/kernels/ctc_decoder_ops.cc#L68-L79) fails to detect cases when the input tensor is empty and proceeds to read data from a null buffer. The fix will be included in TensorFlow 2.5.0. We will also cherrypick this commit on TensorFlow 2.4.2, TensorFlow 2.3.3, TensorFlow 2.2.3 and TensorFlow 2.1.4, as these are also affected and still in supported range.
📍 영향받는 시스템
TensorFlow 2.5.0 미만 버전 (2.4.2, 2.3.3, 2.2.3, 2.1.4 포함)
⚔️ 공격 벡터
조작된 빈 입력 텐서를 `tf.raw_ops.CTCBeamSearchDecoder` 연산에 전달하여 메모리 오류 유도
🛡️ 대응 방법
TensorFlow를 2.5.0 이상의 버전으로 업데이트하거나, 해당 버전이 포함된 패치 버전을 적용하십시오.
🔧 검증 코드
출력된 버전 번호가 2.5.0보다 낮은지 확인하십시오.
python3 -c 'import tensorflow as tf; print(tf.__version__)'