본문 바로가기
보안

n8n CVE-2026-25049 원격 명령수행 취약점

by 촐초리 2026. 2. 5.
반응형

1. 취약점 개요

  • 명칭: n8n 표현식 샌드박스 탈출을 통한 원격 코드 실행(RCE) 취약점
  • CVE ID: CVE-2026-25049
  • 위험도: Critical (치명적)
  • CVSS 점수: 9.4 (CVSS 4.0 기준) / 일부 분석에서는 10.0 만점 부여
  • 요약: n8n의 워크플로우 내에서 사용되는 '표현식(Expressions)' 처리 과정의 허점을 이용해, 시스템 명령어를 직접 실행하고 서버의 전체 제어권을 획득할 수 있는 취약점입니다.

2. 핵심 취약점 내용: "샌드박스 탈출"

n8n은 사용자가 데이터를 처리할 때 자바스크립트 기반의 표현식을 사용할 수 있게 합니다. 보안을 위해 이 코드는 제한된 환경(샌드박스) 내에서만 실행되어야 하지만, 이번 취약점은 이 보호막을 뚫고 나가는 방법을 제공합니다.

  • 원인: n8n이 사용하는 AST(추상 구문 트리) 분석 및 보안 정리(Sanitization) 로직이 불완전했습니다. 공격자는 보안 필터를 우회할 수 있는 특수하게 조작된 코드를 작성하여 샌드박스를 벗어날 수 있었습니다.
  • 이전 패치 우회: 이 취약점은 이전에 발견되었던 다른 취약점(CVE-2025-68613 등)에 대한 보안 패치를 우회하는 방식으로 발견되었습니다. 즉, 기존에 막아두었던 공격 경로 외에 새로운 우회 경로가 확인된 것입니다.

3. 공격 시나리오 및 영향

공격자는 관리자 권한이 없더라도 워크플로우를 생성하거나 수정할 수 있는 권한만 있으면 공격이 가능합니다.

  1. 공격 방식: 워크플로우의 매개변수나 노드 내 표현식에 시스템 명령어를 실행하는 악성 페이로드를 삽입합니다.
  2. 서버 장악: 해당 워크플로우가 실행되면 샌드박스를 탈출하여 서버 OS 레벨에서 명령어가 실행됩니다. (예: id, whoami 등 확인 및 실제 악성 쉘 실행)
  3. 데이터 유출: 서버 내의 환경 변수(N8N_ENCRYPTION_KEY 등)를 읽어 데이터베이스에 저장된 모든 자격 증명(API 키, OAuth 토큰, DB 비밀번호 등)을 복호화하고 탈취할 수 있습니다.
  4. 클라우드 환경 위험: n8n Cloud와 같은 멀티 테넌트 환경에서는 하나의 계정이 탈취되면 동일한 인프라 내의 다른 사용자 데이터나 내부 서비스로 공격이 확산될 위험(Lateral Movement)이 있습니다.

4. 영향받는 버전 및 해결 방법

이 취약점은 n8n의 여러 버전에 걸쳐 영향을 미치며, 현재 패치가 완료된 상태입니다.

  • 영향받는 버전: * 1.123.17 미만 버전
  • 2.5.2 미만 버전 (일부 리포트에서는 2.4.0 이상에서 해결된 것으로 언급)
  • 권장 조치:
  1. 최신 버전 업데이트: 즉시 1.123.17 또는 2.5.2 이상의 최신 버전으로 업데이트해야 합니다.
  2. 권한 제한: 신뢰할 수 없는 사용자에게 워크플로우 생성/수정 권한을 부여하지 마십시오.
  3. 환경 격리: n8n을 실행하는 환경의 OS 권한을 최소화하고 네트워크를 격리하여 공격이 성공하더라도 2차 피해를 줄여야 합니다.

결론

이 취약점은 n8n과 같은 자동화 도구가 AI 및 기업용 파이프라인에 깊숙이 관여하고 있는 시점에서 매우 위험한 보안 결함입니다. 공격자가 복잡한 인증 우회 없이 단순히 "워크플로우 수정"이라는 정상적인 기능을 악용해 서버 전체를 장악할 수 있다는 점에서 신속한 업데이트가 필수적입니다.

반응형