【发布时间】:2011-08-16 07:14:58
【问题描述】:
让我们想象一下输入在哪里:
<input name="x" />
<input name="y" />
<input name="z" />
如果用户手动(例如,使用 FireBug 创建更多具有不同名称的输入)会有任何危害吗?
我问这个是因为我的团队昨天创建了一个规则,您需要手动过滤 $_POST 数组(例如)以确保其中只有预期的键。就我个人而言,如果有像foo 和bar 这样的额外键,我认为不会有任何伤害。他们会被忽略,对吧?
此外,我们正在使用 Kohana 3.0 及其 ORM。也许这就是重点?也许 ORM 会对额外的、不需要的键做出不同的反应,并且如果“黑客”猜到“错误”键(也是列),也许会更新数据库中的意外列?
你怎么看?
【问题讨论】:
-
发送什么密钥并不重要。由服务器来验证来自客户端的所有数据。如果某个魔法键被随机猜到(例如“godmode=1”)或者如果服务器因传递“意外值”而中断(例如 SQL 注入),则已经存在其他问题...
-
我也是这么想的。但! ORM 和 Kohana ORM 呢?
-
用户可能超过
post_max_size并且$_POST的一部分可能会丢失
标签: php security kohana-3 kohana-orm