CVE-2026-55773: CWE-94: Improper Control of Generation of Code ('Code Injection') in cedar-policy cedar-java
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 Cedar-expression injection via unescaped toCedarExpr(). The toCedarExpr() method on Cedar Value types does not escape special characters (" or \) when converting values to Cedar source code. If an integrator uses toCedarExpr() to build policy text at runtime from user-controlled values, an actor could inject arbitrary Cedar expressions. For example, injecting || true into a permit ... when { ... } clause could make the permit unconditional, or injecting && false into a forbid clause could prevent the forbid from triggering. This issue requires the integrator to use toCedarExpr() to build policy text at runtime from user-controlled input. This vulnerability has been fixed in versions 2.3.6, 3.4.1, and 4.9.0.
AI Analysis
Technical Summary
CVE-2026-55773 involves improper control of code generation (CWE-94) in cedar-java's toCedarExpr() method, which does not escape special characters like " or \ when converting values to Cedar source code. This allows an attacker to inject arbitrary Cedar expressions if the integrator uses toCedarExpr() to build policy text at runtime from user-controlled input. For example, injecting '|| true' into a permit clause could make the permit unconditional, or injecting '&& false' into a forbid clause could disable the forbid condition. The vulnerability affects cedar-java versions prior to 2.3.6, versions from 3.0.0 up to but not including 3.4.1, and versions from 4.0.0 up to but not including 4.9.0. Fixed versions are 2.3.6, 3.4.1, and 4.9.0.
Potential Impact
Successful exploitation allows an attacker to inject arbitrary Cedar expressions into policy text, potentially bypassing or disabling authorization controls. This can lead to unauthorized access or denial of legitimate access, impacting confidentiality, integrity, and availability of the system relying on cedar-java for authorization decisions.
Mitigation Recommendations
This vulnerability has been fixed in cedar-java versions 2.3.6, 3.4.1, and 4.9.0. Users should upgrade to one of these fixed versions to remediate the issue. Since no official patch or temporary fix is indicated beyond upgrading, applying the fixed versions is the recommended mitigation. Integrators should also avoid building policy text at runtime from untrusted input using toCedarExpr().
CVE-2026-55773: CWE-94: Improper Control of Generation of Code ('Code Injection') in cedar-policy cedar-java
Description
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 Cedar-expression injection via unescaped toCedarExpr(). The toCedarExpr() method on Cedar Value types does not escape special characters (" or \) when converting values to Cedar source code. If an integrator uses toCedarExpr() to build policy text at runtime from user-controlled values, an actor could inject arbitrary Cedar expressions. For example, injecting || true into a permit ... when { ... } clause could make the permit unconditional, or injecting && false into a forbid clause could prevent the forbid from triggering. This issue requires the integrator to use toCedarExpr() to build policy text at runtime from user-controlled input. This vulnerability has been fixed in versions 2.3.6, 3.4.1, and 4.9.0.
CVSS v3.1
Score 8.8high
Affected software
pkg:maven/io.cedar-policy/cedar-javaRun on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
CVE-2026-55773 involves improper control of code generation (CWE-94) in cedar-java's toCedarExpr() method, which does not escape special characters like " or \ when converting values to Cedar source code. This allows an attacker to inject arbitrary Cedar expressions if the integrator uses toCedarExpr() to build policy text at runtime from user-controlled input. For example, injecting '|| true' into a permit clause could make the permit unconditional, or injecting '&& false' into a forbid clause could disable the forbid condition. The vulnerability affects cedar-java versions prior to 2.3.6, versions from 3.0.0 up to but not including 3.4.1, and versions from 4.0.0 up to but not including 4.9.0. Fixed versions are 2.3.6, 3.4.1, and 4.9.0.
Potential Impact
Successful exploitation allows an attacker to inject arbitrary Cedar expressions into policy text, potentially bypassing or disabling authorization controls. This can lead to unauthorized access or denial of legitimate access, impacting confidentiality, integrity, and availability of the system relying on cedar-java for authorization decisions.
Mitigation Recommendations
This vulnerability has been fixed in cedar-java versions 2.3.6, 3.4.1, and 4.9.0. Users should upgrade to one of these fixed versions to remediate the issue. Since no official patch or temporary fix is indicated beyond upgrading, applying the fixed versions is the recommended mitigation. Integrators should also avoid building policy text at runtime from untrusted input using toCedarExpr().
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- GitHub_M
- Date Reserved
- 2026-06-17T14:34:51.881Z
- Cvss Version
- 3.1
- State
- PUBLISHED
- Remediation Level
- null
Threat ID: 6a553d7068715ace43bb8a72
Added to database: 07/13/2026, 19:33:04 UTC
Last enriched: 07/21/2026, 18:53:41 UTC
Last updated: 08/26/2026, 22:52:11 UTC
Views: 78
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
External Links
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.