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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
analysis-and-poc-n8n-CVE-2025-68613 — n8n의 CVE-2025-68613 취약점에 대한 기술 연구로, 영향을 받는 버전, 실험실 탐색 시나리오, 공격 및 방어 분석, 그리고 완화 전략을 다룹니다. | Kitploit
도구/GitHubGitHub/releaseown/analysis-and-poc-n8n-cve-2025-68613
Vulnerability AnalysisCode AnalysisExploitationWeb Application ExploitationPenetration TestingLearning & EducationRed TeamingPayload Development

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
GitHub
releaseown/analysis-and-poc-n8n-cve-2025-68613

analysis-and-poc-n8n-CVE-2025-68613

n8n의 CVE-2025-68613 취약점에 대한 기술 연구로, 영향을 받는 버전, 실험실 탐색 시나리오, 공격 및 방어 분석, 그리고 완화 전략을 다룹니다.

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

개요 (n8n 및 CVE-2025-68613)

n8n은 시각적 흐름과 JavaScript 표현식을 통해 시스템과 서비스를 통합하는 데 사용되는 워크플로 자동화 플랫폼입니다.

CVE-2025-68613은 치명적인 원격 코드 실행(RCE) 취약점으로, CVSS 9.9 점수를 가지며 여러 n8n 버전에 영향을 미칩니다. 이 결함은 취약한 버전의 워크플로에서 JavaScript 표현식 처리 시 제대로 격리되지 않아 발생합니다. 이로 인해 편집 권한이 있는 인증된 사용자가 애플리케이션의 예상 동작 범위를 벗어나 코드를 실행할 수 있습니다.

실제로 이 결함은 n8n이 실행 중인 서버에서 애플리케이션 자체 권한을 사용하여 명령을 실행하도록 악용될 수 있습니다. 영향을 받는 버전은 0.211.0부터 1.120.4, 1.121.1, 1.122.0에 적용된 수정 사항 이전 버전까지입니다.

n8n

잠재적 영향

  • n8n 인스턴스 전체가 손상될 수 있음.
  • 워크플로에서 처리되는 데이터에 대한 접근 권한 탈취.
  • 자격 증명, SSH 키, 환경 변수 및 통합 토큰 노출.
  • 연결된 시스템에 대한 간접 접근.

이 저장소는 CVE-2025-68613을 기술적으로 문서화하며, 결함의 맥락, 영향을 받는 버전, 악용 및 권장 완화 조치를 다룹니다.

n8n search in hunter

영향을 받는 버전 및 수정된 버전

상태n8n 버전참고
❌ 영향 받음>= 0.211.0취약 메커니즘 도입
❌ 영향 받음< 1.120.41.120 브랜치 패치 전까지 취약
❌ 영향 받음< 1.121.11.121 브랜치 패치 전까지 취약
❌ 영향 받음< 1.122.01.122 브랜치 패치 전까지 취약
✅ 수정됨1.120.4공식 수정 적용
✅ 수정됨1.121.1공식 수정 적용
✅ 수정됨>= 1.122.0기본적으로 수정 사항 포함

즉시 1.122.0 이상 버전으로 업데이트할 것을 권장합니다.

개념 증명(PoC)

시나리오 사전 조건

취약점을 시연하려면 다음 조건이 필요합니다:

  • 취약한 버전으로 실행 중인 n8n 인스턴스
  • 인증된 사용자
  • 쓰기 권한(워크플로 생성 또는 편집)

이 결함은 인증 전이 아니라 워크플로 생성 및 실행 중에 발생합니다.


악용 단계

1단계 — 플랫폼 인증

첫 번째 단계는 유효한 사용자로 n8n 웹 인터페이스에 로그인하는 것입니다.

n8n login screen

이 단계는 공격이 익명이 아님을 확인합니다. 이 취약점은 인증된 사용자가 필요합니다.


2단계 — 권한 확인

로그인 후 사용자에게 워크플로를 생성하고 편집할 수 있는 권한이 있는지 확인합니다.

User management screen

이는 이 액세스 수준을 가진 사용자만 워크플로에 동적 표현식을 삽입할 수 있기 때문에 중요합니다.


3단계 — 새 워크플로 만들기

인증된 사용자로 처음부터 새 워크플로를 생성합니다.

Initial screen for creating a workflow

여기서부터 취약한 버전에서 악용될 수 있는 n8n 기능의 정상적인 사용이 시작됩니다.


4단계 — 수동 트리거 추가

워크플로에 추가되는 첫 번째 노드는 수동 트리거입니다.

Adding the Manual Trigger

이 노드의 역할: 워크플로를 수동으로 실행할 수 있게 하며, 흐름의 시작점으로 사용됩니다.

이 시나리오에서는 워크플로 실행을 위한 진입점 역할만 합니다.


5단계 — Edit Fields (Set) 노드 추가

두 번째로 추가되는 노드는 Edit Fields (Set)입니다.

Adding the Edit Fields (Set) node

이 노드의 역할: 이 노드는 워크플로 내에서 데이터 필드를 생성, 수정 또는 덮어쓸 수 있게 합니다. 정적 값 또는 실행 시 평가되는 JavaScript 표현식을 허용합니다.

취약점이 나타나는 지점은 정확히 이 부분입니다.


6단계 — 취약한 표현식 삽입

Edit Fields (Set) 노드의 값 필드 안에 {{ }}로 감싼 JavaScript 표현식을 삽입합니다. 이 형식은 n8n이 동적 표현식을 평가하는 데 사용하는 형식입니다.

Expression field with payload

예시 페이로드:

root@kitploit:~
{{ (function(){ 
  return this.process.mainModule
    .require('child_process')
    .execSync('id')
    .toString() 
})() }}
  • (function(){ ... })(): 자체 호출 함수를 정의하여 모든 로직을 캡슐화하고 값을 워크플로 표현식에 직접 반환할 수 있게 합니다.
  • this.process: 런타임 정보와 리소스를 노출하는 Node.js 내부 process 객체에 접근합니다.
  • process.mainModule: 애플리케이션의 메인 모듈에 접근할 수 있게 하여 다른 내부 Node.js 모듈을 로드할 수 있게 합니다.
  • require('child_process'): 운영 체제에서 새 프로세스를 생성하고 외부 명령을 실행할 수 있게 하는 Node.js 네이티브 모듈입니다.
  • execSync('id'): n8n이 실행 중인 운영 체제에서 애플리케이션 프로세스 권한을 사용하여 명령을 직접 실행합니다.
  • .toString(): 실행된 명령의 출력을 텍스트로 변환하여 결과를 n8n 인터페이스에 표시할 수 있게 합니다.

최종 결과

표시된 결과는 명령이 n8n 프로세스 권한을 사용하여 운영 체제에서 실행되었음을 확인하며, 이는 원격 코드 실행(RCE)에 해당합니다.

참고 자료

  • https://nvd.nist.gov/vuln/detail/CVE-2025-68613
  • https://motasemhamdan.medium.com/unpacking-n8n-rce-cve-2025-68613-39e4f3417358
  • https://ccb.belgium.be/advisories/warning-remote-code-execution-n8n-patch-immediately
  • https://gbhackers.com/poc-exploit-for-critical-n8n-rce-vulnerability/
도구 다운로드