Struts2漏洞預警

發佈時間:2014-10-21

Struts2 devMode導致遠程代碼執行漏洞

甚麼是devMode?

所謂的devMode模式,看名稱也知道,是為Struts2開發人員調試程序準備的,在此模式下可以方便地查看日誌等信息。默認情況下,devMode模式是關閉的。不過實際上仍然有很多網站上線的時候就赤裸裸地採用devMode模式,自然面臨更大的安全問題,需要盡快修復。

影響範圍:

當Struts開啓devMode時,該漏洞將影響Struts 2.1.0–2.5.1,通殺Struts2所有版本。

修復方案:

關閉devMode:在struts.xml 設置

<constant name="struts.devMode" value="false" />



Struts2相關漏洞說明:

===========================================================================================

[+]11 S2-046  CVE-2017-5638   可執行CMD命令

[+]10 S2-045  CVE-2017-5638   可執行CMD命令

[+]9 devMode CVE-xxxx-xxxx   可GetShell/獲取物理路徑/執行CMD命令

[+]8 S2-037  CVE-2016-4438   可GetShell/獲取物理路徑/執行CMD命令

[+]7 S2-032  CVE-2016-3081   可GetShell/獲取物理路徑/執行CMD命令

[+]6 S2-020  CVE-2014-0094   可GetShell

[+]5 S2-019  CVE-2013-4316   可GetShell/獲取物理路徑/執行CMD命令

[+]4 S2-016  CVE-2013-2251   可GetShell/獲取物理路徑/執行CMD命令

[+]3 S2-013  CVE-2013-1966   可GetShell/獲取物理路徑/執行CMD命令

[+]2 S2-009  CVE-2011-3923   可GetShell/獲取物理路徑/執行CMD命令

[+]1 S2-005  CVE-2010-1870   可GetShell/獲取物理路徑/執行CMD命令/列文件目錄

===========================================================================================


解決辦法:

將struts2的jar包更新到最新版,請根據自己所使用的版本進行升級

http://mirrors.hust.edu.cn/apache/struts/
 

另外最重要的一點,如果您是自主部署的java環境,請務必不要使用root或者管理員賬號來運行java應用!!