Detecciones de JavaScript
Las características de bot de IBM Cloud® Internet Services (CIS) incluyen detecciones de JavaScript. Se inyecta una pequeña cantidad de JavaScript en los dispositivos cliente utilizando la técnica de huellas dactilares Picasso deGoogle. Los resultados de Picasso se tienen en cuenta en las puntuaciones de bot y ayudan a CIS a clasificar el tráfico como automatizado o humano. BotScoreSrc: Not Computed y una puntuación de 0 son relevantes para las solicitudes de huellas digitales de JavaScript de Picasso. Estas solicitudes están exentas de ser bloqueadas por cualquier regla de cortafuegos.
Esta técnica de detección recopila datos generales sobre las máquinas que llegan a CIS. Por ejemplo, si un usuario concreto accede a CIS a través de Google Chrome en un MacBook Pro, debido a que hay millones de personas que utilizan Google Chrome en un MacBook Pro, CIS no puede identificar a personas concretas. CIS también toma medidas para anonimizar y eliminar gradualmente los datos para mayor privacidad.
JavaScript sólo se inyecta en respuesta a las solicitudes de páginas HTML o vistas de página, excluyendo las llamadas AJAX. El tráfico de API y aplicaciones móviles no se ve afectado. Además, el código no se vuelve a inyectar hasta que caduque su vida de sesión de 30 minutos. El script de Picasso tiene aproximadamente 70 KB y el tiempo de ejecución varía según el dispositivo, desde 90 ms hasta alrededor de 500 ms.
Los fragmentos de código de JavaScript contendrán un origen que apunta a la plataforma de desafío con vías de acceso que empiezan por /cdn-cgi/challenge-platform/....
Habilitar detecciones de JavaScript
Para los planes de prueba sin coste (modo de lucha contra bots), las detecciones de JavaScript s están habilitadas automáticamente y no se pueden deshabilitar.
Para todos los demás planes (Super Bot Fight Mode y Bot Management for Enterprise), las detecciones de JavaScript son opcionales. Para ajustar los valores, vaya a Seguridad > Bots.
Imposición de la ejecución de detecciones de JavaScript
Para asegurarse de que los visitantes han ejecutado y pasado previamente detecciones de JavaScript, puede crear una regla de cortafuegos con el campo cf.bot_management.js_detection.passed que realiza una acción de verificación de
identidad gestionada. Especifique (cf.bot_management.js_detection.passed) en la sección Vista previa de expresión como una regla singular.
Consideraciones
- Si tiene una política de seguridad de contenido (CSP):
-
Asegúrese de que todo lo que esté bajo
/cdn-cgi/challenge-platform/esté permitido. El CSP debe permitir scripts que se sirven desde el dominio de origen (script-src self). -
Si el CSP utiliza un
noncepara etiquetas de script, CIS añade estos valores nonces a los scripts que inyecta analizando la cabecera de respuesta CSP. -
Si el CSP no utiliza
noncepara etiquetas de script y la detección de JavaScript está habilitada, es posible que vea un error de consola como, por ejemplo,Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-b123b8a70+4jEj+d6gWI9U6IilUJIrlnRJbRR/uQl2Jc='), or a nonce ('nonce-...') is required to enable inline execution. -
No se recomienda utilizar
unsafe-inline. En su lugar, se recomienda utilizar CSPnoncesen las etiquetas de script que se analizan y se soportan en la CDN.
-