🇰🇷 한글 설명
Apptainer 1.5.1 미만 버전에서 Image.AuthorizedPath 설정이 단순 문자열 접두사 매칭 방식을 사용하여 보안 취약점이 발생합니다. 이로 인해 관리자가 허용한 경로(/data/safe) 외에 유사한 이름의 다른 경로(/data/safe-but-unsafe)도 허용되는 문제가 있습니다. setuid 모드로 작동하는 경우 로컬 사용자가 의도하지 않은 디렉토리에서 컨테이너를 실행할 수 있습니다.
💡 쉬운 설명
허용된 폴더 이름과 비슷하게 생긴 다른 폴더도 시스템이 허용된 것으로 착각하는 보안 허점이 있습니다. 이를 통해 사용자가 관리자가 막아둔 폴더에서 컨테이너를 몰래 실행할 수 있습니다.
🇺🇸 원문 (English)
Apptainer is an open source container platform. Prior to version 1.5.1, Image.AuthorizedPath applies plain string-prefix matching to the limit container paths directive in apptainer.conf, so an allowed path such as /data/safe also authorizes a sibling path such as /data/safe-but-unsafe. A local user can consequently run a container from a directory outside the administrator's intended allowlist when Apptainer operates in setuid mode. Installations that do not use setuid mode or do not configure limit container paths are not affected, and unrestricted user namespaces already allow users to run containers of their choice. This issue is fixed in version 1.5.1.
📍 영향받는 시스템
Apptainer 1.5.1 미만 버전 (setuid 모드 사용 시)
⚔️ 공격 벡터
로컬 사용자가 허용된 경로와 접두사가 일치하는 인접 경로를 이용해 컨테이너 실행
🛡️ 대응 방법
Apptainer를 1.5.1 이상 버전으로 업데이트하거나 setuid 모드 사용을 검토하십시오.
🔧 검증 코드
출력 결과에 1.5.1 미만의 버전 번호가 나타나면 취약한 버전이 설치된 것입니다.
apptainer --version | grep -E '1\.[0-5]\.[0-4]'