我动态生成一些HTML,我需要确保任何类型的恶意JavaScript都不会进入HTML。所以我有这个代码" clean"在将其保存到数据库之前的输入:
Input = Input.Replace("'", "\'")
Input = Input.Replace(Chr(34), "\" & Chr(34))
Input = Input.Replace(vbCrLf, "")
Return System.Web.HttpUtility.HtmlEncode(Input)
这会清理输入,但它也会剥离输入中的任何内联CSS。有没有办法去除潜在的恶意代码但保留CSS标签?
谢谢!
答案 0 :(得分:1)
你可以使用这一行
Private input = Regex.Replace(input, "<script.*?<\/script>|<script.*?\/>", "")