除了Apache Sling Referrer Filter之外,Adobe还提供了一个新的CSRF Protection Framework来抵御此类攻击。
该框架使用令牌来保证客户端请求的合法性。 令牌在表单发送到客户端时生成,并在表单发送回服务器时进行验证。
发布实例上没有匿名用户的令牌。
任何依赖于 granite.jquery
依赖项将自动从CSRF保护框架中受益。 如果任何组件均不是这种情况,则必须将依赖关系声明到 granite.csrf.standalone
才能使用该框架。
为了使用令牌,您需要将HMAC二进制文件复制到部署中的所有实例。 参见 复制HMAC密钥 了解更多详细信息。
确保您还需要 Dispatcher配置更改 以使用CSRF保护框架。
如果您在Web应用程序中使用清单缓存,请确保添加“*”到清单,以确保令牌不会使CSRF令牌生成调用脱机。 有关更多信息,请参阅此 链接.
有关CSRF攻击以及缓解这些攻击方法的更多信息,请参阅 跨站点请求伪造OWASP页面.