🇰🇷 한글 설명
ApostropheCMS 3.6.2 미만 버전의 import-export 모듈에서 경로 조작 취약점이 발견되었습니다. 인증된 기여자가 조작된 아카이브를 가져오면, 시스템이 파일 경로를 적절히 검증하지 않아 호스트 파일을 읽고 이를 외부로 게시할 수 있습니다.
💡 쉬운 설명
로그인 권한이 있는 사용자가 특수하게 만든 파일을 업로드하여 서버 내부의 중요한 파일을 몰래 읽어낼 수 있는 보안 약점입니다. 이 파일은 외부에서도 접근 가능한 경로로 복사되어 정보 유출로 이어질 수 있습니다.
🇺🇸 원문 (English)
ApostropheCMS is an open-source Node.js content management system. Prior to 3.6.2, the import-export module in packages/import-export/lib/formats/gzip.js constructs an attachment source path from the attacker-controlled _id, name, and extension fields in aposAttachments.json without ensuring that the resolved path remains under the extracted attachments directory, allowing an authenticated contributor to import a crafted archive, read a host file with an allowed extension, and publish the copied file at an unauthenticated uploads URL. This issue is fixed in version 3.6.2.
📍 영향받는 시스템
ApostropheCMS 3.6.2 미만 버전
⚔️ 공격 벡터
인증된 사용자가 조작된 _id, name, extension 필드를 포함한 아카이브를 import-export 모듈을 통해 업로드
🛡️ 대응 방법
ApostropheCMS를 최신 보안 패치가 적용된 3.6.2 버전 이상으로 업데이트하십시오.
🔧 검증 코드
출력된 버전 번호가 3.6.2 미만인지 확인하여 취약 여부를 판단합니다.
npm list apostrophe-cms 2>/dev/null | grep -E 'apostrophe-cms@'