🔍 CVE-2026-31237

9.8
CVSS Score
CRITICAL
2026-05-12
2026-10-19 22:10
✅ 완료

🇰🇷 한글 설명

Ludwig 프레임워크 0.10.4 이하에서 predict() 메서드가 pickle 파일을 검증 없이 역직렬화하는 취약점입니다. 악의적인 pickle 파일을 통해 임의의 파이썬 객체를 역직렬화할 수 있어 원격 코드 실행이 가능합니다.

💡 쉬운 설명

Ludwig라는 데이터 분석 도구에서 특정 파일 형식을 안전하지 않게 처리합니다. 공격자가 특수한 파일을 보내면 피해자의 컴퓨터에서 자유롭게 코드를 실행할 수 있습니다.

🇺🇸 원문 (English)

The Ludwig framework thru 0.10.4 is vulnerable to insecure deserialization (CWE-502) through its predict() method. When a user provides a dataset file path to the predict() method, the framework automatically determines the file format. If the file is a pickle (.pkl) file, it is loaded using pandas.read_pickle() without any validation or security restrictions. This allows the deserialization of arbitrary Python objects via the unsafe pickle module. A remote attacker can exploit this by providing a maliciously crafted pickle file, leading to arbitrary code execution on the system running the Ludwig prediction.

📍 영향받는 시스템

Ludwig framework 버전 0.10.4 이하

⚔️ 공격 벡터

악의적으로 조작된 pickle(.pkl) 파일을 predict() 메서드의 데이터셋 경로로 전달하여 원격 코드 실행

🛡️ 대응 방법

Ludwig를 0.10.5 이상으로 업그레이드하거나 untrusted 출처의 pickle 파일 로드 금지

🔧 검증 코드

출력된 버전이 0.10.4 이하면 취약 상태이므로 즉시 업그레이드 필요

Shell / Script
pip show ludwig 2>/dev/null | grep Version | awk '{print $2}'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Python