S2-045 远程代码执行漏洞(CVE-2017-5638)
受影响的版本:Struts 2.3.5 - Struts 2.3.31、Struts 2.5 - Struts 2.5.10
参考:
现实告诉我: 保持好奇心,享受孤独
http://rickgray.me/2016/05/06/review-struts2-remote-command-execution-vulnerabilities.html
漏洞是当用户提交表单数据验证失败时,服务器用OGNL表达式解析用户之前提交的参数值,
%{value}
并重新填充对应的表单数据。例如在注册或登录页面。当提交失败时,服务器一般会默认返回之前提交的数据。由于服务器用于%{value}
对提交的数据执行 OGNL 表达式解析,因此可以直接发送有效载荷来执行命令。