048漏洞究竟是什么,它为何成为网络安全领域关注的焦点?

1、触发点:该漏洞的触发点位于org.apache.struts2.s1.Struts1Action.execute()方法中,这个方法是用于将Struts 1时代的Action包装成为Struts 2中的Action,以使它们能够在Struts 2框架中继续工作。

2、漏洞成因:在Struts1Action的execute方法中,会调用对应的Struts1 Action的execute方法,在调用完后,会检查request中是否设置了ActionMessage,如果是,则将会对action messages进行处理并回显给客户端,处理时使用了getText方法,这里就是漏洞的触发点,所以漏洞的触发条件是在struts1 action中,将来自客户端的参数值设置到了action message中。

048漏洞究竟是什么,它为何成为网络安全领域关注的焦点?插图1
(图片来源网络,侵删)

3、漏洞利用:攻击者可以构造恶意的字段值通过Struts2的Struts1的插件,远程执行代码,大概意思就是说“Struts 2.3.x系列中的Struts 1插件示例中的Struts Showcase应用程序中可以执行系统命令,网站文档里的写法才会导致这种问题。

4、安全建议:开发者应避免使用如下的方式,即不要将用户可控的值添加到ActionMessage并在客户前端展示,导致其进入getText函数,最后message被当作ognl表达式执行。

S2-048是一个高危漏洞,需要引起足够的重视,开发者应当及时更新Struts2的版本,避免使用不安全的代码编写方式,以防止可能的攻击。

048漏洞究竟是什么,它为何成为网络安全领域关注的焦点?插图3
(图片来源网络,侵删)

本文来源于互联网,如若侵权,请联系管理员删除,本文链接:https://www.9969.net/62349.html

小末小末
上一篇 2024年9月27日 20:51
下一篇 2024年9月27日 21:02

相关推荐