目前在維護舊程式,由於是以ASP + Big5開發的,最近為了處理 XSS 弱點,對於顯示於網頁的欄位都加上 Server.HTMLEncode 處理, 結果原本存在DB內的特殊字都變成內碼顯示!
以前在DB內的資料「羣峯爭嶸」,輸出時會正確顯示「 羣峯爭嶸 」,但加上 Server.HTMLEncode後,真的給我輸出「羣峯爭嶸」,這 ~~~ 誰看得懂呀! 所以User不爽,老闆也不爽,最後拜google之賜,找到了解決的方法,就是利用 chrw(CODE)的方式將32675轉成「羣」再丟給 Server.HTMLEncode處理 XSS!
感謝各位在Web無私提供知識的英雄們!
沒有留言:
張貼留言