关于Apache Struts2
Struts2是一个基于MVC设计模式的Web应用框架,它本质上至关于一个servlet,在MVC设计模式中,Struts2做为控制器(Controller)来创建模型与视图的数据交互。Struts 2是Struts的下一代产品,是在 Struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架。目前已经不是主流的Web技术,还存留在一些老旧系统中web
漏洞等级
高express
漏洞分析
若是攻击者能够设置Struts 2标签的属性值为恶意的OGNL表达式,则可能形成RCE
apache
影响范围
Struts 2.0.0~2.5.20json
修复建议
开启ONGL表达式注入保护措施 (https://struts.apache.org/security/#proactively-protect-from-ognl-expression-injections-attacks-if-easily-applicable)设计模式
升级到2.5.22及以上版本api
总结
在安全漏洞这块儿Struts2和fastjson惺惺相惜(难兄难弟),一是容易出问题,二是出问题影响大,动不动就是RCE,三是牵连的业务难修复。笔者建议企业按照本身的实际状况制定计划,逐步替换,加快淘汰还在使用struts2系统。安全
参考
【漏洞预警】Apache Struts远程代码执行漏洞(S2-05九、CVE-2019-0230)微信
https://cwiki.apache.org/confluence/display/WW/S2-059app
https://struts.apache.org/security/#proactively-protect-from-ognl-expression-injections-attacks-if-easily-applicable框架
https://cert.360.cn/warning/detail?id=d2b39f48fd31f3b36cc957f23d4777af
https://stackoverflow.com/questions/6134411/jstl-escaping-special-characters/6135001#6135001
关注咱们
本文分享自微信公众号 - 这里是河马(gh_d110440c4890)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。