The vulnerability is a pre-authentication denial of service in Parse Server, caused by a regular expression susceptible to polynomial backtracking (ReDoS). The root cause lies in the fromString function within the now-removed src/ClientSDK.js file. This function used the regex /([-a-zA-Z]+)([0-9\\.]+)/ to parse the client SDK version from incoming requests.
The primary execution path for this vulnerability is through the handleParseHeaders middleware. This function is triggered on every request to a /parse/* endpoint. It extracts the client version from either the X-Parse-Client-Version HTTP header or the _ClientVersion field in the JSON body and passes it to the vulnerable fromString function. An attacker can send a specially crafted string (e.g., a long sequence of hyphens) that causes the regex engine to enter a state of catastrophic backtracking, consuming significant CPU resources for an extended period and effectively causing a denial of service.
An additional, less direct path exists through the RestWrite._updateResponseWithData method, which calls ClientSDK.supportsForwardDelete, a function that also depends on the vulnerable fromString parser. The patch remediates the vulnerability by completely removing the client version parsing logic, including the ClientSDK.js file and all calls to it, thereby eliminating the vulnerable regex and the attack vector.