只是想知道安全性的差异
<input type="hidden" name="id" value="<?php echo $id; ?>">
vs.
jQuery(this).ajaxSubmit({
data: { id: '<?php echo $id; ?> }
});
发送表单数据时。一种方法是否比另一种更容易受到黑客攻击?安全发送表单数据以使外部人员无法篡改或更改 ID 号的最佳方法是什么?
安全性上没有区别。在这两种情况下,都会向服务器发送 HTTP POST 请求并从服务器接收响应。除了请求中的一些标头之外,服务器甚至并不真正知道或关心两者之间的区别。
为了说明这一点,请查看提交常规表单 POST 和 AJAX POST 时浏览器调试工具(Firebug 或 Chrome 工具)中的网络请求。两者非常接近相同,除了浏览器可能会为 AJAX 添加另一个或两个标头。
安全发送表单数据以使外部人员无法篡改或更改 ID 号的最佳方法是什么?
没有。任何精明的用户都可以手动制作 HTTP POST 请求以包含他们想要的任何数据。如今的浏览器甚至拥有方便的工具来帮助实现开发和调试目的。一般规则是服务器端代码never隐式信任从客户端发送的请求。始终验证用户是否有权执行他们想要执行的操作、数据不是恶意的或在使用数据之前经过适当的清理(特别是在数据库查询中作为常见示例),等等。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)