A denial-of-service vulnerability was found in the Drools DRL expression parser (org.drools:drools-drl-parser). The ANTLR4-generated DRL expression grammar parses parenthesised sub-expressions through mutually recursive descent rules with no limit on nesting depth. When a deeply nested parenthesised constraint expression (approximately 300-400 levels) is parsed, the parsing thread exhausts its stack and a java.lang.StackOverflowError is raised and propagates out of the parse call instead of being converted into a DroolsParserException. An actor able to supply a crafted DRL expression to an application that parses untrusted DRL can cause a denial of service.
Metrics
Affected Vendors & Products
Advisories
No advisories yet.
Fixes
Solution
No solution given by the vendor.
Workaround
No workaround given by the vendor.
References
History
Tue, 03 Nov 2026 00:30:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | A denial-of-service vulnerability was found in the Drools DRL expression parser (org.drools:drools-drl-parser). The ANTLR4-generated DRL expression grammar parses parenthesised sub-expressions through mutually recursive descent rules with no limit on nesting depth. When a deeply nested parenthesised constraint expression (approximately 300-400 levels) is parsed, the parsing thread exhausts its stack and a java.lang.StackOverflowError is raised and propagates out of the parse call instead of being converted into a DroolsParserException. An actor able to supply a crafted DRL expression to an application that parses untrusted DRL can cause a denial of service. | |
| Title | drools-drl-parser: uncontrolled recursion when parsing deeply nested parenthesised expressions leads to denial of service (StackOverflowError) | |
| Weaknesses | CWE-674 | |
| References |
| |
| Metrics |
threat_severity
|
cvssV3_1
|
Projects
Sign in to view the affected projects.
No data.
No data.
No data.
OpenCVE Enrichment
No data.
Weaknesses