
n8n RCE (CVE-2025-68613)
이 저장소는 교육 목적의 보안 연구 프로젝트로, CVE-2025-68613에 초점을 맞추고 있습니다. 이 취약점은 특정 버전의 n8n에서 불안전한 워크플로 표현식 평가와 관련이 있습니다.
프로젝트는 통제된 로컬 랩 환경에서만 테스트되었습니다.
CVE-2025-68613은 인증된 원격 코드 실행(RCE) 취약점으로, 영향을 받는 n8n 버전에서 워크플로 표현식 평가가 안전하지 않게 처리되어 발생합니다.
특정 조건에서 인증된 사용자는 워크플로 표현식 평가 시스템을 악용하여 임의 코드를 실행할 수 있습니다.
1.120.41.121.11.122.0.
├── scanner.py # 안전한 버전 기반 취약점 확인기
├── exploit.py # 워크플로 표현식 평가 시스템 악용 익스플로잇
scanner.py
비침해적 버전 확인만 수행합니다 (감사 및 인벤토리에 안전).
exploit.py
취약한 버전에서 워크플로 표현식 평가 시스템이 어떻게 악용될 수 있는지 시연합니다.
⚠️ 이 파일은 PoC가 아닌 익스플로잇이며, 로컬 랩에서만 사용해야 합니다.
취약한 환경은 공식 n8n Docker 이미지를 사용하여 생성되었습니다.
docker run -it --rm \
--name n8n-vulnerable \
-p 5678:5678 \
n8nio/n8n:1.121.0
1.121.0은 테스트 목적으로 의도적으로 취약하게 설정되었습니다.아래 이미지는 Set 노드가 워크플로 표현식을 평가하고 명령 출력을 워크플로 실행 결과에 반환하는 모습을 보여줍니다.
이 동작은 취약한 버전에서 안전하지 않은 표현식 평가로 인해 발생합니다.

python scanner.py http://localhost:5678
n8n Version Info: 1.121.0
The target n8n instance is VULNERABLE to CVE-2025-68613.
익스플로잇 스크립트는:
⚠️ 이 스크립트는 본인이 소유하거나 테스트 권한이 명시적으로 부여된 시스템에서만 사용해야 합니다. 예시:
python exploit.py -u http://localhost:5678 -e <이메일> -p <비밀번호>
이 저장소는 엄격히 교육, 연구 및 방어적 보안 목적으로 제공됩니다.
모든 테스트는 로컬 Docker 기반 랩 환경에서 수행되었습니다. 허가 없이 이 코드를 시스템에 무단 사용하는 것은 불법이며 관련 법률을 위반할 수 있습니다.
저자는 이 코드의 사용으로 인한 오용, 손해 또는 법적 결과에 대해 책임을 지지 않습니다.
개인 학습 및 포트폴리오 프로젝트의 일환으로 수행된 보안 연구입니다.