🇰🇷 한글 설명
ORAS CLI 1.3.2 이하 버전에서 재귀적 참조 탐색 시 방문한 디스크립터를 추적하지 않는 취약점이 발견되었습니다. 악의적인 OCI 레지스트리가 순환 참조 그래프를 반환할 경우, 무한 재귀로 인해 메모리 사용량이 급증하고 CPU 자원이 고갈되어 서비스 거부(DoS) 상태가 발생할 수 있습니다.
💡 쉬운 설명
프로그램이 데이터를 찾을 때 끝없이 반복되는 구조를 만나면 멈추지 않고 계속 작동하여 컴퓨터 자원을 모두 써버리는 문제입니다. 이로 인해 자동화 도구나 작업 흐름이 중단될 수 있습니다.
🇺🇸 원문 (English)
ORAS (OCI Registry As Storage) is a CLI and library for managing artifacts in OCI registries. In ORAS CLI versions up to and including 1.3.2, the recursive referrer traversal does not track visited descriptors, so a malicious OCI registry that returns a cyclic referrer graph causes unbounded recursion and memory growth. This affects oras discover, whose recursive traversal is enabled by default because the --depth option defaults to 0 (unlimited), as well as the recursive referrer counting used by the oras backup and oras restore workflows. A cyclic graph can be as simple as A referring to B and B referring back to A. A malicious registry can use this to cause a client-side denial of service, exhausting CPU and memory and hanging automation or CI/CD pipelines that run ORAS against untrusted registry metadata. The vulnerability does not extend to code execution, artifact substitution, or integrity bypass. This issue has been fixed in version 1.3.3.
📍 영향받는 시스템
ORAS CLI versions up to and including 1.3.2
⚔️ 공격 벡터
악의적인 OCI 레지스트리가 순환 참조(A가 B를 참조하고 B가 다시 A를 참조) 구조의 메타데이터를 제공하여 클라이언트를 공격
🛡️ 대응 방법
ORAS CLI를 취약점이 해결된 버전인 1.3.3 이상으로 업데이트하십시오.
🔧 검증 코드
출력된 버전 번호가 1.3.3 미만(예: 1.3.2 이하)이면 취약한 상태입니다.
oras version 2>/dev/null | grep -E 'oras version [0-9]+\.[0-9]+\.[0-9]+'