Flowise CustomMCP RCE


요약
CVE-2025-59528은 Flowise의 CustomMCP 노드에서 외부 MCP 서버 설정 입력이 안전하게 처리되지 않으면서 서버 측 코드 실행으로 이어질 수 있는 취약점이다. 2026-04-07 공개 보도에서는 실제 악용 가능성을 언급했고, NVD에도 설정 입력이 코드 평가 경로로 이어질 수 있다는 취지의 설명이 올라와 있다. 공개 자료 기준으로 확인되는 핵심은 취약한 설정 처리 경로와 수정 버전의 존재다. 실제 침해 규모, 배후, 정확한 권한 전제는 공개 자료만으로 단정하기 어렵다.
| 날짜 | 공개 자료 기준 확인 내용 |
|---|---|
| 2026-04-07 | BleepingComputer가 악용 보도와 patch 존재를 언급 |
| 2026-04-07 | NVD에서 CustomMCP 설정 처리 관련 취약 설명 확인 가능 |
추가 정확한 advisory 게시일과 patch 배포일은 공개 자료 기준으로 확인되지 않았다.
Flowise는 LLM 워크플로와 외부 API, 비밀정보, 도구 연결을 묶는 허브다. 한 번의 RCE도 워크플로 정의, 토큰, 후속 API 호출 권한으로 번질 수 있다.
취약점 구조
취약점 유형은 설정 입력을 통한 code injection에 가깝다. 공개 설명 기준으로는 CustomMCP 노드가 외부 MCP 서버 관련 설정을 처리하는 과정에서 공격자가 의도한 코드가 실행될 수 있다.
영향 범위는 취약한 Flowise 버전을 사용하는 서버다. CustomMCP 노드를 실제로 사용하거나, 외부에서 워크플로 설정값을 주입·수정할 수 있는 운영 형태라면 노출면이 커진다. 다만 모든 배포가 같은 조건을 갖는 것은 아니다.
영향은 Flowise 프로세스 권한 범위의 서버 측 코드 실행으로 정리할 수 있다. 그 뒤에는 다음 리스크가 이어질 수 있다.
- 워크플로 정의 변경
- 저장된 API 키, 토큰, 연결 정보 노출
- 외부 MCP 서버 또는 내부 API로의 비정상 호출
- 후속 스크립트 실행과 운영 데이터 변조
공개 자료에서는 실제 공격이 언급되지만, exploit chain 전체나 내부 확산 단계를 상세히 확인할 수 있는 자료는 제한적이다. 따라서 권한 상승이나 내부 수평 이동을 사실처럼 단정할 단계는 아니다.
영향 범위와 악용 조건
악용 조건은 공개 자료 기준으로 비교적 단순하다. 공격자가 CustomMCP 관련 설정 입력에 영향을 줄 수 있어야 한다. 다만 그 경로가 관리 UI인지, API인지, 가져오기 기능인지, 혹은 이미 탈취된 계정을 통한 post-auth 시나리오인지는 자료마다 충분히 구체적이지 않다.
운영 환경에서는 다음 자산과 붙어 있는 경우가 많다.
- LLM provider API 키
- 사내 문서 검색 백엔드
- 데이터베이스 연결 문자열
- Slack, GitHub, Notion 같은 협업 서비스 토큰
- agent 실행용 내부 HTTP API
즉, 이 이슈의 핵심은 노드 하나의 버그보다 연결 허브의 코드 실행에 가깝다.
자산 식별 예시
우선 Flowise 인스턴스 존재 여부와 CustomMCP 사용 흔적부터 확인한다.
docker ps --format '{{.Image}}\t{{.Names}}' | grep -i flowise
kubectl get pods -A | grep -i flowise
grep -RniE 'CustomMCP|custommcp|mcpServer|modelcontextprotocol' /opt /srv /var/lib 2>/dev/null
find / -type f \( -name "*.json" -o -name "*.yaml" -o -name "*.yml" \) 2>/dev/null | \
xargs grep -nE 'CustomMCP|custommcp|mcpServer' 2>/dev/null
위 예시는 자산 식별용이다. 공개 PoC처럼 악용 절차를 재현하는 목적은 아니다.
탐지 포인트
네트워크
- Flowise 서버의 비정상 outbound 연결
- 새로 등장한 MCP 서버 목적지
- 설정 변경 직후의 외부 API 호출 증가
엔드포인트
- Node.js 프로세스 기준의 비정상 자식 프로세스 실행
- 워크플로 수정 직후의 토큰 사용량 급증
- 관리 UI/API 접근 로그에서 평소와 다른 시간대의 변경 작업
서버
- Flowise 워크플로에서 CustomMCP 노드가 갑자기 추가되거나 수정된 이력
- reverse proxy access log와 애플리케이션 변경 이력의 불일치
- 시스템 프로세스 생성 로그와 배포 이력의 차이
IOC가 충분히 정리된 상태는 아니다. 버전 확인과 행위 기반 점검을 함께 봐야 한다.
패치 상태와 대응 포인트
공개 보도 기준으로 수정 버전은 존재한다. 다만 설치 경로가 Docker 이미지인지, npm 기반인지, 자체 빌드인지에 따라 실제 반영 여부가 달라질 수 있다. 최소 안전 버전은 사용 중인 배포 채널의 release/advisory와 직접 대조해야 한다.
| 항목 | 대응 포인트 |
|---|---|
| 버전 점검 | Flowise 버전과 배포 채널별 patch 반영 여부 확인 |
| 기능 축소 | 사용하지 않는 CustomMCP 노드와 관련 플러그인 비활성화 |
| 접근 통제 | 관리 UI/API를 인터넷에서 직접 노출하지 않고 신뢰 구간으로 제한 |
| 비밀정보 관리 | 저장된 API 키, 토큰, 연결 문자열 회전 검토 |
| 로그 점검 | 워크플로 수정 이력, outbound 연결, 프로세스 실행 흔적 확인 |
| 세그먼트 분리 | Flowise 서버에서 내부 고가치 자산으로의 직접 접근 최소화 |
이미 CustomMCP를 사용 중인 환경이라면 patch 적용만으로 끝내지 말고, 최근 설정 변경 이력과 저장된 비밀정보를 함께 확인한다.
참고 자료
- BleepingComputer - Max-severity Flowise RCE vulnerability now exploited in attacks
- NVD - CVE-2025-59528
대응 포인트
공개 자료 기준으로 확인된 버전과 패치 상태를 먼저 점검한다. 내부 자산 범위와 노출 여부는 별도로 확인한다.