摘要:公司用到的防止攻擊的組件代碼空過濾過度方案過濾字符串中的過濾節點屬性中的過濾
公司用到的防止xss攻擊的組件代碼
function $xss(str,type){ //空過濾 if(!str){ return str===0 ? "0" : ""; } switch(type){ case "none": //過度方案 return str+""; break; case "html": //過濾html字符串中的XSS return str.replace(/[&""<>/-x00-x09x0b-x0cx1fx80-xff]/g, function(r){ return "" + r.charCodeAt(0) + ";" }).replace(/ /g, " ").replace(/ /g, "
").replace(/ /g,"
").replace(/ /g,"
"); break; case "htmlEp": //過濾DOM節點屬性中的XSS return str.replace(/[&""<>/-x00-x1fx80-xff]/g, function(r){ return "" + r.charCodeAt(0) + ";" }); break; case "url": //過濾url return escape(str).replace(/+/g, "%2B"); break; case "miniUrl": return str.replace(/%/g, "%25"); break; case "script": return str.replace(/[""]/g, function(r){ return "" + r; }).replace(/%/g, "x25").replace(/ /g, " ").replace(/ /g, " ").replace(/x01/g, "x01"); break; case "reg": return str.replace(/[^$*+?{}.()[]]/g, function(a){ return "" + a; }); break; default: return escape(str).replace(/[&""<>/-x00-x09x0b-x0cx1fx80-xff]/g, function(r){ return "" + r.charCodeAt(0) + ";" }).replace(/ /g, " ").replace(/ /g, "
").replace(/ /g,"
").replace(/ /g,"
"); break; } }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/82186.html
摘要:可能造成危害利用已通過認證的用戶權限更新設定信息等利用已通過認證的用戶權限購買商品利用已通過的用戶權限在留言板上發表言論。二說說你說了解的前端性能優化方面減少請求合并文件精靈減少查詢查詢完成之前瀏覽器不能從這個主機下載任何任何文件。 一、說說你所知道的web安全及防護措施 常用攻擊手段:SQL注入、XSS(Cross Site Script),跨站腳本攻擊、CSRF(Cross Sit...
摘要:可能造成危害利用已通過認證的用戶權限更新設定信息等利用已通過認證的用戶權限購買商品利用已通過的用戶權限在留言板上發表言論。二說說你說了解的前端性能優化方面減少請求合并文件精靈減少查詢查詢完成之前瀏覽器不能從這個主機下載任何任何文件。 一、說說你所知道的web安全及防護措施 常用攻擊手段:SQL注入、XSS(Cross Site Script),跨站腳本攻擊、CSRF(Cross Sit...
摘要:由于是需要兼容的后臺系統,該項目并不能使用到等技術,因此我在上的經驗大都是使用原生的編寫的,可以看見一個組件分為兩部分視圖部分,和數據部分。 在公司里幫項目組里開發后臺系統的前端項目也有一段時間了。 vue這種數據驅動,組件化的框架和react很像,從一開始的快速上手基本的開發,到后來開始自定義組件,對element UI的組件二次封裝以滿足項目需求,期間也是踩了不少坑。由于將來很長一...
閱讀 1173·2021-11-22 15:24
閱讀 4450·2021-09-23 11:51
閱讀 2314·2021-09-08 09:36
閱讀 3522·2019-08-30 15:43
閱讀 1302·2019-08-30 13:01
閱讀 1124·2019-08-30 12:48
閱讀 545·2019-08-29 12:52
閱讀 3376·2019-08-29 12:41