从字符串中删除JavaScript,但保留CSS样式



我动态生成一些HTML,我需要确保任何类型的恶意javascript都不会进入HTML。 所以我有这段代码来"清理"输入,然后再将其保存到数据库:

        Input = Input.Replace("'", "'")
        Input = Input.Replace(Chr(34), "" & Chr(34))
        Input = Input.Replace(vbCrLf, "")
        Return System.Web.HttpUtility.HtmlEncode(Input)

这确实清理了输入,但它也剥离了我在输入中的任何内联 CSS。 有没有办法去除潜在的恶意代码,同时保留CSS标签?

谢谢!

你可以使用这一行

Private input = Regex.Replace(input, "<script.*?</script>|<script.*?/>", "")

最新更新