Configurar Dispatcher de Adobe Experience Manager para prevenir ataques de tipo CSRF configuring-dispatcher-to-prevent-csrf-attacks
AEM (Adobe Experience Manager) ofrece un marco de trabajo para evitar los ataques de falsificación de solicitudes en sitios múltiples. Para utilizar correctamente este marco de trabajo, realice los siguientes cambios en la configuración de Dispatcher:
-
En la sección
/clientheaders
deauthor-farm.any
ypublish-farm.any
, agregue la siguiente entrada al final de la lista:CSRF-Token
-
En la sección /filters de los archivos
author-farm.any
ypublish-farm.any
opublish-filters.any
, agregue la siguiente línea para permitir las 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 validar que la configuración esté funcionando, observe el archivo dispatcher.log en modo DEBUG. Puede ayudarle a validar que el archivo token.json
para asegurarse de que los filtros no lo almacenen en caché o lo bloqueen. Debería ver mensajes similares a los siguientes:... 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 access_log
de Apache. Las solicitudes para “/libs/granite/csrf/token.json” deben devolver un código de estado HTTP 200.