🔍 CVE-2026-39424

4.7
CVSS Score
MEDIUM
2026-04-14
2026-10-26 22:10
✅ 완료

🇰🇷 한글 설명

MaxKB 2.7.1 이하 버전에서 관리자가 애플리케이션 채팅 기록을 Excel(.xlsx)로 내보낼 때, 수식 문자로 시작하는 문자열이 적절히 무력화되지 않고 그대로 기록됩니다. 이 파일을 Excel 등에서 열면 DDE를 통해 관리자 PC에서 임의 코드가 실행될 수 있습니다. 이는 CVE-2025-4546의 변종이며 2.8.0 버전에서 수정되었습니다.

💡 쉬운 설명

관리자가 채팅 기록을 엑셀 파일로 내려받을 때, 악성 명령이 숨겨진 내용이 함께 저장될 수 있습니다. 이 파일을 엑셀로 열면 관리자 컴퓨터에서 공격자의 명령이 실행될 수 있습니다.

🇺🇸 원문 (English)

MaxKB is an open-source AI assistant for enterprise. In versions 2.7.1 and below, the chat export feature is vulnerable to Improper Neutralization of Formula Elements in a CSV File. When an administrator exports the application chat history to an Excel file (.xlsx) via the /admin/api/workspace/{workspace_id}/application/{application_id}/chat/export endpoint, strings starting with formula characters are written directly without proper sanitization. Opening this file in spreadsheet applications like Microsoft Excel can lead to Arbitrary Code Execution (RCE) on the administrator's workstation via Dynamic Data Exchange (DDE). The issue is a variant of CVE-2025-4546, which fixed the exact same pattern in apps/dataset/serializers/document_serializers.py but missed the application chat export sink. This issue has been fixed in version 2.8.0.

📍 영향받는 시스템

MaxKB 2.7.1 이하 버전 (2.8.0에서 수정됨)

⚔️ 공격 벡터

사용자 입력에 수식 문자(=, +, -, @)로 시작하는 DDE 페이로드를 포함시켜 채팅 기록에 저장한 뒤, 관리자가 해당 내역을 xlsx로 내보내 열 때 코드가 실행됨

🛡️ 대응 방법

MaxKB를 2.8.0 이상으로 업그레이드하고, 신뢰할 수 없는 xlsx 파일은 수식 실행 경고를 확인한 뒤 열기

🔧 검증 코드

출력된 버전이 2.8.0 미만이면 취약하며, 2.8.0 이상이면 패치가 적용된 것입니다. 명령이 실패하면 설치 경로를 직접 확인하세요.

Shell / Script
docker exec maxkb cat /opt/maxkb/app/VERSION 2>/dev/null || grep -r 'version' /opt/maxkb/app/*.py 2>/dev/null | head -1

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Microsoft Excel