🇰🇷 한글 설명
Dify는 오픈소스 LLM 앱 개발 플랫폼입니다. 1.13.1 이전 버전에서는 POST /api/files/upload 경로를 통해 인증되지 않은 사용자도 XSS가 포함된 SVG 파일을 업로드할 수 있으며, 인증이 필요한 POST /v1/files/upload 경로도 동일하게 취약합니다. 해당 문제는 1.13.1 버전에서 패치되었습니다.
💡 쉬운 설명
Dify라는 AI 앱 개발 도구에 악성 이미지 파일을 업로드할 수 있는 보안 결함이 있습니다. 공격자는 이를 이용해 다른 사용자의 브라우저에서 악성 스크립트를 실행시킬 수 있습니다.
🇺🇸 원문 (English)
Dify is an open-source LLM app development platform. Prior to version 1.13.1, using the method POST /api/files/upload, any unauthenticated user can upload an SVG file with XSS. The method POST /v1/files/upload, which requires authentication through the application API, is also vulnerable. This issue has been patched in version 1.13.1.
📍 영향받는 시스템
Dify 1.13.1 미만 버전
⚔️ 공격 벡터
공격자가 XSS 스크립트를 포함한 SVG 파일을 파일 업로드 API로 전송하고, 피해자가 해당 파일에 접근할 때 스크립트가 실행됨
🛡️ 대응 방법
Dify를 1.13.1 이상 버전으로 업데이트하고, 업로드 파일의 MIME 타입 검증 및 SVG 파일 새니타이징을 적용
🔧 검증 코드
출력된 버전이 1.13.1 미만이면 취약한 상태이며, 1.13.1 이상이면 패치가 적용된 것입니다. 결과가 없으면 Docker 환경이 아니므로 직접 버전 파일이나 설치 경로를 확인해야 합니다.
docker inspect --format '{{index .Config.Labels "org.opencontainers.image.version"}}' $(docker ps --filter name=dify --format '{{.Names}}' | head -1) 2>/dev/null