过滤掉Javascript注入

过滤掉Javascript注入,javascript,security,javascript-injection,html-injections,Javascript,Security,Javascript Injection,Html Injections,我有一个文本区域,我在其中放置了验证代码,不允许使用标记和Javascript标记,但用户可以输入类似的描述 因此,当有人将鼠标悬停在这个字符串标记上时,就会显示JS警报框 如何停止这种javascript注入?有很多工具称为html净化器。例如,你可以试试。有很多工具叫做html净化器。例如,您可以尝试。简单的答案是replace(/简单的答案是replace(/您需要正确地清理您允许的HTML。正如您所发现的,这是非常重要的。(您可能需要禁止iframe和其他几个元素。) 正确的清理需要一个

我有一个文本区域,我在其中放置了验证代码,不允许使用
标记和Javascript标记,但用户可以输入类似
的描述

因此,当有人将鼠标悬停在这个字符串标记上时,就会显示JS警报框


如何停止这种javascript注入?

有很多工具称为html净化器。例如,你可以试试。

有很多工具叫做html净化器。例如,您可以尝试。

简单的答案是
replace(/简单的答案是
replace(/您需要正确地清理您允许的HTML。正如您所发现的,这是非常重要的。(您可能需要禁止
iframe
和其他几个元素。)

正确的清理需要一个元素的白名单,在这些白名单中,每个元素都有一个允许的属性白名单。显然,各种
onXyz
属性不会在白名单上


清理必须发生在服务器端,因为任何客户端都可以绕过。因此,在不知道您使用的是什么服务器技术的情况下,我们不能推荐一些东西。例如,对于Java来说,这是一种众所周知的技术,但当然,如果您不使用Java,这对您没有用处。:-)对于.Net,有或,但这是一个非常不完整的列表。

您需要正确清理允许的HTML。正如您所发现的,这是非常重要的。(您可能需要禁止
iframe
和其他几个元素。)

正确的清理需要一个元素的白名单,在这些白名单中,每个元素都有一个允许的属性白名单。显然,各种
onXyz
属性不会在白名单上

清理必须发生在服务器端,因为任何客户端都可以绕过。因此,在不知道您使用的是什么服务器技术的情况下,我们不能推荐一些东西。例如,对于Java来说,这是一个众所周知的技术,但当然,如果您不使用Java,这对您没有用处。:-。对于.Net,有或,但这是一个非常不完整的列表