🇰🇷 한글 설명
Arcane 1.19.2 미만 버전에서 관리자 권한 확인 누락으로 인해 발생하는 취약점입니다. 인증된 일반 사용자가 전역 환경 변수 파일(.env.global)을 덮어써서 모든 프로젝트의 설정값을 조작할 수 있습니다. 이를 통해 공격자는 악성 이미지를 배포하거나 데이터베이스 자격 증명을 탈취하는 등 공급망 공격을 수행할 수 있습니다.
💡 쉬운 설명
일반 사용자가 관리자처럼 시스템 전체의 중요한 설정값을 마음대로 바꿀 수 있는 보안 구멍이 발견되었습니다. 이 설정을 바꾸면 다른 사용자들이 사용하는 프로그램의 경로를 공격자의 서버로 돌리거나 비밀번호를 빼낼 수 있습니다.
🇺🇸 원문 (English)
Arcane is an interface for managing Docker containers, images, networks, and volumes. Prior to 1.19.2, the PUT /api/environments/{id}/templates/variables endpoint, which writes the system-wide .env.global file used for variable substitution in every project's compose file, is missing an admin authorization check. Any authenticated non-admin user can call this endpoint with their bearer token or API key and overwrite the global environment variables that are merged into every project deployment. By overriding values like REGISTRY, IMAGE, DATABASE_URL, or SECRET_KEY that other users reference via ${VAR} in compose files, an attacker can redirect image pulls to attacker-controlled registries (supply-chain RCE on the Docker host), exfiltrate database credentials, or disrupt all projects. This vulnerability is fixed in 1.19.2.
📍 영향받는 시스템
Arcane versions prior to 1.19.2
⚔️ 공격 벡터
인증된 비관리자 사용자가 API 엔드포인트(PUT /api/environments/{id}/templates/variables)를 호출하여 전역 환경 변수 파일 조작
🛡️ 대응 방법
Arcane 버전을 1.19.2 이상으로 업데이트하십시오.
🔧 검증 코드
명령어 결과에 1.19.0, 1.19.1 또는 1.19.2 미만의 버전이 나타나면 취약한 상태입니다.
curl -s http://<target-ip>/api/version | grep -E '1.19.[0-2]'