3 回答

TA貢獻1810條經驗 獲得超4個贊
在 Veracode 幫助中心查看此頁面,其中列出了將修復某些缺陷類的驗證庫:
https://help.veracode.com/reader/DGHxSJy3Gn3gtuSIN2jkRQ/y52kZojXR27Y8XY51KtvvA
有大量的 ESAPI 庫可以修復 CWSE 93 漏洞,包括
org.owasp.esapi.Encoder.encodeForHTML

TA貢獻1842條經驗 獲得超22個贊
使用 ESAPI 的 decodeForHTML() 方法,如下例所示。
ESAPI.encoder().decodeForHTML(subjectOfEmail)

TA貢獻2051條經驗 獲得超10個贊
如果在這種情況下您要防止的只是標頭注入問題(這是與 CWE ID 93 相關的問題),那么請查看 ESAPI 的org.owasp.esapi.StringUtilities類。特別是靜態(tài)方法stripControls()
可能正是您所需要的。使用Encoder.encodeForHTML()
可能會編碼比你想要的更多的東西,因為它假定一個 HTML 上下文。(當然,如果您擔心在某些 Web 電子郵件客戶端的主題標頭上防止 XSS,您可能想要這樣做。通常這些客戶端應該已經內置了這種保護,所以如果您對其進行編碼,它最終可能會被編碼兩次但渲染不正確。)
請記住,如果您使用StringUtilities.stripControls()
,您的 Veracode 的 SAST 引擎可能仍會為 CWE 標記您的代碼,因為我不確定它是否將該類的方法識別為在這種特殊情況下刪除了污點標志。(但您始終可以將其作為緩解評論提及。)
添加回答
舉報