我必须将“用户的” HTML呈现为HTML。
“用户”是管理员,因此很安全,但是尽管我想尽一切办法防止任何xss式攻击
我想到了这样的想法:
while (html.Contains("script"))
{
html = html.Replace("script", "");
}
为什么while
?因为scripscriptt
+将script
替换为""
仍然会离开script
那么,还有哪些其他关键字需要删除?
img
?由于从其他服务器加载数据
iframe
?
button
?
href
?
总的来说,我想删除危险的标记,但我不想删除安全的内容,例如table, <b>, <div>
和其余的文本格式/页面样式标记