亚洲国产日韩欧美在线a乱码,国产精品路线1路线2路线,亚洲视频一区,精品国产自,www狠狠,国产情侣激情在线视频免费看,亚洲成年网站在线观看

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

時間:2025-11-05 03:07:05 網(wǎng)頁設(shè)計

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

  導(dǎo)語:在做一些網(wǎng)站(特別是bbs之類)時,經(jīng)常會有充許用戶輸入html樣式代碼,卻禁止腳本的運行的需求, 以達到豐富網(wǎng)頁樣式,禁止惡意代碼的運行。以下的是百分網(wǎng)小編為大家搜集的正則表達式過濾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, ""); /pic/script>標記

  html = regex2.replace(html, ""); /pic/p>

  html = regex3.replace(html, " _disibledevent="); /pic/p>

  html = regex4.replace(html, ""); /pic/p>

  html = regex5.replace(html, ""); /pic/p>

  return html;

  }

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

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

php過濾危險html代碼的方法11-23

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

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

CSS和JavaScript腳本實例02-18

看實例學(xué)正則表達式02-05

C#實現(xiàn)協(xié)同過濾算法的實例代碼11-23

如何實現(xiàn)PHP獲取表單數(shù)據(jù)與HTML嵌入PHP腳本01-16

HTML實現(xiàn)頁面自動跳轉(zhuǎn)的方法有哪些(實例)11-01

php使用html5實現(xiàn)多文件上傳實例02-27