🔍 CVE-2026-69264

9.8
CVSS Score
CRITICAL
2026-08-04
2026-10-23 21:10
✅ 완료

🇰🇷 한글 설명

Flowise CSVAgent에서 csvFile 데이터 URI의 공격자 제어 세그먼트가 Pyodide에서 실행되는 Python 소스 코드 템플릿에 직접 삽입되는 취약점이 발견되었습니다. 공격자는 이를 통해 Python 문자열 리터럴을 탈출하고 JavaScript의 eval 및 dynamic import를 호출하여 Node.js의 fs나 child_process 모듈을 통해 임의의 명령을 실행할 수 있습니다. 이 취약점은 버전 3.1.3 미만에서 발생하며, 인증되지 않은 사용자가 노출된 채팅플로우를 통해 원격 코드 실행(RCE)을 수행할 수 있습니다.

💡 쉬운 설명

악의적인 사용자가 조작된 CSV 파일을 업로드하여 서버의 제어권을 완전히 탈취할 수 있는 매우 위험한 보안 결함입니다. 공격자는 이 방법을 통해 서버에 저장된 파일을 읽거나 컴퓨터에 명령을 내려 시스템을 장악할 수 있습니다.

🇺🇸 원문 (English)

Prior to 3.1.3, Flowise CSVAgent interpolates an attacker-controlled segment of the csvFile data URI directly into a Python source-code template that is then executed by Pyodide. Because Pyodide is loaded with the default js bridge to globalThis, which on Node.js exposes eval and dynamic import, the attacker can break out of the Python string literal, hand a JavaScript string to js.eval, dynamically import Node built-in modules such as fs and child_process, and execute arbitrary file I/O or OS commands as the Flowise process. The two validator paths around this code, validatePythonCodeForDataFrame and validateCustomReadCSVFunction, are never applied to the bootstrap template. A workspace user with chatflows:create or agentflows/chatflows update permission can plant a CSV Agent node with a crafted csvFile; once the chatflow is exposed via POST /api/v1/prediction/:id, any unauthenticated request triggers host remote code execution. This issue is fixed in version 3.1.3.

📍 영향받는 시스템

Flowise CSVAgent (3.1.3 미만 버전)

⚔️ 공격 벡터

조작된 csvFile 데이터 URI를 포함한 채팅플로우를 생성한 후, 공개된 API 엔드포인트를 통해 원격에서 공격 실행

🛡️ 대응 방법

Flowise를 최신 보안 패치가 적용된 버전 3.1.3 이상으로 즉시 업데이트하십시오.

🔧 검증 코드

출력된 버전 번호가 3.1.3 미만인 경우 취약한 상태이므로 즉시 업데이트가 필요합니다.

Shell / Script
npm list flowise | grep -E 'flowise@'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Node.js