🇰🇷 한글 설명
vertaai/modeldb는 파일 업로드 기능에서 사용자 입력 파일 경로를 부적절하게 검증하여 경로 순환 공격에 취약합니다. 공격자는 'artifact_path' 파라미터를 조작하여 파일 시스템의 임의의 위치에 파일을 쓸 수 있으며, Docker 외부에서 실행 중인 애플리케이션의 중요 파일을 덮어써서 원격 코드 실행을 유발할 수 있습니다.
💡 쉬운 설명
ModelDB는 파일을 업로드할 때 저장 경로를 제대로 검증하지 않아서, 공격자가 시스템의 원하는 위치에 파일을 저장할 수 있습니다. 이를 악용하면 악성 코드를 실행할 수 있습니다.
🇺🇸 원문 (English)
vertaai/modeldb is vulnerable to a path traversal attack due to improper sanitization of user-supplied file paths in its file upload functionality. Attackers can exploit this vulnerability to write arbitrary files anywhere in the file system by manipulating the 'artifact_path' parameter. This flaw can lead to Remote Code Execution (RCE) by overwriting critical files, such as the application's configuration file, especially when the application is run outside of Docker. The vulnerability is present in the NFSController.java and NFSService.java components of the application.
📍 영향받는 시스템
vertaai/modeldb (패치 적용 전 모든 버전)
⚔️ 공격 벡터
파일 업로드 시 artifact_path 파라미터에 상대경로(../)를 주입하여 파일시스템 임의의 위치에 파일 작성
🛡️ 대응 방법
최신 버전으로 업그레이드하고 공식 보안 패치를 적용하며, 파일 경로 입력값을 엄격하게 검증 및 정규화
🔧 검증 코드
Python 설치 시 Version 필드의 버전번호 확인, Java 설치 시 jar 파일명의 버전정보 확인 - 취약 버전 발견 시 즉시 업그레이드 필요
pip show vertaai-modeldb 2>/dev/null || find . -name '*modeldb*.jar' 2>/dev/null | head -1