🇰🇷 한글 설명
node-tar 라이브러리의 tar.replace 함수에서 체크섬이 유효하지만 음수의 base-256 인코딩된 엔트리 크기를 가진 tar 헤더를 허용하는 취약점이 발견되었습니다. 이로 인해 아카이브 스캐너가 동일한 헤더를 반복적으로 파싱하며 진행되지 못하는 상태에 빠질 수 있습니다. 이 문제는 버전 7.5.18에서 수정되었습니다.
💡 쉬운 설명
압축 파일을 읽는 프로그램이 잘못된 숫자 정보가 담긴 파일을 만나면 무한 루프에 빠져 멈춰버리는 문제입니다. 공격자가 이 파일을 보내면 시스템의 자원을 소모시켜 서비스를 중단시킬 수 있습니다.
🇺🇸 원문 (English)
node-tar is a tar archive manipulation library for Node.js. Prior to 7.5.18, tar.replace accepts a checksum-valid tar header with a negative base-256 encoded entry size, causing the archive scanner to make no progress while repeatedly parsing the same header. This issue is fixed in version 7.5.18.
📍 영향받는 시스템
node-tar version 7.5.18 미만
⚔️ 공격 벡터
음수 크기 정보가 포함된 조작된 tar 헤더 파일을 시스템에 업로드하거나 처리하도록 유도
🛡️ 대응 방법
node-tar 라이브러리를 최신 버전인 7.5.18 이상으로 업데이트
🔧 검증 코드
출력된 결과에서 node-tar의 버전이 7.5.18 미만인지 확인