日期:2014-05-17  浏览次数:20589 次

php正则问题eregi_replace("<(iframe|script)[^>]+>", "")这样能替换恶意代码吗?
php正则问题eregi_replace("<(iframe|script)[^>]+>", "")这样能替换恶意代码吗?

------解决方案--------------------
是的,过滤了Javascript或VBScript的代码,这个很重要,过滤掉iframe是为了不要让别人在你的网页嵌入一个框架,导致访问者被骗。
------解决方案--------------------
应该还有漏洞,假如别人不用<script>这种方法调用JS,比如一个表单<input onChange="alert('123');">,这种方法或在<a href...中的连接用javascript:alert('123');,一样会有漏洞,所以最好就是用htmlentities函数过滤掉所有的html特殊带有“<”“>”这种标记
------解决方案--------------------
自己测试一下就好了,最好的办法就是不能输入htlm,使用php的html函数
htmlentities