🇰🇷 한글 설명
Nginx UI 2.4.3 미만 버전에서 자동 백업의 이름 생성 시 경로 구분자나 상위 디렉토리 요소를 검증하지 않는 취약점이 존재합니다. 인증된 사용자가 백업 이름을 조작하여 백업 파일이나 암호화 키 파일을 지정된 저장 경로 외부의 임의 위치에 생성할 수 있습니다.
💡 쉬운 설명
로그인 권한이 있는 사용자가 백업 파일의 이름을 교묘하게 조작하여, 시스템의 엉뚱한 폴더에 파일을 저장하게 만들 수 있는 문제입니다. 이를 통해 중요한 설정 파일이나 암호화 키를 공격자가 원하는 위치로 옮길 수 있습니다.
🇺🇸 원문 (English)
Nginx UI is a web user interface for the Nginx web server. Prior to 2.4.3, Nginx UI validates an automatic backup's storage_path, but AutoBackup.GetName returns a user-controlled name without rejecting path separators or parent-directory components, and downstream filename formatting embeds that result in the final archive filename. An authenticated user who can create or modify an automatic backup can cause filepath.Join to resolve the generated archive path outside the validated storage directory, allowing backup archives to be written with the Nginx UI process privileges. For encrypted configuration backups, the adjacent encryption key file can also be written outside the validated directory. This issue is fixed in version 2.4.3.
📍 영향받는 시스템
Nginx UI 버전 2.4.3 미만
⚔️ 공격 벡터
인증된 사용자가 자동 백업의 이름을 경로 조작 문자(예: ../)를 포함하여 생성 또는 수정
🛡️ 대응 방법
Nginx UI를 최신 버전인 2.4.3 이상으로 업데이트
🔧 검증 코드
명령어 실행 결과로 버전 번호 2.4.3이 출력되면 취약점이 해결된 상태입니다.
curl -s http://localhost/version | grep -E '2.4.3'