Configurar Dispatcher para prevenir ataques de tipo CSRF configuring-dispatcher-to-prevent-csrf-attacks
AEM ofrece un marco de trabajo para evitar los ataques de falsificación de solicitudes entre sitios. Para utilizar correctamente este marco, debe realizar los siguientes cambios en la configuración de Dispatcher:
- En la sección
/clientheaders
de author-farm.any y publish-farm.any, agregue la siguiente entrada al final de la lista:CSRF-Token
- En la sección /filters del archivo
author-farm.any
ypublish-farm.any
opublish-filters.any
, agregue la siguiente línea para permitir solicitudes de/libs/granite/csrf/token.json
a través de Dispatcher./0999 { /type "allow" /glob " * /libs/granite/csrf/token.json*" }
- En la sección
/cache /rules
de supublish-farm.any
, agregue una regla para bloquear Dispatcher y evitar que almacene el archivotoken.json
en caché. Normalmente, los autores omiten el almacenamiento en caché, por lo que no debe agregar la regla a suauthor-farm.any
./0999 { /glob "/libs/granite/csrf/token.json" /type "deny" }
Para comprobar que la configuración está funcionando, observe el archivo dispatcher.log en modo DEBUG para verificar que el archivo token.json no se está almacenando en caché y que los filtros no lo están bloqueando. Debería ver mensajes similares a:... checking [/libs/granite/csrf/token.json]
... request URL not in cache rules: /libs/granite/csrf/token.json
... cache-action for [/libs/granite/csrf/token.json]: NONE
También puede comprobar que las solicitudes se están realizando correctamente en su Apache access_log
. Las solicitudes para "/libs/granite/csrf/token.json" deben devolver un código de estado HTTP 200.