首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >输入验证检查

输入验证检查
EN

Stack Overflow用户
提问于 2010-09-14 19:39:19
回答 7查看 1.7K关注 0票数 4

在我的网站上,我有一个论坛,我想避免跨站脚本。你知道一个好的输入验证脚本吗?

EN

回答 7

Stack Overflow用户

发布于 2010-09-14 20:47:38

有两种方法可以避免跨站点脚本。

  1. 通过客户端和服务器端的用户(主要是脚本标签和html标签)过滤输入。
  2. 将内容显示为Html实体,以避免跨站点脚本。当然,如果您想显示一些标签,请选择第一个选项。否则,第二种选择更可靠。

您可以使用正则表达式在客户端和服务器端过滤数据。

票数 1
EN

Stack Overflow用户

发布于 2010-09-24 14:04:12

我一直依赖于OWASP PHP过滤器:从名称可以看出,它们是服务器端的(JavaScript或HTML5验证只在帮助用户时有用),而OWASP (开放Web应用程序安全项目)是一个非营利性组织。

票数 1
EN

Stack Overflow用户

发布于 2010-09-14 20:04:43

这取决于您想要将数据写到哪里。例如,当您将文本写入输入字段时,您需要不同的过滤器,而当您仅将文本写入html正文时,需要在两个标记之间使用不同的过滤器。

您应该在服务器端为不同的数据类型实现不同的过滤器。我建议您应该在打印文本时对其进行过滤,而不是在用户将其发送给您时进行过滤(当然这与sql注入和其他服务器端技巧无关),因为(如上所述)您应该使用的过滤器类型取决于打印数据的位置。

如果你想写一个非常简单的论坛,那么只需编写一个过滤器就足够了,它只需在打印文本之前删除所有的html标签即可。注意,它不适合高级功能,例如编辑评论,当你为用户预先填写表单时,或者如果用户可以在他们的评论中使用任何html标签,等等。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3708476

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档