The major security vulnerability of struts2 lies in the ONGL expression and is attacked by splicing java code in the URL.
In terms of the vulnerability, struts2 implements a dynamic concatenation of java code and then dynamically compiles the code snippet to execute it.
The Expression Engine considers it part of the code snippet.
Tragedy!
Therefore, I come to the conclusion that any function that concatenates code to dynamically compile and execute code at runtime may be injected with malicious code!
SQL injection is a good example. To put it bluntly, the problem of struts2 is essentially the same as that of SQL injection.
They all achieve the goal of destruction by executing the spliced malicious code!
So let's take a look at the Toolkit or framework that dynamically concatenate dynamic execution functions when running. They may all be exploited to discover high-risk vulnerabilities.