Oltre al filtro di riferimento Apache Sling, Adobe fornisce anche un nuovo quadro di protezione CSRF per proteggere contro questo tipo di attacchi.
Il framework utilizza i token per garantire che la richiesta del cliente sia legittima. I token vengono generati quando il modulo viene inviato al client e convalidato al momento del ritorno del modulo al server.
Nelle istanze pubblicate non sono presenti token per gli utenti anonimi.
Qualsiasi componente che si basa sulla dipendenza granite.jquery
beneficerà automaticamente del CSRF Protection Framework. Se questo non avviene per uno dei componenti, è necessario dichiarare una dipendenza in granite.csrf.standalone
prima di poter utilizzare il framework.
Per poter utilizzare i token, è necessario replicare il binario /etc/keys/hmac
in tutte le istanze della distribuzione. Un modo pratico per copiare la chiave HMAC in tutte le istanze consiste nel creare un pacchetto contenente la chiave e installarlo tramite Gestione pacchetti in tutte le istanze.
Per utilizzare CSRF Protection Framework è inoltre necessario apportare le modifiche alla configurazione del dispatcher.
Se utilizzate la cache del manifesto con l'applicazione Web, accertatevi di aggiungere "*" al manifesto per essere certi che il token non porti offline la chiamata di generazione del token CSRF. Per ulteriori informazioni, consultare questo collegamento.
Per ulteriori informazioni sugli attacchi CSRF e sui modi per attenuarli, vedere la pagina Cross-Site Request Forgery OWASP.