安全研究

Apache Struts2 遠程代碼執行漏洞

漏洞描述

Struts2是一個基于MVC設計(jì)模式的Web應用(yòng)框架,它本質上(shàng)相當于一個servlet,在MVC設計(jì)模式中,Struts2作(zuò)爲控制器(Controller)來(lái)建立模型與視(shì)圖的數據交互。
Apache Struts2存在S2-057遠程代碼執行漏洞,當定義xml配置時(shí),namespace沒有設置,并且上(shàng)層操作(zuò)沒有設置或者使用(yòng)的是通配符namespace時(shí),可能(néng)導緻遠程命令執行,當使用(yòng)沒有設置value和(hé)action的url标簽的時(shí)候也(yě)會(huì)導緻相同的漏洞

漏洞評級

高(gāo)危

影響範圍

1、定義XML配置時(shí)namespace值未設置且上(shàng)層動作(zuò)配置(Action Configuration)中未設置或用(yòng)通配符namespace可能(néng)會(huì)導緻遠程代碼執行。
2、url标簽未設置value和(hé)action值且上(shàng)層動作(zuò)未設置或用(yòng)通配符namespace可能(néng)會(huì)導緻遠程代碼執行。
影響版本:
Apache Struts2 >=2.3,<=2.3.34
Apache Struts2 >=2.5,<=2.5.16

修複建議(yì)

1、請(qǐng)盡快(kuài)升級到(dào)Apache Struts版本2.3.35或2.5.17,因爲它們還包含關鍵的主動性整體安全方面的改進。
2、驗證您是否以namespace爲基礎,将xml配置文(wén)件中的所有已定義結果設置。同時(shí)要驗證在你(nǐ)的JSP文(wén)件中已經給所有url标簽設置value或者action。
3、已部署使用(yòng)帕拉迪下(xià)一代WEB應用(yòng)防護系統NGWAF的客戶,利用(yòng)專有的動态建模技術,無須升級安全策略即完美(měi)攔截利用(yòng)該漏洞的攻擊。
Copyright © 2019 All Rights Reserved Designed
杭州安存網絡科技有限公司