我想限制用户输入的恶意html,但应允许用户使用大于(>)或小于(<)符号。
仅仅禁止以下两个字符串是否安全?
"/>" and "</"
可以在不关闭标签的情况下执行任何恶意html吗?
更多信息:这是ASP.Net MVC,用户在文本框中输入一些文本,文本存储在数据库中,然后显示在页面上。
答案 0 :(得分:2)
也可以通过转义用户在用户界面上显示时输入的输入来处理这种情况。这将导致所有用户输入在ui上显示为文本。在这种情况下,标签不会在浏览器上呈现以供用户输入。
答案 1 :(得分:1)
必须处理每个用户输入而不删除任何数据。如果您意识到伤害,则应在向用户显示时使用转义。
有很多技术可以绕过愚蠢的查找/替换过滤器。阅读有关xss漏洞和SQL注入的信息。