Apache Strusts2出现高危反序列化漏洞 攻击者可控制web服务器
▌作者:Swati Khandelwal
▌翻译:360代码卫士团队
安全研究员在Aapche Struts web应用框架中发现了一个严重的远程代码执行漏洞,可导致远程攻击者在受影响服务器上运行恶意代码。
Apache Struts是一款免费的开源MVC框架,供Java语言开发web应用,支持REST、AJAX和JSON。
这个漏洞(CVE-2017-9805) 是一个编程错误,存在于Struts处理来自不信任来源的数据方式中。具体来讲,StrutsREST插件未能在反序列化时正确处理XMLpayload。
从2008年起,所有Apache Struts版本(从Struts 2.5到Struts 2.5.12)均受影响,导致所有使用该框架的REST插件的web应用程序易受远程攻击。
发现这个漏洞的其中一名安全研究人员指出,“数量极其庞大、类型众多的组织机构”都在使用Struts框架。这些组织机构包括美国洛克希德马丁公司、沃达丰、维珍航空公司和美国国税局等。
研究人员还指出,这个漏洞非常容易遭利用,攻击者需要的仅仅是一个web浏览器。他们需要做的就是以某种特定形式提交一个恶意XML代码以触发目标服务器上的漏洞。如成功利用该漏洞,攻击者就能完全控制受影响服务器,最终渗透到位于同一网络中的其它系统。
研究人员指出,它是Java中存在的一个不安全的反序列化漏洞,跟其他研究员于2015年从Apache CommonsCollections中发现的漏洞类似,都允许执行任意代码。
自此,近期很多Java应用程序都受多个类似漏洞的影响。
该漏洞已在Struts版本2.5.13中修复,强烈建议管理员尽快升级至最新版本。
目前该漏洞的具体技术详情和PoC尚未公开,目的是为管理员提供足够时间更新系统。
本文由360代码卫士编译,不代表360观点,转载请注明“转自360代码卫士www.codesafe.cn”。