Spring Framework Inefficient Regular Expression Complexity
Research is free — Hunters explains how the bug works, the root-cause code pattern, how the fix addresses it, and how to test whether a target is affected, in chat. Investigate & write exploit is a paid run — the engine reads the advisory and fix commits, then builds and validates a working proof-of-concept exploit with reproduction steps.
Affected versions
Details
Algorithmic complexity vulnerability in the java.util.regex.Pattern.compile method in Sun Java Development Kit (JDK) before 1.6, when used with spring.jar in SpringSource Spring Framework 1.1.0 through 2.5.6 and 3.0.0.M1 through 3.0.0.M2 and dm Server 1.0.0 through 1.0.2, allows remote attackers to cause a denial of service (CPU consumption) via serializable data with a long regex string containing multiple optional groups, a related issue to CVE-2004-2540.
The fix
References
- ADVISORYhttps://nvd.nist.gov/vuln/detail/CVE-2009-1190
- WEBhttps://bugzilla.redhat.com/show_bug.cgi?id=497161
- WEBhttps://exchange.xforce.ibmcloud.com/vulnerabilities/50083
- WEBhttp://www.packetstormsecurity.org/hitb06/DAY_1_-_Marc_Schoenefeld_-_Pentesting_Java_J2EE.pdf
- WEBhttp://www.springsource.com/securityadvisory