자동화된 워크플로우를 관리하는 AI 보안 엔지니어 및 DevSecOps 전문가를 위한 제품입니다, CVE-2025-68668 는 최신 AI 오케스트레이션의 격리 계층에서 중대한 실패를 나타냅니다.
조직에서 점점 더 많은 n8n LLM(대규모 언어 모델), 벡터 데이터베이스, 내부 API를 하나로 묶기 위해서는 워크플로 실행 환경의 무결성이 가장 중요합니다. n8n Python 코드 노드의 중요한 샌드박스 우회 취약점인 이 취약점은 해석된 환경에서의 '샌드박스'가 왜 보안이 어렵기로 악명 높은지 정확히 보여줍니다.

CVE-2025-68668의 해부학
CVE-2025-68668(CVSS 9.9)의 핵심은 다음과 같습니다. 보호 메커니즘 실패 다음의 N8N 버전에 영향을 미칩니다. 1.0.0 최대 2.0.0. 특히 다음에 의존하는 파이썬 코드 노드 구현을 대상으로 합니다. 파이오다이드CPython을 WebAssembly/Emscripten으로 포팅합니다.
Pyodide는 제한된 환경 내에서 Python을 안전하게 실행하도록 설계되었지만, n8n 백엔드 내 구현은 격리 경계를 엄격하게 적용하지 못했습니다.

기술적 우회 메커니즘
이 취약점으로 인해 인증된 사용자 (워크플로 생성/수정 권한 포함)를 사용하여 Pyodide 환경을 벗어날 수 있습니다. 표준 보안 설정에서 Python 코드 노드는 호스트의 표준 라이브러리, 특히 다음과 같은 액세스를 제한해야 합니다. os, 하위 프로세스및 sys.
그러나 취약한 버전에서는 가져오기 메커니즘을 통해 공격자가 기본 호스트 시스템의 셸에 액세스할 수 있습니다. 공격자는 워크플로 편집기 내에서 특정 Python 페이로드를 제작하여 n8n 프로세스 자체와 동일한 권한으로 임의의 명령을 실행할 수 있습니다(도커화된 환경에서는 주로 루트 권한).
취약점 프로필:
| 기능 | 세부 정보 |
|---|---|
| CVE ID | CVE-2025-68668 |
| 대상 구성 요소 | n8n 파이썬 코드 노드(파이오다이드) |
| 취약점 유형 | 샌드박스 바이패스/RCE |
| CVSS 점수 | 9.9(중요) |
| 벡터 | 네트워크(인증됨) |
| 영향 | 전체 호스트 손상 |
코드 분석: 익스플로잇 개념화하기
참고: 다음 코드 블록은 교육 및 방어용 분석용입니다. 소유하지 않은 시스템에 대해 사용하지 마세요.
이 익스플로잇은 Pyodide 래퍼에도 불구하고 호스트의 파일 시스템 또는 프로세스 처리에 액세스할 수 있는 기능을 활용합니다. 일반적인 우회 로직은 제한된 모듈을 다시 가져오거나 js 인터페이스(노출된 경우)를 사용하여 Node.js 호스트 컨텍스트로 다시 연결합니다.
Python
샌드박스 이스케이프 로직의 `# 개념적 표현
취약한 n8n 인스턴스에서는 격리가 특정 시스템 호출을 차단하지 못합니다.
시도 중입니다: # 호스트 환경 변수 또는 파일 시스템 가져오기 또는 가져오기 하위 프로세스에 액세스하려고 합니다.
# 샌드박스가 유효하다면, 권한 오류 또는 가져오기 오류를 발생시킵니다.
#가 발생하지만 CVE-2025-68668에서는 호스트에서 성공적으로 실행됩니다.
output = subprocess.check_output(['whoami'])
print(f"샌드박스가 손상되었습니다. 사용자: {output.decode('utf-8')}")
# 공격자는 OpenAI/AWS 키가 포함된 .env 파일을 덤프하도록 피벗할 수 있습니다.
# malicious_payload = subprocess.check_output(['cat', '/home/node/.n8n/config'])
예외는 다음과 같습니다: print("환경 보안 또는 패치됨.")`.
AI 보안 엔지니어에게 이것이 중요한 이유
이것은 단순한 표준 웹 취약점이 아닙니다. AI 에이전트를 위한 공급망 위험.
- 자격 증명 수집: n8n 워크플로는 고가의 비밀이 담긴 보물창고입니다: OpenAI API 키, Pinecone 벡터 DB 자격 증명, AWS 액세스 토큰이 바로 그것입니다. 익스플로잇에 성공하면 이러한 환경 변수에 대한 즉각적인 액세스 권한이 부여됩니다.
- 모델 중독: RCE를 사용하는 공격자는 RAG(검색 증강 생성) 파이프라인으로 유입되는 데이터를 가로채서 최종 사용자에게 도달하기 전에 컨텍스트 창을 오염시키거나 모델의 출력을 변경할 수 있습니다.
- 측면 이동: n8n은 내부 데이터베이스에 액세스하기 위해 VPC 내부에 위치하는 경우가 많으므로, 손상된 노드는 내부 네트워크로의 측면 이동을 위한 이상적인 피벗 포인트 역할을 합니다.
자동화된 펜테스트로 위협 검증하기
CVE-2025-68668을 탐지하는 것은 기존 취약점 스캐너에 어려운 과제입니다. 표준 DAST(동적 애플리케이션 보안 테스트) 도구는 종종 버전 헤더나 간단한 HTTP 오류 코드를 찾습니다. 인증, 워크플로우 생성, Python 스니펫 삽입, 코드가 호스트에서 실행되는지 검증하는 로직이 부족합니다.
여기에서 AI 기반 침투 테스트 가 필수 요소가 됩니다.
펜리전트 는 인간 보안 엔지니어의 행동을 모방하는 자율 AI 에이전트를 활용합니다. 펜리전트의 에이전트는 정적 서명에 의존하는 대신 자율적으로 작동합니다:
- 컨텍스트화: 타겟이 n8n 인스턴스라는 것을 이해합니다.
- 인증합니다: 제공된 자격 증명을 사용하여 워크플로 편집기에 액세스합니다.
- 페이로드 합성: 샌드박스 경계를 안전하게 테스트하기 위한 Python 코드를 동적으로 생성합니다(예: 민감하지 않은 임시 파일 읽기 시도).
- 확인합니다: 실행 결과를 분석하여 샌드박스가 실제로 우회되었는지 확인하여 기존 스캐너에서 흔히 발생하는 오탐을 제거합니다.
Penligent를 CI/CD 또는 정기 보안 감사에 통합하면 CVE-2025-68668과 같은 논리적 취약점이 프로덕션 환경에서 악용되기 전에 이를 탐지할 수 있습니다.
해결 및 완화 전략
CVE-2025-68668로부터 AI 자동화 인프라를 보호하려면 즉각적인 조치가 필요합니다.
1. 즉시 업그레이드
기본 수정 사항은 n8n을 버전으로 업그레이드하는 것입니다. 2.0.0 이상이어야 합니다. n8n 팀은 v2.0에서 Python 실행 모델을 완전히 리팩토링하여 기본적으로 안전한 네이티브 파이썬 런처를 제공합니다.
2. 파이썬 코드 노드 비활성화(임시)
업그레이드가 즉시 가능하지 않은 경우 환경 변수를 통해 취약한 노드 유형을 비활성화하여 위험을 완화할 수 있습니다:
Bash
# 코드 노드에서 파이썬 지원 비활성화 내보내기 N8N_PYTHON_ENABLED=false
3. 워크플로 권한 제한
이 취약점은 인증된 취약점이므로 최소 권한 원칙(PoLP)을 적용하세요. 신뢰할 수 있는 엔지니어만 '워크플로 작성자' 권한을 갖도록 하세요. 사용자 목록을 즉시 감사하세요.
결론
CVE-2025-68668은 로우코드 AI 도구로 복잡성을 추상화할수록 새로운 위험 계층이 생겨난다는 사실을 극명하게 보여줍니다. 샌드박스가 적용된 코드 실행의 '블랙박스' 특성으로 인해 엄격하고 지속적인 검증이 필요합니다.
최신 보안 엔지니어에게는 패치 관리에 의존하는 것이 필요하지만 충분하지 않습니다. 채택 자동화된 공격 보안 플랫폼 같은 Penligent.ai 를 통해 조직은 이러한 복잡한 통합의 복원력을 지속적으로 테스트하여 AI 에이전트가 잠재적인 방해꾼이 아닌 종으로 남을 수 있도록 할 수 있습니다.

