Bug 2565142 (CVE-2026-120420) - CVE-2026-120420 drools-drl-parser: uncontrolled recursion when parsing deeply nested parenthesised expressions leads to denial of service (StackOverflowError)
Summary: CVE-2026-120420 drools-drl-parser: uncontrolled recursion when parsing deeply...
Keywords:
Status: NEW
Alias: CVE-2026-120420
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Product Security
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-11-02 12:27 UTC by OSIDB Bzimport
Modified: 2026-11-02 14:42 UTC (History)
8 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description OSIDB Bzimport 2026-11-02 12:27:27 UTC
Drl10ExprParser.parse feeds the constraint text into the ANTLR4-generated DRL10Expressions grammar. Parenthesised sub-expressions are parsed by mutually recursive descent rules (unaryExpressionNotPlusMinus -> castExpression/primary/parExpression -> conditionalExpression ... shiftExpression/additiveExpression ...); each nesting level adds one set of grammar frames with no depth counter. At ~300-400 levels the parser thread exhausts its stack and a raw java.lang.StackOverflowError propagates out of Drl10ExprParser.parse (syntax errors are collected, but stack exhaustion is not converted into a DroolsParserException).


Note You need to log in before you can comment on or make changes to this bug.