喜在我的項目Veracode的在我的請求處理方法報告了XSS問題CWE ID 80.:防止XSS在Spring MVC控制器
@RequestMapping(value = "/Update.mvc")
public @ResponseBody String execute(@ModelAttribute UpdateForm updateForm, BindingResult result,
HttpServletRequest request, HttpServletResponse response) throws ActionException {
return executeAjax(updateForm, request, response, result);
}
所以executeAjax來自一個抽象類,有不同的實現? 在這些實現中,來自表單的用戶輸入是get和被操縱,以便構造返回的字符串。
所以我的問題是: 是否Veracode的假設是在執行中可以有XSS?或者一般的東西? - 如何防止這種情況?我總是使用轉換輸入數據,並且不會在用戶輸入時返回? - 那麼如何預防呢? - 我必須從HttpServiceRequest中轉義所有標題/請求參數嗎?
編輯: 我一定要使用過濾器,如: SecurityWrapperRequest
您需要轉義所有請求參數。例如。通過添加一個過濾器 – StanislavL
@StanislavL你能給出更詳細的解釋。我需要添加HttpRequest過濾器,以便從請求中轉義所有頭文件和所有參數?或者我可以在本地開展工作,並將請求包裝爲我的executeAjax類的所有實現? LikeL https://www.javacodegeeks.com/2012/07/anti-cross-site-scripting-xss-filter.html – Xelian