<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>
            網頁設計

            正則表達式過濾HTML危險腳本的實例

            時間:2024-12-05 23:30:34 網頁設計 我要投稿
            • 相關推薦

            正則表達式過濾HTML危險腳本的實例

              導語:在做一些網站(特別是bbs之類)時,經常會有充許用戶輸入html樣式代碼,卻禁止腳本的運行的需求, 以達到豐富網頁樣式,禁止惡意代碼的運行。以下的是百分網小編為大家搜集的正則表達式過濾HTML危險腳本的實例,希望對你會有所幫助。

              不能用 htmlencode 和 htmldecode 方法,因為這樣連基本的html代碼會被禁止掉。

              以下是一些腳本攻擊的實例:

              1. <script>標記中包含的代碼

              2. <a href=javascript:...中的代碼

              3. 其它基本控件的 on...事件中的代碼

              4. iframe 和 frameset 中載入其它頁面造成的攻擊

              有了這些資料后,事情就簡單多了,下面簡單的方法,用正則表達式把以上符合幾點的代碼替換掉:

              public string wipescript(string html)

              {

              system.text.regularexpressions.regex regex1 = new system.text.regularexpressions.regex(@"<script[ss]+</script *>",system.text.regularexpressions.regexoptions.ignorecase);

              system.text.regularexpressions.regex regex2 = new system.text.regularexpressions.regex(@" href *= *[ss]*script *:",system.text.regularexpressions.regexoptions.ignorecase);

              system.text.regularexpressions.regex regex3 = new system.text.regularexpressions.regex(@" on[ss]*=",system.text.regularexpressions.regexoptions.ignorecase);

              system.text.regularexpressions.regex regex4 = new system.text.regularexpressions.regex(@"<iframe[ss]+</iframe *>",system.text.regularexpressions.regexoptions.ignorecase);

              system.text.regularexpressions.regex regex5 = new system.text.regularexpressions.regex(@"<frameset[ss]+</frameset *>",system.text.regularexpressions.regexoptions.ignorecase);

              html = regex1.replace(html, ""); //過濾<script></script>標記

              html = regex2.replace(html, ""); //過濾href=javascript: (<a>) 屬性

              html = regex3.replace(html, " _disibledevent="); //過濾其它控件的on...事件

              html = regex4.replace(html, ""); //過濾iframe

              html = regex5.replace(html, ""); //過濾frameset

              return html;

              }

              此方法輸入可能包含腳本的html代碼,返回則就是干凈的代碼了。

            【正則表達式過濾HTML危險腳本的實例】相關文章:

            php過濾危險html代碼的方法09-17

            php過濾HTML標簽、屬性等正則表達式07-19

            HTML用正則表達式檢驗表格的實例代碼08-11

            CSS和JavaScript腳本實例10-26

            看實例學正則表達式10-17

            C#實現協同過濾算法的實例代碼06-19

            如何實現PHP獲取表單數據與HTML嵌入PHP腳本09-23

            HTML實現頁面自動跳轉的方法有哪些(實例)07-31

            php使用html5實現多文件上傳實例09-04

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看