分類  >  Web前端 >

dorado7中碰到的xss有關問題解決

tags:    時間:2013-12-10 00:33:40
dorado7中碰到的xss問題解決

關於dorado7中xss問題解決.

之前的寫法是拿到參數,然後拼成html放到htmlcontainer中.

其實邏輯很簡單,接收錯誤信息,然後頁面上顯示出來.

 

這個時候還是發現淘寶檢測出xss漏洞.傳遞的參數?error_code=&error_msg=31'13""42>24<99

 

var error_code="${request.getParameter('error_code')}";

var error_msg="${request.getParameter('error_msg')}";

var endHtml = "<h3>對不起!充值失敗!</h3>";

endHtml = endHtml +"請聯繫管理員."+"<br/>錯誤代碼:"+error_code+"<br/>錯誤信息:"+error_msg;

alert("endHtml:"+endHtml);

$("#notice").html(endHtml);

 

想來想去,dorado直接獲取參數都有問題.

或者經過ajaxaction,調用StringEscapeUtils.escapeHtml轉換數據

都不理想,

想來想去用最古老的方法.使用jsp來處理.

<div id="notice" class="notice n-error">

   <h3>對不起!充值失敗!</h3>請聯繫管理員.<br/>錯誤代碼:<%=StringEscapeUtils.escapeHtml(request.getParameter("error_code"))%><br/>錯誤信息:<%=request.getParameter("error_msg") %>

</div>

這樣做測試的時候 偶然發現dorado貌似做了些處理.

如果error_msg直接傳入<script>alert(1);</script> doraodo報錯.

修改成

<div id="notice" class="notice n-error">

    <h3>對不起!充值失敗!</h3>請聯繫管理員.<br/>錯誤代碼:<%=StringEscapeUtils.escapeHtml(request.getParameter("error_code"))%><br/>錯誤信息:<%=StringEscapeUtils.escapeHtml(request.getParameter("error_msg")) %>

</div>

就一切ok了.

 

 

 

 

推薦閱讀文章

Bookmark the permalink ,來源:互聯網