🇰🇷 한글 설명
Linux 환경의 Node.js에서 권한 상승된 프로세스가 실행 중일 때, 특정 환경 변수를 무시해야 하는 보안 메커니즘에 버그가 발견되었습니다. 이 버그로 인해 특정 권한(capability)이 설정된 경우에도 예외 처리가 잘못 적용되어, 권한이 없는 사용자가 프로세스의 높은 권한을 상속받는 코드를 주입할 수 있습니다.
💡 쉬운 설명
컴퓨터 프로그램이 높은 권한으로 실행될 때 일반 사용자가 설정을 마음대로 바꾸지 못하게 막아야 하는데, 이 방어벽에 구멍이 생긴 것입니다. 이를 통해 일반 사용자가 관리자 권한을 몰래 훔쳐낼 수 있는 위험이 있습니다.
🇺🇸 원문 (English)
On Linux, Node.js ignores certain environment variables if those may have been set by an unprivileged user while the process is running with elevated privileges with the only exception of CAP_NET_BIND_SERVICE.
Due to a bug in the implementation of this exception, Node.js incorrectly applies this exception even when certain other capabilities have been set.
This allows unprivileged users to inject code that inherits the process's elevated privileges.
📍 영향받는 시스템
Linux 환경에서 실행되는 취약한 버전의 Node.js
⚔️ 공격 벡터
권한이 낮은 사용자가 특정 환경 변수를 조작하여 실행 중인 고권한 Node.js 프로세스에 악성 코드를 주입
🛡️ 대응 방법
Node.js를 최신 보안 패치가 적용된 버전으로 즉시 업데이트
🔧 검증 코드
출력된 Node.js 버전을 확인하여 해당 취약점이 해결된 최신 버전인지 보안 공지(CVE-2024-21892 패치 버전)와 대조