🇰🇷 한글 설명
SFTPGo 2.2.0부터 2.7.3 버전 사이에서 공용 웹 클라이언트의 ZIP 다운로드 엔드포인트에 경로 검증 취약점이 존재합니다. 공격자가 공유 디렉토리 이름과 동일한 접두사를 가진 인접 디렉토리 경로를 지정할 경우, 디렉토리 경계를 벗어난 파일이 ZIP 파일에 포함되어 유출될 수 있습니다.
💡 쉬운 설명
공유된 폴더의 파일들을 압축해서 다운로드할 때, 폴더 이름의 앞부분만 확인하는 허점을 이용해 원래 보여주면 안 되는 다른 폴더의 파일까지 함께 가져갈 수 있는 문제입니다. 이를 통해 권한이 없는 사용자도 서버의 민감한 파일을 훔쳐볼 수 있습니다.
🇺🇸 원문 (English)
SFTPGo is an open source, event-driven file transfer solution. From 2.2.0 until 2.7.3, the public web-client partial ZIP download endpoint for a browsable share validates client-supplied files entries with a raw byte-prefix comparison rather than a directory-boundary-aware check. An unauthenticated requester who can reach a public share can select a canonical path outside the shared directory when the target path begins with the shared directory's name, such as a sibling path that shares the same prefix. The endpoint then includes the out-of-scope file in the generated download, disclosing its contents. This issue is fixed in version 2.7.3.
📍 영향받는 시스템
SFTPGo 버전 2.2.0 ~ 2.7.3
⚔️ 공격 벡터
인증되지 않은 공격자가 공용 공유 경로에 접근하여 경로 접두사를 이용한 조작된 파일 경로를 요청함
🛡️ 대응 방법
SFTPGo를 취약점이 해결된 최신 버전인 2.7.3 이상으로 업데이트하십시오.
🔧 검증 코드
명령어 결과에 현재 설치된 SFTPGo 버전이 취약 범위(2.2.0~2.7.3)에 해당하면 취약한 상태입니다.
sftpgo --version 2>/dev/null | grep -E '2\.[2-7]\.[0-3]'