当前位置: 首页 > 面试题库 >

阻止用户伪造表单的安全方法

蓝侯林
2023-03-14
问题内容

如何防止用户在PHP或jquery方面伪造表单,我正在使用Jquery的ajax功能提交表单,这意味着技术方面的人们可以更改某些变量,例如某物的值(不应通过使用Firebug或Web检查器等来更改/是用户ID或类似名称。

那么,如何防止用户更改这些变量或通过安全且好的方法确保它们不变?

谢谢


问题答案:

正如其他人已经指出的那样,您 不能 阻止用户进行篡改。

您正在从我那里接收数据,我可以向您发送任何我想发送的信息,我什至可以手动执行HTTP请求,甚至不需要使用浏览器,您就无法执行任何操作。

如果您不希望用户更改信息,请不要将其提供给他。

您可以将其存储在PHP的会话中,该会话存储在服务器端(不要使用cookie,它们也将发送给用户)或保存在数据库中,最终用户都无法访问它们。

如果您仍想将数据传递给用户,请计算某种哈希值( 安全 哈希,请使用Gumbo
指出的 安全 哈希算法和 安全
消息摘要),这会排除CRC32或MD5之类的算法以及您姓名或MAC之类的MAC数据)并将其存储在服务器端,然后在用户提交数据后,检查哈希值是否匹配。

但是请知道此解决方案不是100%安全的。哈希函数有冲突,并且存在错误的实现。

我建议坚持黄金法则:如果不存在,它就不会破坏/被篡改/被盗等。



 类似资料:
  • 问题内容: 因此,我们的应用程序是: 每个用户都必须登录 登录页面回发到服务器,并且如果授权用户返回SPA应用程序。 SPA应用程序完全是AJAX HTTPS 通常我们会发送一个cookie和一个cookie。令牌cookie值将作为x- header包含在任何AJAX帖子中,并且每次请求都将在服务器上验证所有内容。 由于SPA页面是在返回浏览器之前构建的,因此我们可以在其中嵌入我们想要的任何内容

  • 如果我为MyCompany.com购买了一个证书,并且得到了一个由Verisign签名的有效证书,那么是什么阻止我生成一个由MyCompany签名的另一个Company.com的假证书呢? 做一个中间人攻击阻止我为OtherCompany.com签发由mycompany签名的假证书,并将我的有效证书作为中间CA证书。

  • 问题内容: 我在网站上进行了一项调查,用户单击Enter键(我不知道为什么),然后不按提交按钮就意外提交了调查(窗体),似乎存在一些问题。有办法防止这种情况吗? 我在调查中使用的是HTML,PHP 5.2.9和jQuery。 问题答案: 您可以使用诸如 在阅读原始帖子的评论时,要使其更加有用,并允许人们在完成所有字段后按下:

  • 本文向大家介绍利用JavaScript阻止表单提交的两种方法,包括了利用JavaScript阻止表单提交的两种方法的使用技巧和注意事项,需要的朋友参考一下 在JavaScript中,阻止表单默认提交行为的方法有两种,分别是: (1) return false 示例代码 (2) 使用preventDefault() 在标准浏览器中,阻止浏览器默认行为使用event.preventDefault(),

  • 本文向大家介绍JavaScript阻止回车提交表单的方法,包括了JavaScript阻止回车提交表单的方法的使用技巧和注意事项,需要的朋友参考一下 大家对回车键的功能应该比较熟悉,比如在windows系统的很多应用程序中,只要点击回车键就可以进入此程序或者开启某项功能,不过有时候我们希望阻止它的功能,例如在填写表单的时候,可能不小心点击回车键造成表单误提交,下面就来简单介绍一下如何实现此功能。代码

  • 本文向大家介绍php防止伪造的数据从URL提交方法,包括了php防止伪造的数据从URL提交方法的使用技巧和注意事项,需要的朋友参考一下 针对伪造的数据从URL提交的情况,首先是一个检查前一页来源的如下代码: 这个方法只能防止手动在浏览栏上输入的URL。 事实上只要在服务器上构造出一个指向该URL的链接(比如在发贴时加入超链),再点击,这个Check就完全不起作用了。 目前觉得还是用POST的方法传