0

目前我正在使用 FormIt 在 Modx 中发送电子邮件。但是如何防止 csrf 攻击呢?我发现我们可以通过在表单中​​添加令牌来防止 csrf 攻击。我如何将其应用于 Formit?

[[!FormIt?  
    &fsFormTopic=`contact` 
    &submitVar=`contact` 
    &hooks=`FormSave,ShootCC_contact,redirect`
    &emailTpl=`my_email_tpl`
    &emailTo=`example@gmail.com`
    &redirectTo=`[[!switch?  
        &get=`[[+ck]]`
        &c1=`eng`
        &do1=`6`
        &c2=`trad`
        &do2=`1766`
        &c3=`simp`
        &do3=`1786`
        &default=`6`
    ]]`
]]

谢谢!

4

1 回答 1

0

您可以在提交之前使用 prehook 来验证表单,请看这里:

跨站点请求伪造 (CSRF) 预防备忘单

您可能可以通过修改 Modx 的会话处理来生成 CSRF 令牌 - 请记住,modx 会话默认持续一周,因此您还需要为您的 CSRF 令牌添加某种超时。

于 2016-11-23T13:58:56.470 回答