🔍 CVE-2026-55772

8.8
CVSS Score
HIGH
2026-07-13
2026-10-24 22:10
✅ 완료

🇰🇷 한글 설명

CedarJava는 세밀한 인가 결정을 위한 Cedar 정책 언어의 오픈소스 Java 구현체입니다. 2.3.6, 3.4.1, 4.9.0 이전 버전에서는 특정 조건에서 부적절한 입력 처리로 인해 Java-Rust FFI 경계에서 Record-to-Entity 타입 혼동이 발생할 수 있습니다. CedarMap 직렬화 시 예약된 키(__entity, __extn)를 검증하지 않아, 공격자가 제어하는 키를 통해 레코드를 엔티티 참조로 해석하게 만들 수 있습니다.

💡 쉬운 설명

인증 정책을 처리하는 라이브러리가 사용자가 입력한 특정 키를 시스템 예약어로 잘못 인식할 수 있습니다. 이로 인해 정책 판단이 의도와 다르게 바뀔 수 있습니다.

🇺🇸 원문 (English)

CedarJava is an open source Java implementation of the Cedar policy language, used for fine-grained authorization decisions. In versions prior to 2.3.6, 3.4.1 and 4.9.0, under certain circumstances, improper input handling could allow Record-to-Entity type confusion across the Java-Rust FFI boundary. CedarJava sends authorization requests to the Rust cedar-policy evaluator as JSON. The JSON protocol reserves magic single-key object shapes (__entity and __extn) for entity references and extension values. When serializing a CedarMap, there is no validation preventing these reserved keys from being used. If an integrating service builds a CedarMap from caller-supplied key/value data (such as request headers, user-defined metadata, or resource tags), an actor who controls those keys could cause the Rust evaluator to interpret a record as an entity reference. This issue requires the integrating service to build a CedarMap where the an actor controls the keys, and a policy must reference that value in a when/unless clause. This vulnerability has been fixed in versions 2.3.6, 3.4.1, and 4.9.

📍 영향받는 시스템

CedarJava 2.3.6 미만, 3.4.1 미만, 4.9.0 미만 버전 (사용자 제공 키로 CedarMap을 구성하는 서비스)

⚔️ 공격 벡터

공격자가 요청 헤더·메타데이터·리소스 태그 등 CedarMap의 키를 제어하고, 해당 값이 when/unless 조건에서 참조되는 정책을 우회하도록 __entity/__extn 형태의 키를 주입

🛡️ 대응 방법

CedarJava를 2.3.6, 3.4.1, 4.9.0 이상으로 업데이트하고, 사용자 입력으로 CedarMap 키를 구성할 경우 __entity, __extn 등 예약 키를 필터링

🔧 검증 코드

출력된 Implementation-Version 값이 2.3.6, 3.4.1, 4.9.0 중 해당 메이저 버전의 패치 버전 이상이면 수정된 것이고, 그보다 낮으면 취약한 버전입니다.

Shell / Script
find / -name '*cedar*java*.jar' 2>/dev/null | xargs -I{} sh -c 'unzip -p {} META-INF/MANIFEST.MF 2>/dev/null | grep -i version'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

💻 영향받는 소프트웨어

Magento Open Source