🔍 CVE-2026-34445

8.6
CVSS Score
HIGH
2026-04-01
2026-06-17 10:39
✅ 완료

🇰🇷 한글 설명

ONNX의 ExternalDataInfo 클래스가 모델 파일에서 메타데이터를 로드할 때 Python의 setattr() 함수를 검증 없이 사용하여, 공격자가 악성 모델을 통해 내부 객체 속성을 덮어쓸 수 있다. 버전 1.21.0에서 패치되었다.

💡 쉬운 설명

ONNX 라이브러리가 모델 파일의 데이터를 검증하지 않아 공격자가 특별히 조작된 파일로 프로그램 내부 설정을 변경할 수 있다. ONNX를 1.21.0 이상으로 업데이트하면 보호된다.

🇺🇸 원문 (English)

Open Neural Network Exchange (ONNX) is an open standard for machine learning interoperability. Prior to version 1.21.0, the ExternalDataInfo class in ONNX was using Python’s setattr() function to load metadata (like file paths or data lengths) directly from an ONNX model file. It didn’t check if the "keys" in the file were valid. Due to this, an attacker could craft a malicious model that overwrites internal object properties. This issue has been patched in version 1.21.0.

📍 영향받는 시스템

ONNX 1.20.1 이하 모든 버전

⚔️ 공격 벡터

악성로 조작된 ONNX 모델 파일을 로드하여 setattr() 검증 우회로 객체 속성 조작

🛡️ 대응 방법

ONNX를 1.21.0 이상으로 업데이트 (pip install --upgrade onnx)

🔧 검증 코드

Patched 출력 시 안전함, Vulnerable 출력 또는 Not installed 시 설치/업데이트 필요

Shell / Script
python3 -c "import onnx; v=onnx.__version__.split('.'); print('Vulnerable' if int(v[0])<1 or (int(v[0])==1 and int(v[1])<21) else 'Patched')" 2>/dev/null || echo 'Not installed'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Python