ajax nonce wordpress安全。我可以使用它来保护我的json数据不被刮擦吗?

时间:2013-01-02 01:13:14

标签: ajax wordpress security nonce

我正在使用ajax构建一个wordpress插件,并希望保护json数据免受窥探和数据抓取。

我的想法......服务器端,我将表单提交中隐藏的html字段中的随机数发送到jquery脚本。

此脚本通过GET从php文件请求一些json数据。

在php文件响应GET请求之前,它首先检查nonce是否有效,如果是,则返回json数据。如果没有,则返回任何/ die /做一些很酷的事情来锁定该IP地址一段时间。

如果刮刀直接使用get请求进入数据文件,但是nonce不正确,则不返回任何数据。如果一个人偷看数据文件,但他们没有nonce,那么他们什么也看不见......这是正确的吗?我知道nonce只使用一次,所以即使他们有一个旧的nonce,他们仍然无法查看数据,除非wordpress生成一个新的nonce?

这是可能还是我完全错过了现时的点?

1 个答案:

答案 0 :(得分:1)

在我看来,你对Wordpress nonce如何工作有一般的想法,但无论如何这里有一些阅读:

Mark Jaquith - WordPress Nonces
Vladimir Prelovac - Using Nonces in WordPress Plugins

我认为你需要记住一些事情:

  1. 如果所有这些功能主要在Wordpress的管理员端使用,那么您还必须明白,为了使刮刀甚至被视为威胁,它需要与普通用户相同的凭据。刮刀如何在没有用户名和密码的情况下刮擦管理面板?它不能。如果您对Wordpress单独使用的核心安全性感到满意,那么您的额外Nonce功能会消除很多闪存和闪光,以消除不存在的威胁。
  2. 如果要将敏感数据与管理面板分开,那么Nonce可以是保护它的一种方法,我想,但这不是Nonce的目的。有许多更简洁的方法来保护您的信息,而不是依赖Wordpress的Nonce功能,因此请考虑寻找更相关的替代方案。
  3. IP禁止很简洁,但你必须明白,这不是一个万无一失的方法,因为IP地址很容易被伪造,并且可能会产生一些意想不到的后果。您可能能够成功禁止试图访问私人信息的人的IP地址,但如果该人通过网络尝试此操作会怎么样?您已经有效地禁止整个网络访问您的网站,而不仅仅是一个人。
  4. 总而言之,您应该确保为任何特定工作使用正确的工具。我认为将Nonce用于此目的当然是可能的,但它远非理想。