我们希望阻止用户在文本框中输入html或javascript。
我们可以解析输入并检查天使括号。想知道有更好的方法吗?
答案 0 :(得分:5)
我发现用编码的天使括号替换天使括号可以解决大多数问题。这是人们可以跨站点脚本的所有方式的reference。制作一个正则表达式来阻止任何HTML和/或脚本的风格几乎是不可能的。
答案 1 :(得分:3)
如果您设置Page.ValidateRequest = true,那么它将停止此操作。
从.net 1.1版开始(我认为)默认设置为true。
答案 2 :(得分:2)
您可以使用正则表达式验证程序验证输入吗?
答案 3 :(得分:1)
Page.ValidateRequest将停止此操作,除非您关闭它。
然而,OWASP指南(以及几乎所有主管的安全指南)告诉您,您不应该尝试在验证中限制不良字符,而应该过滤以便仅使用特定允许的字符。
http://en.wikipedia.org/wiki/Secure_input_and_output_handling
http://www.owasp.org/index.php/Top_10_2007-A1
为了获得良好的安全编码实践,我将从这里开始并为该网站添加书签以供将来参考。 http://www.owasp.org/index.php/Top_10_2007
答案 4 :(得分:0)
我遇到了这个html实用程序。该代码使用允许输入的白色标签列表。然后,该脚本将输入文本格式化,并删除可用于跨站点脚本攻击的标记和脚本。
出于您的目的,您无法在白名单中添加任何标记。