🔍 CVE-2026-55771

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

🇰🇷 한글 설명

CedarJava는 세분화된 인가 결정을 위해 사용되는 Cedar 정책 언어의 오픈소스 Java 구현체입니다. 4.9.0 이전 버전에서는 EntityIdentifier.equals()의 null 및 자기 참조 검사 분기가 뒤바뀌어 잘못된 동등성 비교가 발생할 수 있습니다. Cedar의 인가 결정 자체에는 영향이 없으며, 엔티티 식별자에 대해 자체 동등성 검사를 수행하는 통합 개발자에게만 영향을 줄 수 있습니다.

💡 쉬운 설명

CedarJava 라이브러리에서 두 대상이 같은지 비교하는 코드의 논리가 거꾸로 되어 있습니다. 이 문제는 Cedar가 권한을 판단하는 핵심 결과에는 영향을 주지 않지만, 개발자가 직접 비교 로직을 쓴 경우에는 잘못된 결과가 나올 수 있습니다.

🇺🇸 원문 (English)

CedarJava is an open source Java implementation of the Cedar policy language, used for fine-grained authorization decisions. In versions prior to 4.9.0, the EntityIdentifier.equals() has inverted null/self branches which could lead to incorrect equality comparisons. The EntityIdentifier.equals() method has inverted logic for null and self-reference checks, returning true for null comparisons and false for self-comparisons. This does not affect Cedar authorization decisions (computed in Rust from JSON), but could affect integrators who perform their own equality checks on entity identifiers. This issue has been fixed in version 4.9.0.

📍 영향받는 시스템

CedarJava 4.9.0 이전 버전을 사용하며 EntityIdentifier 동등성 비교를 직접 구현한 Java 애플리케이션

⚔️ 공격 벡터

공격자가 조작된 엔티티 식별자를 입력해 통합 측 자체 동등성 검사를 우회하거나 잘못된 비교 결과를 유도할 수 있음

🛡️ 대응 방법

CedarJava를 4.9.0 이상으로 업그레이드하고, 자체 동등성 검사 로직이 있다면 null 및 자기 참조 처리를 재검토

🔧 검증 코드

출력된 의존성 선언에서 버전이 4.9.0 미만이면 취약하고, 4.9.0 이상이거나 결과가 없으면 해당 프로젝트에서는 영향이 없음

Shell / Script
grep -ri 'cedar' --include=*.xml --include=*.gradle --include=*.kts --include=*.properties . 2>/dev/null | grep -iE 'cedarjava|cedar-java'

📊 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