>백엔드 개발 >PHP 튜토리얼 >php 恶意代码过滤函数_PHP教程

php 恶意代码过滤函数_PHP教程

WBOY
WBOY원래의
2016-07-13 17:09:201166검색

php 恶意代码过滤函数

Public Function DecodeFilter(html, filter)
              html=LCase(html)
              filter=split(filter,",")
              For Each i In filter
                     Select Case i
                            Case "SCRIPT"              ' 去除所有客户端脚本javascipt,vbscript,jscript,js,vbs,event,...
                                   html = exeRE("(javascript|jscript|vbscript|vbs):", "#", html)
                                   html = exeRE("?script[^>]*>", "", html)
                                   html = exeRE("on(mouse|exit|error|click|key)", "", html)
                            Case "TABLE":              ' 去除表格

              'html = Replace(html,"               DecodeFilter = html
       End Function

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/629754.htmlTechArticlephp 恶意代码过滤函数 Public Function DecodeFilter(html, filter) html=LCase(html) filter=split(filter,,) For Each i In filter Select Case i Case SCRIPT ' 去除所有客户端...

                                   html = exeRE("?table[^>]*>", "", html)
                                   html = exeRE("?tr[^>]*>", "", html)
                                   html = exeRE("?th[^>]*>", "", html)
                                   html = exeRE("?td[^>]*>", "", html)
                                   html = exeRE("?tbody[^>]*>", "", html)
                            Case "CLASS"              ' 去除样式类class=""
                                   html = exeRE("(]+) class=[^ |^>]*([^>]*>)", "$1 $2", html)
                            Case "STYLE"              ' 去除样式
                                   html = exeRE("(]+) [^""]*""([^>]*>)", "$1 $2", html)
                                   html = exeRE("(]+) style='[^']*'([^>]*>)", "$1 $2", html)
                            Case "IMG"              ' 去除样式
                                   html = exeRE("?img[^>]*>", "", html)
                            Case "XML"              ' 去除XML
                                   html = exeRE("]*>", "", html)
                            Case "NAMESPACE"       ' 去除命名空间>>
                                   html = exeRE("]*>", "", html)
                            Case "FONT"              ' 去除字体
                                   html = exeRE("?font[^>]*>", "", html)
                                   html = exeRE("?a[^>]*>", "", html)
                                   html = exeRE("?span[^>]*>", "", html)
                                   html = exeRE("?br[^>]*>", "", html)
                            Case "MARQUEE"              ' 去除字幕
                                   html = exeRE("?marquee[^>]*>", "", html)
                            Case "OBJECT"              ' 去除对象
                                   html = exeRE("?object[^>]*>", "", html)
                                   html = exeRE("?param[^>]*>", "", html)
                                   'html = exeRE("?embed[^>]*>", "", html)
                            Case "EMBED"
                               html =  exeRE("?embed[^>]*>", "", html)
                            Case "DIV"              ' 去除对象
                                   html = exeRE("?div([^>])*>", "$1", html)
                                   html = exeRE("?p([^>])*>", "$1", html)
                            Case "ONLOAD"              ' 去除样式
                                   html = exeRE("(]+) onload=""[^""]*""([^>]*>)", "$1 $2", html)
                                   html = exeRE("(]+) onload='[^']*'([^>]*>)", "$1 $2", html)
                            Case "ONCLICK"              ' 去除样式
                                   html = exeRE("(]+) onclick=""[^""]*""([^>]*>)", "$1 $2", html)
                                   html = exeRE("(]+) onclick='[^']*'([^>]*>)", "$1 $2", html)
                            Case "ONDBCLICK"              ' 去除样式
                                   html = exeRE("(]+) ondbclick=""[^""]*""([^>]*>)", "$1 $2", html)
                                   html = exeRE("(]+) ondbclick='[^']*'([^>]*>)", "$1 $2", html)
                                   
                     End Select
              Next
              'html = Replace(html,"
              'html = Replace(html,"
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.