搜尋
首頁運維安全Struts2框架站點風險的範例分析

Struts2框架站點風險的範例分析

May 30, 2023 pm 12:32 PM
struts2

1.     概述

Apache軟體基金會(ASF)贊助的開源專案是Struts。該項目最初是Jakarta項目的分支,隨後被提升為ASF的頂級項目。它透過採用Java Servlet/JSP技術,實現了基於Java EE Web應用的Model-View-Controller〔MVC〕設計模式的應用框架〔Web Framework〕,是MVC經典設計模式中的一個經典產品。 

在Java EE的Web應用發展的初期,除了使用Servlet技術以外,普遍是在JavaServer Pages(JSP)的原始碼中,採用HTML與Java程式碼混合的方式進行開發。這兩種方法在混合表現與業務邏輯程式碼方面不可避免,為前期開發和後期維護帶來了巨大的複雜度。為了擺脫上述的約束與限制,把業務邏輯代碼從表現層中清晰的分離出來,2000年,Craig McClanahan採用了MVC的設計模式開發Struts。該框架產品曾經被視為最廣泛和最流行的JAVA WEB應用框架

   Struts2是一個基於MVC設計模式的Web應用框架,它本質上相當於一個servlet,在MVC設計模式中, Struts2作為控制器(Controller)來建立模型與視圖的資料互動。 Struts 2是Struts的下一代產品,是在struts 1和WebWork的技術基礎上進行了合併的全新的Struts 2框架

2.     漏洞盤點

2.1.  漏洞歷史

隨著Struts2框架的普及,越來越多的企業單位使用Struts2框架進行開發,近年來多次爆出高危險漏洞,多個政府站點,銀行、大型網路公司等單位,受到影響,例如:2016年12月爆出京東12G 用戶資料洩露,其中包括使用者名稱、密碼、信箱、QQ、電話號碼、身分證等多個維度,資料多達數千萬條,究其原因源自於2013 年Struts 2 的安全漏洞問題。當時國內幾乎所有網路公司及大量銀行、政府機構都受到了影響,導致大量資料洩露,而每次struts2爆出漏洞後各大網路漏洞平台也接收到多個回饋如:


Struts2框架站點風險的範例分析

Struts2的程式碼執行問題最早要追溯到2010年,當時來自Google安全Team的Meder Kydyraliev發現可以透過用unicde編碼的形式繞過參數攔截器對特殊字符「#」的過濾,造成程式碼執行問題,官方漏洞編號S2-003,

回顧struts2的漏洞歷史,我們發現官方難辭其咎,首先,開發人員安全意識不強,雖然採取了基本的安全措施,但是要形同虛設。其次,我們覺得官方的修復措施缺乏力度,似乎只是敷衍了事,而未能真正解決問題的根源。再就是,官方的開放精神確實很震撼,竟然直接將漏洞的PoC掛在官網,這樣給了很多人進一步研究漏洞利用的機會,這個也是導致問題更加嚴重的一個原因。

2.2.  struts2漏洞盤點

影響比較大,利用比較廣泛的struts2漏洞:

CVE-2010-1870XWork ParameterInterceptors bypass allows OGNLstatement execution

CVE-2012-0392struts2 DevMod Remote Command Execution Vulnerability

CVE-2011-3923Struts

CVE-2013-1966Struts2 <d includes 屬性.遠端指令執行漏洞

CVE-2013-2251Struts2

Struts2

Struts2

CNVD-2016-02506,CVE-2016-3081,受影響版本Struts 2.3.20 - StrutsStruts 2.3. .20.3和2.3.24.3除外)

CVE編號:CVE-2016-4438 Struts(S2-037)遠端程式碼執行漏洞,受影響版本:Struts 2.3.20 - Struts Struts 2.3.28.1

CVE-2017-5638 受影響版本:Struts 2.3.5 – Struts 2.3.31

Struts 2.5 –Struts 2.5.10

其他具體可參考struts2官網提供的漏洞歷史:

https://cwiki.apache.org/confluence/display/WW/Security Bulletins

Struts2框架站點風險的範例分析

##3 .     分佈情況

針對漏洞頻發的Struts2框架我們對省內使用Struts框架的分佈情況進行了調查統計,透過對個地市站點進行指紋識別,繪製出省內各地市使用Strust2框架分佈圖表如下:


Struts2框架站點風險的範例分析

   結合大數據分析和關鍵字識別我們對採集到的使用Strust2網站所在的產業狀況進行分析,繪製出如下圖表:


Struts2框架站點風險的範例分析

特定表格資料:

政府部門 教育機構 9.80%  3  ##110  6.96%  ##6  
#序號   行業類型   數量   #百分比  
#1  
447   28.29%   2  
2   教育機構  155  
3   ##9.80%  
金融業 ##110   6.96%  
#4   保險業  28   1.77%  
5   證券業  14   0.88%  

能源產業 

8  

0.50%  7  交通產業 5.88%  114  #網路企業10  從上圖可以看出位於前三名(註:不計其他企業)的是政府部門(佔28.29%)、網路企業(25.18%) 、教育機構(9.8%)   我們針對採集到的使用Struts2中間件站點進行漏洞檢測,本次使用互聯網上影響比較大的幾個高危險漏洞進行驗證,檢測漏洞(S2-045、 S2-037、S2-032、S2-016)的存在修復個加固情況,經過對1580個站點樣本進行檢測,發現仍有部分站點Struts2漏洞並未修復,對檢測出漏洞的站點統計資料如下圖:
93   5.88%  
8   電信業者 
7.21%   9  
398   25.18%  
其他企業  #213   13.48 %  

序號

行業

##存在漏洞數量

1

政府部門

3############2#######教育機構######2############3######金融業#####1############4 ######網路企業######2############5######其他#######2################# #######檢測中我們發現有很多網站Stuts2之前的舊漏洞尚未進行過修復,從而在Stuts2漏洞的中,將網站註冊用戶赤裸裸地暴露在黑客攻擊槍口面前。 ######4.     安全建議######隨著情勢日益複雜化,資訊安全已變成不只涉及科技的問題。科技的發展是一把雙面刃,其能造福人類,亦能產生破壞性的功效。而這一點,除了科技本身之外,或許更多的要從我們的意識層面去把握,面對漏洞帶來如此之大的影響,足以給互聯網業界資訊安全從業人員帶來警醒:資訊安全的警鐘,應時刻長鳴。 ######1、我們在資訊系統開發中應養成良好的開發習慣,多數漏洞從開發階段就存在,而由於開發過程中的疏忽,邏輯漏洞等也會為系統帶來很大的安全風險。 ######2、網站資料及時備份,當系統遭到攻擊時,可以第一時間對被攻擊系統進行恢復。 ######3、對後台服務安裝防毒軟體,定時對伺服器進行病毒查殺,等安全檢查。 ######4、即時留意最新的網路漏洞狀況,及時修補資訊系統存在的漏洞。 ######5、經常性的對系統進行滲透測試,漏洞測試等工作,及時發現問題,及時修復,防止漏洞暴露在互聯網上。 ######6、對不在使用的系統進行及時下線,一般舊系統中存在更多的安全問題,管理不善可能會洩露大量敏感資訊。 ###

以上是Struts2框架站點風險的範例分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:亿速云。如有侵權,請聯絡admin@php.cn刪除

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中