通过替换 '>', '<' 形成安全性人物
我使用 JSP 创建了一个 Web 表单,为了防止攻击,我执行了以下操作:
input.replace("<", "something else");
input.replace(">", "something else");
这样用户就无法在表单中添加 HTML 或其他标签。
这是否足以防止此类攻击(在其中插入 HTML 或其他标签) 我的网站)?
感谢您 JH。 G。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
简而言之,不。我建议您查看 ESAPI 项目。他们内置了 HTML 编码请求和响应的工具,以防止 XSS 攻击。
In short, no. I recommend that you should checkout the ESAPI project for this. They have built in tools to HTML encode requests and responses as to prevent XSS attacks.
这并不完全是正确的方法。它不仅不完整,如
'
、"
和&
也 需要转义,但您实际上应该使用 JSTL
或fn:escapeXml()
到在视图端转义 HTML/XML 实体例如
,另请参阅:
This is not entirely the right way. It's not only incomplete as
'
,"
and&
also needs to be escaped, but you should actually be using JSTL<c:out>
orfn:escapeXml()
to escape HTML/XML entities in the view side.E.g.
See also: