隐藏使用Firebug访问表单输入字段的最佳方法?
-
29-09-2019 - |
题
我有一个形式,该表格已发布到外部API。有一个称为customer_token的参数,该参数作为输入字段传递。它用于API的身份验证,每个客户都会分配一个令牌。在Firefox的Firebug中可以看到输入字段(即使它是一个隐藏的字段)。
我该如何隐藏?
选项 按照我最初想的那样使用JavaScript
我认为在提交表单之前使用JavaScript在运行时间创建该输入字段并立即删除字段将起作用,但该字段仍然会暂时出现。因此,即使一个人无法手动获得它,恐怕爬行者或蜘蛛(我不知道确切的术语 - 但是某些自动脚本)可能会得到客户的令牌。有更好的解决方案吗?表单提交后,将显示相同的表格。
按照Ikke的建议使用一次令牌概念
我不确定它将如何工作? API需要正确的客户令牌值来处理任何请求。因此,即使要生成一次令牌并返回,也必须发送与客户令牌的请求。这样,任何人都可以看到我的客户令牌值,他们还可以发送请求以获取一次令牌并使用它。那么它如何解决问题呢?
解决查看 如何将表单发布到我的服务器,然后向API发布,而不是直接发布(出于安全原因)?谢谢,桑多普
解决方案
这是 不是 可能的。 Firebug只是在其实际状态下读取DOM,因此,即使在以后的阶段中添加它,仍然可以检索它。
这种安全方式称为 通过晦涩难懂的安全 并且是一种非安全性。您将不得不另一种方式解决它,例如让服务器代替请求。
您让用户将表格提交给服务器。然后 卷曲, ,您可以使用正确的用户代码呼叫Web服务。
其他提示
我不认为这可能是恐怕的。
如果通过JavaScript插入该元素,则仍然会看到该元素在观看DOM树时。如果此输入暴露了安全漏洞,则是服务器端代码的作业来验证/修复它。
有关API的更多详细信息可能会帮助某人更详细地回答这个问题。
我希望这有帮助