The Struts 2 DefaultActionMapper supports a method for short-circuit navigation state changes by prefixing parameters with "action:" or "redirect:", followed by a desired navigational target expression. This mechanism was intended to help with attaching navigational information to buttons within forms.
In Struts 2 before 2.3.15.1 the information following "action:", "redirect:" or "redirectAction:" is not properly sanitized. Since said information will be evaluated as OGNL expression against the value stack, this introduces the possibility to inject server side code.
{
"cwe_ids": [
"CWE-20",
"CWE-74"
],
"github_reviewed": true,
"github_reviewed_at": "2022-11-03T19:11:13Z",
"nvd_published_at": "2013-07-20T03:37:00Z",
"severity": "CRITICAL"
}