🇰🇷 한글 설명
Node.js용 decompress 패키지에서 심볼릭 링크 체인을 이용한 경로 탐색 취약점이 발견되었습니다. 공격자가 조작된 압축 파일을 제공하면 출력 디렉터리 외부의 파일을 읽거나 쓸 수 있으며, 설정 파일이나 시작 스크립트를 덮어써 원격 코드 실행(RCE)이 가능합니다.
💡 쉬운 설명
압축을 풀 때 파일이 엉뚱한 곳에 저장되지 않도록 검사하는 기능이 완벽하지 않아 발생하는 문제입니다. 나쁜 의도를 가진 압축 파일을 풀면 컴퓨터의 중요한 파일을 마음대로 바꾸거나 조작할 수 있습니다.
🇺🇸 원문 (English)
The decompress package for Node.js extracts archives. Prior to 10.2.2 and 11.1.4, the default decompress(input, output) API relies on lexical containment checks that do not account for the kernel following a planted symlink chain. An attacker can supply a crafted archive containing chained symlink entries so that a later entry resolves outside the output directory. This allows files outside output to be read or written, and overwriting startup scripts or configuration can lead to remote code execution. The maintained @xhmikosr/decompress package is fixed in 10.2.2 and 11.1.4, but the separately affected unmaintained decompress package remains unpatched through 4.2.1. This vulnerability results from a bypass of the incomplete hardening for CVE-2026-53486. @xhmikosr/decompress is fixed in versions 10.2.2 and 11.1.4.
📍 영향받는 시스템
unmaintained decompress package (4.2.1 이하 버전)
⚔️ 공격 벡터
심볼릭 링크 체인이 포함된 조작된 압축 파일을 통해 출력 디렉터리 외부 경로로 파일 접근 및 쓰기 수행
🛡️ 대응 방법
유지보수 중인 @xhmikosr/decompress 패키지로 교체하고 10.2.2 또는 11.1.4 이상의 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 결과에서 decompress 패키지의 버전이 4.2.1 이하인지 또는 @xhmikosr/decompress 버전이 10.2.2/11.1.4 미만인지 확인합니다.
npm list decompress @xhmikosr/decompress