安全研究

Apache Struts2 遠(yuǎn)程代碼執行漏洞

漏洞描述

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

漏洞評級

高(gāo)危

影響範圍

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

修複建議

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