我還有一個問題涉及JSP EL和安全問題如何測試這個問題(JSP表達式不允許在Struts 2標籤庫中,因爲安全問題允許黑客使用JSP EL將OGNL注入到標記中以做不好的事情)我做了大量的搜索,不能創建這樣的測試用例。請如果你有任何樣本測試或想法請建議如何測試EL有struts2安全問題OGNL
1
A
回答
2
從Struts版本2.0.9開始,對於評估OGNL的Struts標記屬性,JSTL/JSP表達式語言(EL)已被禁用。這是針對安全漏洞的預防措施,這種安全漏洞可能是由於第一次將屬性作爲JSTL/JSP EL表達式處理並將結果作爲OGNL表達式處理時發生的雙重評估而產生的。解決方案是直接使用OGNL表達式在Struts標記中表示所有動態屬性值。
這種類型的注射不起作用了。如果你想看看它是如何工作的,那麼爲Struts2標籤創建一個新的.tld文件副本,並對各種標籤的屬性進行EL評估。
如上所述,這是一個漏洞,利用了EL表達式由JSP/EL引擎處理的事實,並且OGNL表達式在標記類內部進行了評估。
例如,如果Struts2的標籤允許EL表達式,你可以用下面的風:
<s:text name="${someVar}"/>
哪裏someVar是從傳入請求設置的參數,它可以評估到任意OGNL表達式。一旦文本標籤被調用,它就會評估OGNL表達式,這可能會產生意想不到的後果。
有一個更深入的例子坐落在JIRA票針對此問題: https://issues.apache.org/jira/browse/WW-2107
+0
請注意,實際修復版本似乎爲2.0.10,而不是2.0.9,如第一個鏈接所示。 –
相關問題
- 1. struts2 ognl servlet context
- 2. Struts2 -ognl異常
- 3. 問題struts2的S:如果測試
- 4. OGNL線程安全
- 5. Struts2嚴重的安全問題?
- 6. OGNL在Struts2中與典型EL相比的優勢
- 7. 調試JNLP安全問題
- 8. 調試器安全問題
- 9. OGNL語法問題
- 10. 在struts2骯髒的java.lang.NumberFormatException ognl
- 11. Struts2的OGNL表達式
- 12. Struts2 - OGNL參數化名稱
- 13. 關閉OGNL警告在Struts2
- 14. 如何顯示每行使用struts2 ognl標籤只有4項
- 15. 測試安全1.4
- 16. CakePHP:安全測試
- 17. Java安全測試
- 18. 如何測試線程安全
- 19. 如何測試非線程安全類?
- 20. 如何測試軟件安全性?
- 21. Struts 2.3升級OGNL問題
- 22. 安全問題
- 23. 安全問題?
- 24. 安全問題
- 25. 在OGNL裏面使用OGNL是Struts2的標籤
- 26. 入侵檢測系統,安全+問題
- 27. 安全設置問題在測試中的Flash 8應用
- 28. Struts2(Java EE)項目中的安全問題
- 29. 試圖在Mac OS上安裝ElasticSearch插件的問題El Capitan
- 30. 超級測試,測試安全REST API
你嘗試從各地JSP EL被默認禁用時間閱讀的發行說明? –
你在找什麼樣的測試?你能準確地說出你在測試什麼,期望得到什麼結果? –
表達式語言注入: 發生在攻擊者控制由表達式語言(EL)解釋器評估的數據時發生 有關在Google搜索中看到的問題的詳細信息: https://docs.google.com/document/d/ 1dc1xxO8UMFaGLOwgkykYdghGWm_2Gn0iCrxFsympqcE/edit?pli = 1# 現在我想測試這個注入如何在struts2.3.15中工作。 –