我在Asp.net页面中使用HiddenField并在其中存储一些值。 但是用户可以通过客户端的firefox Firebug更改它的值,并在其中输入无效值。 因此,当用户按下网页中的提交按钮时,服务器端将收到无效数据,无效数据将存储在我的数据库中。 我该怎么办?
答案 0 :(得分:2)
验证服务器端的输入。无论如何你总是应该这样做,永远不要相信用户。
所以基本上你的代码后面的任何方法都处理将数据保存到数据库需要先检查它发送的所有数据。
答案 1 :(得分:1)
虽然没有什么可以防止客户端黑客攻击,但是你可以让他们更难以访问数据。 将值存储在JavaScript var中,然后将值写入onSubmit上的隐藏字段 即使使用这种方法,一个好的开发人员工具包也可以让你改变它,但它现在就像一个隐藏的领域一样明显。
关于安全性的另一个问题是添加更多层。
- 使用加密
- 将数据存储在数据库中
- 不要将值存储在客户端