🔍 CVE-2026-69253

8.8
CVSS Score
HIGH
2026-08-04
2026-10-23 23:10
✅ 완료

🇰🇷 한글 설명

Flowise 3.1.3 미만 버전에서 AgentAsTool, ChatflowTool, ExecuteFlow 구성 요소가 사용자 제어 가능한 baseURL 값을 JavaScript 소스 코드에 직접 삽입하여 발생하는 코드 주입 취약점입니다. 공격자는 유효한 URL 형식을 갖춘 악성 코드를 주입하여 vm2 샌드박스를 탈출하고 서버에서 임의의 코드를 실행할 수 있습니다.

💡 쉬운 설명

사용자가 입력한 URL 주소에 몰래 악성 명령어를 섞어 넣으면, 프로그램이 이를 정상적인 주소로 착각하고 실행해 버리는 문제입니다. 이를 통해 해커는 서버의 제어권을 완전히 뺏을 수 있습니다.

🇺🇸 원문 (English)

Flowise is a drag-and-drop user interface for building customized large language model (LLM) flows. Prior to version 3.1.3, several custom-tool components — AgentAsTool, ChatflowTool, and ExecuteFlow — ran code in the in-process  vm2  sandbox. To build that code, they inserted a user-controlled  baseURL  value straight into the JavaScript source, for example  const url = "${baseURL}/..."; . The only check on  baseURL  was  isValidURL , but a valid-looking URL can still contain characters that break out of a code string. An authenticated user could craft a  baseURL  that passed this check, closed the surrounding string, and injected their own JavaScript into the sandboxed script (code injection, CWE-94). The  vm2  sandbox runs in the same Node.js process as Flowise and exposes risky dependencies. As a result, the injected code could escape the sandbox and run arbitrary code on the Flowise server as the Flowise process user. Exploitation only requires an authenticated session. The issue is fixed in version 3.1.3, which passes the URL to the sandbox as data instead of inserting it into code and adds stricter URL validation.

📍 영향받는 시스템

Flowise versions prior to 3.1.3

⚔️ 공격 벡터

인증된 사용자가 특수하게 조작된 baseURL 값을 포함한 요청을 전송하여 샌드박스 내 코드 주입 수행

🛡️ 대응 방법

Flowise를 최신 버전인 3.1.3 이상으로 업데이트하십시오.

🔧 검증 코드

출력된 버전이 3.1.3 미만(예: 3.1.2 이하 또는 2.x.x)이면 취약한 상태입니다.

Shell / Script
npm list flowise | grep -E 'flowise@([0-2]\.|3\.[0-2]\.)'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Node.js