当使用get()数据或来自用户的数据输入时,我知道你永远不应该信任输入,并且总是确保在你在mysql查询或类似的东西中使用它之前清理数据。
但是当它不是用户输入时呢?就像你有一个带有3个不同输入的radiobutton和一些隐藏的字段,你用POST发送它?您是否仍然要清理从$ _POST获得的数据,还是安全的?因为您知道应该获得的值,因为您自己设置了radiobutton和隐藏字段的值吗?
我已经构建了我的脚本以便我总是清理数据,但是我想知道它是否安全而没有消毒,因为你真的没有任何使用输入?
答案 0 :(得分:2)
是的,你应该进行消毒,因为有人可以在提交表格之前修改HTML。
在较新的浏览器上,您可以右键单击 - > inspect元素允许用户根据需要修改HTML页面,他们可以修改您的隐藏字段或选择他们认为合适的值。
以下是该主题的另一个主题:Are drop down select fields vulnerable to any sort of injection
注意:对所有查询使用预准备语句,这是一个很好的习惯,可以确保您的查询始终被清理。
答案 1 :(得分:2)
始终消毒
任何人都可以编辑表单HTML并插入顽皮的代码(甚至在你的单选按钮中)