🔍 CVE-2026-108375

8.8
CVSS Score
HIGH
2026-10-13
2026-10-16 16:00
✅ 완료

🇰🇷 한글 설명

dataclasses-avroschema 0.38.0부터 0.70.5 버전에서 FieldRepresentation.get_field_default 함수가 생성된 Python 소스 코드 내 문자열 리터럴에 스키마 제어 값을 삽입할 때 이스케이프 처리를 하지 않는 취약점이 발견되었습니다. 공격자가 조작된 기본값을 제공하면 리터럴을 종료하고 임의의 파이썬 코드를 주입할 수 있으며, 해당 모듈이 임포트될 때 코드가 실행됩니다.

💡 쉬운 설명

데이터 형식을 정의하는 파일에 악성 코드를 숨겨두면, 프로그램이 이 파일을 읽어 코드를 자동으로 생성하는 과정에서 악성 코드가 함께 실행될 수 있는 문제입니다. 마치 문서 안에 몰래 명령어를 적어두어 문서를 여는 순간 컴퓨터가 명령을 수행하게 만드는 것과 같습니다.

🇺🇸 원문 (English)

dataclasses-avroschema generates Avro schemas from Python dataclasses, Pydantic models, and Faust Records and generates Python code from Avro schemas. From version 0.38.0 through 0.70.5, FieldRepresentation.get_field_default inserts schema-controlled string, UUID, bytes, and fixed field defaults into quoted literals in generated Python source without escaping them. A crafted default can terminate the literal and inject statements into the generated module, which execute when the module is imported. Version 0.70.6 fixes the vulnerability by escaping schema values rendered into generated string literals.

📍 영향받는 시스템

dataclasses-avroschema version 0.38.0 through 0.70.5

⚔️ 공격 벡터

조작된 Avro 스키마의 기본값(string, UUID, bytes, fixed)을 통해 생성된 Python 소스 코드에 임의의 명령어를 주입

🛡️ 대응 방법

dataclasses-avroschema를 취약점이 해결된 버전인 0.70.6 이상으로 업데이트하십시오.

🔧 검증 코드

출력된 버전이 0.70.5 이하이면 취약한 상태이며, 0.70.6 이상이면 안전합니다.

Shell / Script
pip show dataclasses-avroschema 2>/dev/null | grep Version

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Python