Além do Filtro de Quem indicou Apache Sling, o Adobe também oferece uma nova Estrutura de Proteção CSRF para proteção contra esse tipo de ataque.
A estrutura utiliza tokens para garantir que a solicitação do cliente seja legítima. Os tokens são gerados quando o formulário é enviado ao cliente e validado quando o formulário é enviado de volta ao servidor.
Não há tokens nas instâncias de publicação para usuários anônimos.
Qualquer componente que dependa da dependência granite.jquery
se beneficiará automaticamente da Estrutura de Proteção do CSRF. Se esse não for o caso de nenhum de seus componentes, você deverá declarar uma dependência de granite.csrf.standalone
antes de poder usar a estrutura.
Para usar os tokens, é necessário replicar o binário /etc/keys/hmac
para todas as instâncias na implantação. Uma maneira conveniente de copiar a chave HMAC para todas as instâncias é criar um pacote contendo a chave e instalá-la por meio do Gerenciador de pacotes em todas as instâncias.
Certifique-se de fazer as alterações de configuração do Dispatcher necessárias para usar a Estrutura de Proteção do CSRF.
Se você usar o cache manifest com seu aplicativo da Web, certifique-se de adicionar "*" ao manifesto para garantir que o token não faça a chamada de geração de token CSRF off-line. Para obter mais informações, consulte este link.
Para obter mais informações sobre ataques CSRF e maneiras de reduzi-los, consulte a página OWASP de informações sobre falsificações entre sites.