Show Menu
ARGOMENTI×

Prevenzione degli attacchi CSRF

Funzionamento degli attacchi CSRF

Il CSRF (Cross-site request forgery) è una vulnerabilità del sito Web in cui un browser di utenti valido viene utilizzato per inviare una richiesta dannosa, possibilmente tramite un iFrame. Poiché il browser invia i cookie a livello di dominio, se l'utente ha attualmente eseguito il login a un'applicazione, i dati dell'utente potrebbero essere compromessi.
Ad esempio, considerate uno scenario in cui avete eseguito l’accesso alla console di amministrazione in un browser. Riceverete un messaggio e-mail contenente un collegamento. Fai clic sul collegamento per aprire una nuova scheda nel browser. La pagina aperta contiene un iFrame nascosto che invia una richiesta dannosa al server dei moduli tramite il cookie proveniente dalla sessione autenticata dei moduli AEM. Poiché User Management riceve un cookie valido, trasmette la richiesta.

Funzionamento dei referenti consentiti

I moduli AEM forniscono un filtro di riferimento che può aiutare a prevenire attacchi CSRF. Come funziona il filtro dei riferimenti:
  1. Il server dei moduli verifica il metodo HTTP utilizzato per la chiamata:
    • Se è POST, il server dei moduli esegue il controllo dell'intestazione del referente.
    • Se si tratta di GET, il server dei moduli bypassa il controllo del referer, a meno che CSRF_CHECK_GETS non sia impostato su true, nel qual caso esegue il controllo dell'intestazione del referer. CSRF_CHECK_GETS è specificato nel file web.xml dell’applicazione. (vedere "Proteggere dagli attacchi di contraffazione delle richieste cross-site" nella guida all' applicazione e alla sicurezza).
  2. Il server dei moduli verifica se l'URI richiesto è inserito nella lista bianca:
    • Se l’URI è inserito nella white list, il server trasmette la richiesta.
    • Se l’URI richiesto non è inserito nella white list, il server recupera il referente della richiesta.
  3. Se nella richiesta è presente un referente, il server verifica se si tratta di un referente consentito. Se consentita, il server verifica la presenza di un'eccezione di referente:
    • Se si tratta di un'eccezione, la richiesta viene bloccata.
    • Se non è un'eccezione, la richiesta viene passata.
  4. Se nella richiesta non è presente alcun referente, il server verifica se è consentito un referente nullo.
    • Se è consentito un referente nullo, la richiesta viene passata.
    • Se non è consentito un referente nullo, il server verifica se l'URI richiesto è un'eccezione per il referente nullo e gestisce la richiesta di conseguenza.

Configurare i referenti consentiti

Quando si esegue Configuration Manager, l'host e l'indirizzo IP predefiniti o il server moduli vengono aggiunti all'elenco Referente consentito. Potete modificare questo elenco nella console di amministrazione.
  1. Nella console di amministrazione, fate clic su Impostazioni > Gestione utente > Configurazione > Configura URL referente consentiti. L'elenco Referente consentito viene visualizzato nella parte inferiore della pagina.
  2. Per aggiungere un referente consentito:
    • Digitare un nome host o un indirizzo IP nella casella Referenti consentiti. Per aggiungere più di un referente consentito alla volta, digita ogni nome host o indirizzo IP su una nuova riga.
    • Nelle caselle Porta HTTP e Porte HTTPS, specificate le porte consentite per HTTP, HTTPS o entrambe. Se lasciate vuote queste caselle, vengono utilizzate le porte predefinite (porta 80 per HTTP e porta 443 per HTTPS). Se immettete 0 (zero) nelle caselle, tutte le porte del server vengono abilitate. Potete inoltre immettere un numero di porta specifico per attivare solo tale porta.
    • Fate clic su Aggiungi.
  3. Per rimuovere una voce dall'elenco Referente consentito, selezionarla dall'elenco e fare clic su Elimina.
    Se l’elenco di riferimenti consentiti è vuoto, la funzione CSRF smette di funzionare e il sistema diventa insicuro.
  4. Dopo aver modificato l'elenco Referente autorizzato, riavvia il server moduli AEM.