DRUPAL中CONFIRMATION页面的意义是什么?

What is the significance of CONFRIMATION page in DRUPAL?

这是同一页面之一,每当我们尝试从 CONTENT 页面删除(它也会在其他各种事件中显示)一堆节点时,就会显示该页面。

这是关于跨站请求伪造(CSRF or XSRF)。作为一名 Web 开发人员,我肯定知道这个术语,但不知道它 link 与 'Confirmation Page'。

什么是跨站请求Forgery(CSRF or XSRF)

CSRF 是一种攻击,它会强制最终用户(经过身份验证的用户)执行一些不符合其意图的操作。

CSRF攻击的Drupal场景

大多数 Drupal 站点都有通过 Webform 实现的反馈表。作为默认行为,Webform 也会将反馈表单提交发送到电子邮件。

  1. 攻击者可以通过添加一些 link 和 href 参数作为 [http://www.examplesite.com/node/3/delete?destination=admin/content].
  2. 来欺骗此消息
  3. 现在经过身份验证的用户可能会在不知道 href [http://www.examplesite.com/node/3/delete?destination=admin/content].
  4. 的操作敏感性的情况下单击消息中的 link
  5. 当用户意识到攻击时 - link 已经被点击并且恢复操作已经太晚了,因为 [node/4] 已经被删除并且 [admin/content]显示页面。

Drupal 的预防方式CSRF

  1. Drupal 将一个秘密的 TOKEN 值与每个操作相关联。 ---我们可以在Drupal的表单中找到[form_token]作为隐藏字段。

  2. 每当向浏览器发送任何操作(例如删除node/s)时,drupal 站点也会向浏览器发送关联的TOKEN 值。

  3. 此令牌的重要性 - 只有用户和站点知道。攻击者很难欺骗吸取TOKENS。

  4. 每当浏览器向站点发送任何请求时 - Drupal 都会根据操作验证令牌,然后只执行所需的操作。

  5. 如果此 Action + Token 验证失败,则操作将被拒绝。