Skip to Content

什麼是語言表達注射?

程式碼插入是一個關鍵弱點,允許第三方在伺服器端軟體上執行程式碼。表達式語言注入是一種遠端程式碼執行,會揭露伺服器的敏感資料。遠端程式碼會執行並顯示變數、密碼、函數或程式碼。最糟糕的是,它可以讓攻擊者遠端控制伺服器。

什麼是語言表達注射?

表達式語言注入是一種弱點,影響 JavaServer Pages(JSP)、Active Server Pages(ASP)和其他在網路伺服器上託管的表達式語言。這些語言是解譯語言,因此傳送至伺服器的任何程式碼都會在應用程式執行期間編譯,而不是標準編譯語言與二進位可執行檔案。當使用者要求頁面時,程式碼會以解譯語言在伺服器上編譯。

當運算式語言(EL)應用程式易受運算式語言插入的影響時,攻擊者會在查詢字串或表單物件中,將製作的程式碼作為輸入資料傳送至應用程式。程式碼會在執行階段編譯,接著程式碼會顯示變數、密碼和其他敏感資訊。EL 漏洞在過時的翻譯語言版本中很常見,因此傳統應用程式在部署到生產環境之前,應該先經過滲透測試。發生重大事件後,組織需要災害復原計畫,以修復資料揭露和利用。

Expression Language Injection 如何運作

任何執行解譯語言的應用程式都應從輸入中清除程式碼和特殊字元。在不刷洗輸入的情況下,應用程式將接受程式碼並在伺服器上執行。大多數的 EL 注入弱點都涉及 JSP,因此我們將在以下範例中使用 JSP 代碼。以下片段是易受 EL 注入影響的單行程式碼範例:

<spring:message code="${param['message']}" text=""/>

在本範例中,程式碼屬性會取得包含字串的參數。如果攻擊者將程式碼注入參數中,就會在伺服器上編譯並執行。使用者在本地網頁上看不到此程式碼,因此攻擊者使用一般指令碼來尋找 EL 注入弱點。

導致語言表達的常見弱點

與任何注入弱點相似,EL 注入弱點源自於伺服器應用程式未驗證輸入。使用與上述相同的範例,訊息字串可以是無害的字元字串,但也可以是程式碼。假設使用者傳送了下列內容,則不要傳送無害的字串:

${"aaaa".toString().concat(T(java.lang.Runtime).getRuntime().exec('ls -l'))}

以上輸入嘗試在伺服器上執行系統指令 “ls -l”。此命令會列出目前目錄中的檔案和目錄。有了檔案清單,攻擊者就可以嘗試傳送另一個命令,以開啟檔案內容並顯示至其視窗。檔案可能包含敏感資料,如密碼。攻擊者可能從該處存取伺服器,並執行其他惡意動作。

偵測表達語言注入

白盒式和黑盒式滲透測試皆能偵測 EL 注射的漏洞。白盒測試是一種安全專業人員審查漏洞代碼的方法。企業向安全審查人員提供代碼,審查人員在報告中找出所有代碼漏洞。這是一種常見的主動式資料保護方法。

黑盒子滲透測試使用與攻擊者相同的掃描和弱點偵測形式。資安專業人員在不了解程式碼的情況下攻擊應用程式,因此任何驗證或防禦機制都能被測試。灰色盒子測試是黑盒子和白盒子測試的組合,通常被選為滲透測試網路應用程式的方法。

預防語言表達

偵測 EL 注入攻擊的最佳方式是驗證代碼,並移除特定字元的輸入。例如,輸入名稱欄位不應包含 “<” or “>” 字元。開發人員應該使用內建的程式庫來偵測這些字元,並移除它們或捨棄輸入,並顯示錯誤給使用者。

其他字元也可能是惡意的。在 JSP 頁面中,程式碼片段以 “<%” characters and end with the “%>” 字元開頭。這些字元應一併從輸入中移除。攻擊者會執行各種惡意程式碼組合來繞過偵測,因此偵測惡意程式的最佳方式是使用專為輸入驗證所建立的程式庫。SIEM 應用程式也可以偵測入侵,並在應用程式成為目標時進行分析。

結論

EL 注入弱點應被視為重大安全性問題。永遠要對您的翻譯語言應用程式進行插入漏洞測試,以及其他任何可能揭露敏感資料的內容。開發人員應使用驗證工具來偵測並停止 EL 注入,而使用 JSP 和 ASP 傳統應用程式應密切監控攻擊。

Pure Storage 具備安全基礎架構威脅監控功能,可保護您的應用程式免受安全攻擊。

02/2026
Nutanix Cloud Platform with Everpure
Everpure and Nutanix partnered to offer the Nutanix Cloud Platform with Everpure FlashArray//X, //XL, and //C.
分析報告
12 頁

查看重要資訊與活動

影片
觀看影片:企業級資料雲端的價值。

Charlie Giancarlo 討論管理為何管理資料才是未來趨勢,而非儲存設備。發掘整合式做法如何革新企業級 IT 作業。

立即觀看
資源
傳統儲存裝置無法驅動未來。

現代化工作負載需求必須達到 AI 級速度、安全性與規模。您的技術棧準備好了嗎?

進行評估
PURE360 示範
探索、認識、體驗 Pure Storage。

存取隨取隨用影片與示範,了解 Pure Storage 的強大功效。

觀賞示範影片
精神領袖
創新競賽

儲存創新最前線的產業領導者最新深度資訊與觀點。

了解更多資訊
您的瀏覽器已不受支援!

較舊版的瀏覽器通常存在安全風險。為讓您使用我們網站時得到最佳體驗,請更新為這些最新瀏覽器其中一個。

Personalize for Me
Steps Complete!
1
2
3
Thinking...