【发布时间】:2010-10-01 11:17:58
【问题描述】:
我正在尝试创建一个正则表达式来阻止字符串中的所有< 和>,除非与<select>. 一起使用时有人可以为此建议一个正则表达式吗?我将与javax.util.Pattern 一起使用它。
我正在尝试编写一个解决方案来阻止通过请求和 URL 进行的注入攻击和 XSS 尝试。为此,我将阻止特殊字符和字符序列,但有一些例外。一个例外是,我必须允许<select>(尖括号与它们之间的选择),因为在某些情况下它被合法地传递到请求中。但是必须阻止所有其他尖括号组合。这就是我提出问题的原因。
【问题讨论】:
-
你所说的“阻止”是什么意思。消除?拒绝字符串?
-
如果你想用这类东西来保证不受信任的输入安全,那么你只会泪流满面。
-
罗伯特:这里的块意味着拒绝。一旦我看到任何“坏”字符序列,我就会将用户注销并显示错误消息。汤姆:谢谢你的评论。您能否解释一下您的评论,以便我采取纠正措施。谢谢
-
汤姆:谢谢你的评论。您能否解释一下您的评论,以便我采取纠正措施。非常感谢您的帮助。
标签: java regex sanitization