🇰🇷 한글 설명
n8n은 오픈소스 워크플로 자동화 플랫폼입니다. 1.123.55, 2.25.7, 2.26.2 이전 버전에서는 워크플로 편집 권한을 가진 인증된 사용자가 Respond to Webhook 노드를 설정해 공격자가 지정한 Content-Type으로 바이너리 콘텐츠를 응답하도록 할 수 있었습니다. 바이너리 응답 경로가 중앙 Content-Security-Policy 샌드박스 헤더를 우회하여, 인증된 사용자가 공개 웹훅에 접속하면 n8n 도메인에서 JavaScript가 실행되고 해당 사용자의 세션에 접근할 수 있었습니다. 이 취약점은 1.123.55, 2.25.7, 2.26.2 버전에서 수정되었습니다.
💡 쉬운 설명
n8n이라는 자동화 도구에서 워크플로를 편집할 수 있는 사용자가 악성 웹페이지를 만들어 다른 사용자가 방문하게 할 수 있는 문제입니다. 방문한 사용자의 로그인 세션 정보가 노출될 수 있으므로 업데이트가 필요합니다.
🇺🇸 원문 (English)
n8n is an open source workflow automation platform. Prior to 1.123.55, 2.25.7, and 2.26.2, an authenticated user with workflow edit access could configure a Respond to Webhook node to serve binary content with an attacker-controlled Content-Type. The binary response path bypassed the central Content-Security-Policy sandbox header, allowing a public webhook to execute JavaScript in the n8n origin when visited by an authenticated user, with access to that user's session. This vulnerability is fixed in 1.123.55, 2.25.7, and 2.26.2.
📍 영향받는 시스템
n8n 1.123.55 미만, 2.25.7 미만, 2.26.2 미만 버전 (2.x 브랜치 포함)
⚔️ 공격 벡터
워크플로 편집 권한을 가진 공격자가 Respond to Webhook 노드에 악성 Content-Type의 바이너리 응답을 설정한 뒤, 인증된 사용자가 해당 공개 웹훅 URL을 방문하도록 유도하여 스크립트를 실행시킵니다.
🛡️ 대응 방법
n8n을 1.123.55, 2.25.7, 2.26.2 이상 버전으로 업그레이드하고, 워크플로 편집 권한을 최소한으로 제한합니다.
🔧 검증 코드
출력된 버전이 1.123.55 이상(1.x 브랜치) 또는 2.25.7/2.26.2 이상(2.x 브랜치)이면 패치가 적용된 것이며, 그보다 낮으면 취약합니다.
docker exec $(docker ps -qf ancestor=n8nio/n8n) n8n --version 2>/dev/null || npm list -g n8n 2>/dev/null | grep n8n