Struts2 漏洞复现之s2-001
原理:
该漏洞因为用户提交表单数据并且验证失败时,后端会将用户之前提交的参数值使用 OGNL 表达式 %{value} 进行解析,然后重新填充到对应的表单数据中。例如注册或登录页面,提交失败后端一般会默认返回之前提交的数据,由于后端使用 %{value} 对提交的数据执行了一次 OGNL 表达式解析,所以可以直接构造 Payload 进行命令执行。
复现步骤
1. 进入vulhub目录下漏洞环境的目录
cd vulhub-master/struts2/s2-001
2.查看S2-001 远程代码执行漏洞
[root@localhost s2-001] cat README.zh-cn.md