Detección de bot
El sistema de administración de bots de NetScaler utiliza varias técnicas para detectar el tráfico de bots entrantes. Las técnicas se utilizan como reglas de detección para detectar el tipo de bot. Las técnicas son las siguientes:
Nota:
La administración de bots admite un máximo de 32 entidades de configuración para las técnicas de lista de bloqueo, lista de permitidos y limitación de velocidad.
Lista de bots permitidos: Lista personalizada de direcciones IP (IPv4 e IPv6), subredes (IPv4 e IPv6) y expresiones de directivas que se pueden omitir como lista de permitidos.
Lista de bots bloqueados: Lista personalizada de direcciones IP (IPv4 e IPv6), subredes (IPv4 e IPv6) y expresiones de directivas a las que se debe bloquear el acceso a las aplicaciones web.
Reputación IP: Esta regla detecta si el tráfico de bots entrante proviene de una dirección IP maliciosa.
Huella digital del dispositivo: Esta regla detecta si el tráfico de bots entrante tiene el ID de huella digital del dispositivo en el encabezado de la solicitud entrante y los atributos de navegador de un tráfico de bot de cliente entrante.
Limitación:
- JavaScript debe estar habilitado en el explorador del cliente.
- No funciona para las respuestas XML.
Expresión de registro de bots: La técnica de detección le permite capturar información adicional como mensajes de registro. Los datos pueden ser el nombre del usuario que solicitó la URL, la dirección IP de origen y el puerto de origen desde el que el usuario envió la solicitud o los datos generados a partir de una expresión.
Límite de velocidad: Esta regla limita la velocidad de varias solicitudes provenientes del mismo cliente.
Trampa de bots: Detecta y bloquea los bots automatizados anunciando una URL de trampa en la respuesta del cliente. La URL parece invisible y no se puede acceder a ella si el cliente es un usuario humano. La técnica de detección es eficaz para bloquear los ataques de bots automatizados.
TPS: Detecta el tráfico entrante como bots si el número máximo de solicitudes y el aumento porcentual de las solicitudes superan el intervalo de tiempo configurado.
CAPTCHA: Esta regla usa un CAPTCHA para mitigar los ataques de bots. Un CAPTCHA es una validación de respuesta al desafío para determinar si el tráfico entrante proviene de un usuario humano o de un bot automatizado. La validación ayuda a bloquear los bots automatizados que causan infracciones de seguridad en las aplicaciones web. Puede configurar CAPTCHA como acción bot en las técnicas de reputación IP y detección de huellas dactilares del dispositivo.
Ahora, veamos cómo puede configurar cada técnica para detectar y administrar el tráfico de su bot.
Cómo actualizar el dispositivo a la configuración de administración de bots basada en CLI de NetScaler
Si va a actualizar el dispositivo desde una versión anterior (versión 13.0 de NetScaler versión 58.32 o anterior), primero debe convertir manualmente la configuración de administración de bots existente a la configuración de administración de bots basada en la CLI de NetScaler una sola vez. Complete los siguientes pasos para convertir manualmente la configuración de administración de bots.
-
Después de actualizar a la última versión, conéctese a la herramienta de actualización “upgrade_bot_config.py” mediante el siguiente comando
En la línea de comandos, escriba:
shell "/var/python/bin/python /netscaler/upgrade_bot_config.py > /var/bot_upgrade_commands.txt"
-
Ejecute la configuración mediante el siguiente comando.
En la línea de comandos, escriba:
batch -f /var/bot_upgrade_commands.txt
-
Guarda la configuración actualizada.
save ns config
Configurar la administración de bots basada en CLI de NetScaler
La configuración de administración de bots permite vincular una o más técnicas de detección de bots a un perfil de bot específico. Debe realizar los siguientes pasos para configurar la administración de bots basada en NetScaler:
- Habilitar administración de bots
- Importar firma de bot
- Agregar perfil de bot
- Enlazar perfil bot
- Agregar directiva de bot
- Directiva de bots de enlace
- Configurar los parámetros del bot
Nota:
Si va a actualizar el dispositivo desde una versión anterior, primero debe convertir manualmente la configuración de administración de bots existente. Para obtener más información, consulte la sección Cómo actualizar a la configuración de administración de bots basada en CLI de NetScaler.
Habilitar administración de bots
Antes de empezar, asegúrese de que la función Administración de bots esté habilitada en el dispositivo. Si tiene un NetScaler o VPX nuevo, debe habilitar la función antes de configurarla. Si va a actualizar un dispositivo NetScaler de una versión anterior a la versión actual, debe habilitar la función antes de configurarla. En la línea de comandos, escriba:
enable ns feature Bot
Importar firma de bot
Puede importar el archivo bot de firma predeterminado y vincularlo al perfil del bot. En la línea de comandos, escriba:
import bot signature [<src>] <name> [-comment <string>] [-overwrite]
Donde:
src
- Nombre de ruta local o URL (protocolo, host, ruta y nombre de archivo). Longitud máxima: 2047.
> Nota:
>
> La importación falla si el objeto que se va a importar se encuentra en un servidor HTTPS que requiere la autenticación con certificado de cliente para acceder.
name
- Nombre del objeto del archivo de firma del bot. Se trata de un argumento obligatorio. Longitud máxima: 31.
comment
- Descripción del objeto del archivo de firma. Longitud máxima: 255.
overwrite
- Acción que sobrescribe el archivo existente.
> Nota:
>
> Utilice la opción overwrite
para actualizar el contenido del archivo de firma. Como alternativa, utilice el comando update bot signature <name>
para actualizar el archivo de firma en el dispositivo NetScaler.
Ejemplo
import bot signature http://www.example.com/signature.json signaturefile -comment commentsforbot –overwrite
Nota:
Puede utilizar la opción sobrescribir para actualizar el contenido del archivo de firma. Además, puede utilizar el comando
update bot signature <name>
para actualizar el archivo de firma en el dispositivo NetScaler.
Agregar perfil de bot
Un perfil de bot es un conjunto de parámetros de perfil para configurar la administración de bots en el dispositivo. Puede configurar los parámetros para realizar la detección de bots.
En la línea de comandos, escriba:
add bot profile <name> [-signature <string>] [-errorURL <string>] [-trapURL <string>] [-whiteList ( ON | OFF )] [-blackList ( ON | OFF )] [-rateLimit ( ON | OFF )] [-deviceFingerprint ( ON | OFF )] [-deviceFingerprintAction ( none | log | drop | redirect | reset | mitigation )] [-ipReputation ( ON | OFF )] [-trap ( ON | OFF )]
Ejemplo:
add bot profile profile1 -signature signature -errorURL http://www.example.com/error.html -trapURL /trap.html -whitelist ON -blacklist ON -ratelimit ON -deviceFingerprint ON -deviceFingerprintAction drop -ipReputation ON -trap ON
Enlazar perfil bot
Después de crear un perfil de bot, debes enlazar el mecanismo de detección de bots al perfil.
En la línea de comandos, escriba:
bind bot profile <name> | (-ipReputation [-category <ipReputationCategory>] [-enabled ( ON | OFF )] [-action ( none | log | drop | redirect | reset | mitigation )] [-logMessage <string>]
Ejemplo:
El siguiente ejemplo sirve para vincular la técnica de detección de reputación IP a un perfil de bot específico.
bind bot profile profile5 -ipReputation -category BOTNET -enabled ON -action drop -logMessage message
Agregar directiva de bot
Debe agregar la directiva de bots para evaluar el tráfico de bots.
En la línea de comandos, escriba:
add bot policy <name> -rule <expression> -profileName <string> [-undefAction <string>] [-comment <string>] [-logAction <string>]
Donde:
Name
- Nombre de la directiva de bots. Debe comenzar con una letra, un número o un carácter de guión bajo (_) y debe contener solo letras, números y guión (-), punto (.), almohadilla (#), espacio ( ), en (@), igual a (=), dos puntos (:) y guión bajo. Se puede cambiar después de agregar la directiva de bots.
Rule
- Expresión que usa la directiva para determinar si se debe aplicar el perfil de bot a la solicitud especificada. Se trata de un argumento obligatorio. Longitud máxima: 1499
profileName
- Nombre del perfil de bot que se aplicará si la solicitud coincide con esta directiva de bots. Se trata de un argumento obligatorio. Longitud máxima: 127
undefAction
- Acción a realizar si el resultado de la evaluación de la directiva no está definido (UNDEF). Un evento UNDEF indica una condición de error interno. Longitud máxima: 127
Comment
- Descripción de esta directiva de bots. Longitud máxima: 255
logAction
- Nombre de la acción de registro que se utilizará para las solicitudes que coincidan con esta directiva. Longitud máxima: 127
Ejemplo:
add bot policy pol1 –rule "HTTP.REQ.HEADER(\"header\").CONTAINS(\"custom\")" - profileName profile1 -undefAction drop –comment commentforbotpolicy –logAction log1
Enlazar directiva de bots global
En la línea de comandos, escriba:
bind bot global -policyName <string> -priority <positive_integer> [-gotoPriorityExpression <expression>][-type ( REQ_OVERRIDE | REQ_DEFAULT )] [-invoke (-labelType ( vserver | policylabel ) -labelName <string>) ]
Ejemplo:
bind bot global –policyName pol1 –priority 100 –gotoPriorityExpression NEXT -type REQ_OVERRIDE
Enlazar la directiva bot a un servidor virtual
En la línea de comandos, escriba:
bind lb vserver <name>@ ((<serviceName>@ [-weight <positive_integer>] ) | <serviceGroupName>@ | (-policyName <string>@ [-priority <positive_integer>] [-gotoPriorityExpression <expression>]
Ejemplo:
bind lb vserver lb-server1 –policyName pol1 –priority 100 –gotoPriorityExpression NEXT -type REQ_OVERRIDE
Configurar los parámetros del bot
Si es necesario, puede personalizar la configuración predeterminada. En la línea de comandos, escriba:
set bot settings [-defaultProfile <string>] [-javaScriptName <string>] [-sessionTimeout <positive_integer>] [-sessionCookieName <string>] [-dfpRequestLimit <positive_integer>] [-signatureAutoUpdate ( ON | OFF )] [-signatureUrl <URL>] [-proxyServer <ip_addr|ipv6_addr|*>] [-proxyPort <port|*>]
<!--NeedCopy-->
Donde:
defaultProfile
- Perfil para usar cuando una conexión no coincide con ninguna directiva. La configuración predeterminada es “ “, que envía conexiones no coincidentes al NetScaler sin intentar filtrarlas más. Longitud máxima: 31
javaScriptName
- Nombre del código JavaScript que la función BotNet utiliza en respuesta. Debe comenzar con una letra o un número y puede constar de 1 a 31 letras, números y los símbolos de guión (-) y guión bajo (_). El siguiente requisito se aplica únicamente a la CLI de NetScaler: Si el nombre incluye uno o más espacios, escriba el nombre entre comillas dobles o simples (por ejemplo, “nombre de mi cookie” o “nombre de mi cookie”). Longitud máxima: 31
sessionTimeout
- Se agota el tiempo de espera de la sesión, en segundos, tras lo cual se termina la sesión de un usuario.
Minimum value
- 1, valor máximo: 65535
sessionCookieName
- Nombre de la cookie de sesión que la función BotNet utiliza para rastrear. Debe comenzar con una letra o un número y puede constar de 1 a 31 letras, números y los símbolos de guión (-) y guión bajo (_). El siguiente requisito se aplica únicamente a la CLI de NetScaler: Si el nombre incluye uno o más espacios, escriba el nombre entre comillas dobles o simples (por ejemplo, “nombre de mi cookie” o “nombre de mi cookie”). Longitud máxima: 31
dfpRequestLimit
- Número de solicitudes que se pueden permitir sin la cookie de sesión del bot si la huella digital del dispositivo está habilitada. Valor mínimo: 1, Valor máximo: 4294967295
signatureAutoUpdate
- Bandera utilizada para habilitar/inhabilitar la actualización automática de firmas de bots. Valores posibles: ON, OFF.
Valor por defecto: OFF
signatureUrl
- URL para descargar el archivo de mapeo de firmas del bot desde el servidor. Valor predeterminado: https://nsbotsignatures.s3.amazonaws.com/BotSignatureMapping.json
. Longitud máxima: 2047
proxyServer
- IP del servidor proxy para obtener firmas actualizadas de AWS.
proxyPort
- Puerto de servidor proxy para obtener firmas actualizadas de AWS. Valor por defecto: 8080
proxyUsername
- Nombre de usuario para autenticarse en el servidor proxy para descargar las actualizaciones de firmas.
proxyPassword
— Contraseña para autenticarse en el servidor proxy para descargar las actualizaciones de firmas.
Ejemplo:
set bot settings –defaultProfile profile1 –javaScriptName json.js –sessionTimeout 1000 –sessionCookieName session -proxyServer 10.102.30.112 -proxyPort 3128 -proxyUsername defaultuser -proxyPassword defaultPassword
Configuración de la administración de bots mediante la GUI de NetScaler
Puede configurar la administración de bots de NetScaler habilitando primero la función en el dispositivo. Una vez habilitada, puede crear una directiva de bots para evaluar el tráfico entrante como bot y enviar el tráfico al perfil del bot. A continuación, crea un perfil de bot y, a continuación, enlaza el perfil a una firma de bot. Como alternativa, también puede clonar el archivo de firma de bot predeterminado y usar el archivo de firma para configurar las técnicas de detección. Después de crear el archivo de firma, puede importarlo al perfil del bot.
- Activar función de administración de bots
- Configurar parámetros de administración de bots
- Clone la firma predeterminada del bot NetScaler
- Importar la firma del bot de NetScaler
- Configurar los parámetros de firma bot
- Crear perfil de bot
- Crear directiva de bots
Activar función de administración de bots
Complete los siguientes pasos para habilitar la administración de bots:
- En el panel de navegación, expanda Sistema y, a continuación, haga clic en Configuración > Configurar funciones avanzadas.
- En la página Configurar funciones avanzadas, seleccione la casilla NetScaler Bot Management.
- Haga clic en Aceptar.
Configurar los parámetros de administración de bots para la técnica de huella digital
Complete el siguiente paso para configurar la técnica de huellas dactilares del dispositivo:
- Vaya a Seguridad > Administración de bots de NetScaler.
- En el panel de detalles, en Configuración, haga clic en Cambiar configuración de administración de bots de NetScaler.
-
En Configurar opciones de administración de bots de NetScaler, defina los siguientes parámetros.
- Perfil predeterminado. Seleccione un perfil de bot.
- Nombre JavaScript. Nombre del archivo JavaScript que utiliza la administración de bots en su respuesta al cliente.
- Tiempo de espera de sesión. Tiempo de espera en segundos tras el cual finaliza la sesión del usuario.
- Cookie de sesión. Nombre de la cookie de sesión que utiliza el sistema de gestión de bots para realizar el seguimiento.
- Límite de solicitud de huellas digitales del dispositivo. Número de solicitudes que se permiten sin una cookie de sesión de bot, si la huella digital del dispositivo está habilitada.
- Servidor proxy: dirección IP del servidor proxy desde donde se cargan las firmas más recientes.
- Puerto proxy: número de puerto de la máquina desde la que se cargan las firmas más recientes.
- Nombre de usuario del proxy: nombre de usuario para la autenticación del servidor proxy
- Contraseña de proxy: contraseña para la autenticación del servidor proxy.
Nota:
Los campos Nombre de usuario del proxy y Contraseña del proxy están habilitados si están configurados los campos Servidor proxy y Puerto proxy.
- Haga clic en Aceptar.
Clonar archivo de firma de bot
Complete el siguiente paso para clonar el archivo de firma del bot:
- Vaya a Seguridad > Administración de bots de NetScaler y Firmas.
- En la página Firmas de la administración de bots de NetScaler, seleccione el registro de firmas de bots predeterminado y haga clic en Clonar.
- En la página Clonar firma de bot, introduzca un nombre y modifique los datos de firma.
- Haga clic en Crear.
Importar archivo de firma bot
Si tiene su propio archivo de firma, puede importarlo como archivo, texto o URL. Realice los siguientes pasos para importar el archivo de firma del bot:
- Vaya a Seguridad > Administración de bots de NetScaler y Firmas.
- En la página de firmas de NetScaler Bot Management, importe el archivo como URL, archivo o texto.
- Haga clic en Continuar.
- En la página Importar la firma de NetScaler Bot Management, defina los siguientes parámetros.
- Nombre: nombre del archivo de firma del bot.
- Comentario: breve descripción del archivo importado.
- Sobrescribir: seleccione la casilla de verificación para permitir la sobrescritura de datos durante la actualización del archivo.
- Datos de firma: modificar los parámetros de firma
- Haga clic en Listo.
Configurar la lista de bots permitidos mediante la GUI de NetScaler
Esta técnica de detección le permite omitir las URL que configura en una lista permitida. Complete el siguiente paso para configurar una URL de lista de permitidos:
- Vaya aSeguridad > Gestión de**bots y perfiles de NetScaler .**
- En la página Perfiles de administración de bots de NetScaler, seleccione un archivo y haga clic en Modificar.
- En la página Perfil de administración de bots de NetScaler, vaya a la sección Configuración de firmas y haga clic en Lista de permitidos.
- En la sección Lista de permitidos, establezca los siguientes parámetros:
- Habilitada. Seleccione la casilla de verificación para validar las URL de la lista de permitidos como parte del proceso de detección.
- Configurar tipos. Configure una URL de lista de permitidos. La URL se omite durante la detección del bot. Haga clic en Agregar para agregar una URL a la lista de bots permitidos.
- En la página Configurar enlace de lista de permitidos del perfil de administración de NetScaler bot, establezca los siguientes parámetros:
- Escriba. El tipo de URL puede ser una dirección IPv4, una dirección IP de subred o una dirección IP que coincida con una expresión de directiva.
- Habilitada. Selecciona la casilla de verificación para validar la URL.
- Valor. Dirección URL.
- Registrar. Seleccione la casilla de verificación para almacenar las entradas de registro.
- Registrar mensaje. Breve descripción del registro.
- Comentarios. Breve descripción de la URL de la lista de permitidos.
- Haga clic en Aceptar.
- Haga clic en Update.
- Haga clic en Listo.
Configurar la lista de bloques de bots mediante la GUI de NetScaler
Esta técnica de detección le permite eliminar las URL que configura como una lista de bloqueo. Complete el siguiente paso para configurar una URL de lista de bloqueo.
- Vaya aSeguridad > Gestión de**bots y perfiles de NetScaler .**
- En la página Perfiles de administración de bots de NetScaler, seleccione un archivo de firma y haga clic en Modificar.
- En la página Perfil de administración de bots de NetScaler, vaya a la sección Configuración de firma y haga clic en Lista de bloqueados.
-
En la sección Lista de prohibidos, defina los siguientes parámetros:
- Habilitada. Seleccione la casilla de verificación para validar las URL de la lista de bloqueados como parte del proceso de detección.
- Configurar tipos. Configure una URL para que forme parte del proceso de detección de listas de bloqueo de bots. Estas URL se eliminan durante la detección de bots. Haga clic en Agregar para agregar una URL a la lista de bots bloqueados
-
En la página Configurar la vinculación de listas de bloqueados del perfil de administración de bots de NetScaler, defina los siguientes parámetros.
- Escriba. El tipo de URL puede ser una dirección IPv4, una dirección IP de subred o una dirección IP.
- Habilitada. Selecciona la casilla de verificación para validar la URL.
- Valor. Dirección URL.
- Registrar. Seleccione la casilla de verificación para almacenar las entradas de registro.
- Registrar mensaje. Breve descripción del inicio de sesión.
- Comentarios. Breve descripción de la URL de la lista de bloqueo.
- Haga clic en Aceptar.
- Haga clic en Update.
- Haga clic en Listo.
Configurar la reputación de IP mediante la interfaz gráfica de usuario de NetScaler
La técnica del bot de reputación IP utiliza la base de datos de reputación IP de Webroot y la base de datos de proveedores de servicios en la nube para verificar si una solicitud de un cliente es una dirección IP maliciosa o una dirección IP de nube pública. Como parte de las categorías de bots se configura y luego se le asocia una acción de bot. Complete los siguientes pasos para configurar la reputación de IP de Webroot y las categorías de base de datos de proveedores de servicios en la nube.
- Vaya a Seguridad > Administración de bots de NetScaler y Perfiles.
- En la página Perfiles de administración de bots de NetScaler, seleccione un perfil y haga clic en Modificar.
- En la página Perfil de administración de bots de NetScaler, vaya a la sección Configuración del perfil y haga clic en Reputación IP.
- En la sección Reputación IP, defina los siguientes parámetros:
- Habilitada. Seleccione la casilla de verificación para validar el tráfico de bots entrante como parte del proceso de detección.
- Configurar categorías. Puede utilizar la técnica de reputación de IP para el tráfico de bots entrante en diferentes categorías. Según la categoría configurada, puede eliminar o redirigir el tráfico del bot. Haga clic en Agregar para configurar una categoría de bot malintencionado.
-
En la página Configurar enlace de reputación IP del perfil de NetScaler bot Management, defina los siguientes parámetros:
-
Categoría. Seleccione una categoría de bot de reputación IP de Webroot para validar una solicitud de cliente como una dirección IP malintencionada.
- IP_BASED: Esta categoría comprueba si la dirección IP del cliente (IPv4 e IPv6) es maliciosa o no.
- BOTNET: Esta categoría incluye canales de Botnet C&C y máquinas zombis infectadas controladas por Bot master.
- SPAM_SOURCES: Esta categoría incluye la tunelización de mensajes de spam a través de un proxy, las actividades SMTP anómalas y las actividades de spam del foro.
- ESCÁNERES: Esta categoría incluye todos los reconocimientos, como sondas, escaneo de host, escaneo de dominio y ataque de fuerza bruta de contraseña.
- DOS: Esta categoría incluye DOS, DDOS, inundación de sincronización anómala y detección de tráfico anómalo.
- REPUTACIÓN: Esta categoría deniega el acceso desde direcciones IP (IPv4 e IPv6) que actualmente se sabe que están infectadas con malware. Esta categoría también incluye direcciones IP con una puntuación media baja del Índice de Reputación de Webroot. Al habilitar esta categoría se evita el acceso desde las fuentes identificadas a los puntos de distribución de malware de contacto.
- PHISHING: Esta categoría incluye las direcciones IP (IPv4 e IPv6) que alojan sitios de phishing y otros tipos de actividades fraudulentas, como el fraude de clics en anuncios o el fraude de juegos.
- PROXY: Esta categoría incluye las direcciones IP (IPv4 e IPv6) que proporcionan servicios de proxy.
- RED: IP que brindan servicios de proxy y anonimización, incluido The Onion Router, también conocido como TOR o dark net.
- MOBILE_THREATS: Esta categoría comprueba la dirección IP del cliente (IPv4 e IPv6) con la lista de direcciones perjudiciales para los dispositivos móviles.
-
Categoría. Seleccione una categoría de proveedor de servicios de nube pública de Webroot para validar que la solicitud de un cliente es una dirección IP de nube pública.
- AWS: Esta categoría comprueba la dirección IP del cliente con una lista de direcciones de nube pública de AWS.
- GCP: Esta categoría comprueba la dirección IP del cliente con una lista de direcciones de nube pública de Google Cloud Platform.
- AZURE: Esta categoría comprueba la dirección del cliente con una lista de direcciones de nube pública de Azure.
- ORACLE: Esta categoría comprueba la dirección IP del cliente con una lista de direcciones de nube pública de Oracle
- IBM: Esta categoría comprueba la dirección IP del cliente con una lista de direcciones de nube pública de IBM.
- SALESFORCE: Esta categoría comprueba la dirección IP del cliente con una lista de direcciones de nube pública de Salesforce.
Valores posibles para la categoría de bot de reputación IP de Webroot: IP, BOTNETS, SPAM_SOURCES, SCANNERS, DOS, REPUTATION, PHISHING, PROXY, NETWORK, MOBILE_THREATS.
Valores posibles para la categoría de proveedor de servicios de nube pública de Webroot: AWS, GCP, AZURE, ORACLE, IBM, SALESFORCE.
- Habilitada. Seleccione la casilla de verificación para validar la detección de firmas de reputación IP.
- Acción de bot. Según la categoría configurada, no puede asignar ninguna acción, rechazo, redirección o acción de mitigación.
- Registrar. Seleccione la casilla de verificación para almacenar las entradas de registro.
- Registrar mensaje. Breve descripción del registro.
- Comentarios. Breve descripción de la categoría bot.
-
- Haga clic en Aceptar.
- Haga clic en Update.
-
Haga clic en Listo.
Nota:
Si inhabilita la reputación IP, asegúrate de detener sus descargas. Complete los siguientes pasos para detener las descargas de reputación IP:
- Vaya a Seguridad > Administración de bots de NetScaler > Cambiar la configuración de administración de bots de NetScaler
- Cambie el perfil no intrusivo predeterminado a BOT_BYPASS.
Configurar la técnica de límite de velocidad de bots
La técnica de límite de velocidad de bots le permite limitar el tráfico de bots dentro de un período de tiempo determinado en función de la geolocalización del usuario, la dirección IP del cliente, la sesión, la cookie o el recurso configurado (URL). Al configurar la técnica de límite de velocidad de bots, puede garantizar lo siguiente:
- Bloquea la actividad de bots maliciosos.
- Reducir la tensión del tráfico a los servidores web.
Configure el límite de velocidad de bots mediante la CLI de NetScaler
En la línea de comandos, escriba:
bind bot profile <name>... -ratelimit -type <type> Geolocation -countryCode <countryName> -rate <positive_integer> -timeSlice <positive_integer> [-action <action> ...] [-limitType ( BURSTY | SMOOTH )] [-condition <expression>] [-enabled ( ON | OFF )]
<!--NeedCopy-->
Donde:
*SOURCE_IP
- Limitación de velocidad en función de la dirección IP del cliente.
*SESSION
- Limitación de velocidad en función del nombre de cookie configurado.
*URL
- Limitación de velocidad en función de la URL configurada.
*GEOLOCATION
- Limitación de velocidad basada en el nombre del país configurado.
Possible values
- SESSION, SOURCE_IP, URL, GEOLOCATION
Ejemplo:
bind bot profile geo_prof -ratelimit -type Geolocation -countryCode IN -rate 100 -timeSlice 1000 -limitType SMOOTH -condition HTTP.REQ.HEADER("User-Agent").contains("anroid") -action log,drop -enabled on
<!--NeedCopy-->
Configurar el límite de velocidad de bots mediante la GUI de NetScaler
Complete los siguientes pasos para configurar la técnica de detección del límite de velocidad de los bots:
- Vaya aSeguridad > Gestión de bots y perfiles de NetScaler.
- En la página Perfiles de administración de bots de NetScaler, seleccione un perfil y haga clic en Modificar.
- En la página del perfil de administración de bots de NetScaler, vaya a la sección Configuración del perfil y haga clic en Límite de velocidad.
-
En la sección Límite de velocidad, defina los siguientes parámetros:
- Habilitada. Seleccione la casilla de verificación para validar el tráfico de bots entrante como parte del proceso de detección.
- Haga clic en Agregar para configurar los enlaces de límite de velocidad.
-
En la página Configurar el límite de velocidad de administración de bots de NetScaler, defina los siguientes parámetros.
-
Tipo: limite la velocidad del tráfico de bots en función de los siguientes parámetros:
- Geolocalización: límite de velocidad basado en la ubicación geográfica del usuario.
- source_IP: límite de velocidad de tráfico basado en la dirección IP del cliente.
- Sesión: limite la velocidad del tráfico de bots en función del nombre de la sesión o de la cookie.
- URL: limita la velocidad del tráfico de bots en función de la URL configurada.
- País: selecciona una geolocalización como país o región.
- Tipo de límite de velocidad: limita el tipo de tráfico en función de los siguientes tipos.
- Ráfaga: reenvía todas las solicitudes que estén dentro del umbral establecido y del período de tiempo especificado.
- Suave: reenvíe las solicitudes de manera uniforme durante el período de tiempo especificado.
- Conexión con límite de velocidad: le permite crear varias reglas para una afección.
- Habilitado: seleccione la casilla de verificación para validar el tráfico de bots entrante.
- Umbral de solicitud: número máximo de solicitudes permitidas dentro de un período de tiempo determinado.
- Período: período de tiempo en milisegundos.
- Acción: elige una acción de bot para la categoría seleccionada.
- Registro: seleccione la casilla de verificación para almacenar las entradas del registro.
- Mensaje de registro: breve descripción del registro.
- Comentarios: breve descripción de la categoría de bots.
-
- Haga clic en Aceptar.
- Haga clic en Update.
- Haga clic en Listo.
Configurar la técnica de huellas digitales del dispositivo mediante la interfaz gráfica de usuario de NetScaler
Esta técnica de detección envía un desafío de script java al cliente y extrae la información del dispositivo. Según la información del dispositivo, la técnica descarta o evita el tráfico del bot. Siga los pasos para configurar la técnica de detección.
- Vaya aSeguridad > Gestión de**bots y perfiles de NetScaler .**
- En la página Perfiles de administración de bots de NetScaler, seleccione un archivo de firma y haga clic en Modificar.
-
En la página Perfil de administración de bots de NetScaler, vaya a la sección Configuración de firmas y haga clic en Huella digital del dispositivo. En la sección Huella digital del dispositivo, defina los siguientes parámetros:
- Enabled - Select to enable the rule.
- Configuration - Select one of the following options:
- None - Allows the traffic.
- Drop - Drops the traffic.
- Redirect - Redirects the traffic to error URL.
-
Mitigation, or CAPTCHA - Validates and allows the traffic.
Note:
During session replay attacks using the device fingerprint cookies, requests are dropped even if the device fingerprint configuration is set to Mitigation.
- Haga clic en Update.
- Haga clic en Listo.
Configurar la técnica de huellas dactilares del dispositivo para aplicaciones móviles (Android)
La técnica de huella digital del dispositivo detecta un tráfico entrante como bot insertando un script JavaScript en la respuesta HTML al cliente. El script JavaScript, cuando el explorador lo invoca, recopila los atributos del explorador y del cliente y envía una solicitud al dispositivo. Los atributos se examinan para determinar si el tráfico es un bot o un humano.
La técnica de detección se amplía aún más para detectar bots en una plataforma móvil (Android). A diferencia de las aplicaciones web, en el tráfico móvil (Android), la detección de bots basada en scripts JavaScript no se aplica. Para detectar bots en una red móvil, la técnica utiliza un SDK móvil bot que está integrado con las aplicaciones móviles del lado del cliente. El SDK intercepta el tráfico móvil, recopila los detalles del dispositivo y envía los datos al dispositivo. En el lado del dispositivo, la técnica de detección examina los datos y determina si la conexión procede de un bot o de un humano.
Cómo funciona la técnica de huellas dactilares del dispositivo para la aplicación móvil
En los siguientes pasos se explica el flujo de trabajo de detección de bots para detectar si una solicitud de un dispositivo móvil proviene de un humano o de un bot.
- Cuando un usuario interactúa con una aplicación móvil, el bot mobile SDK registra el comportamiento del dispositivo.
- El cliente envía una solicitud al dispositivo NetScaler.
- Al enviar la respuesta, el dispositivo inserta una cookie de sesión de bot con los detalles de la sesión y los parámetros para recopilar los parámetros del cliente.
- Cuando la aplicación móvil recibe la respuesta, el SDK de bots de NetScaler, que está integrado con la aplicación móvil, valida la respuesta, recupera los parámetros de huellas dactilares del dispositivo registrados y los envía al dispositivo.
- La técnica de detección de huellas dactilares del dispositivo valida los detalles del dispositivo y actualiza la cookie de sesión del bot si se sospecha que es un bot o no.
- Cuando la cookie ha caducado o la protección de huellas dactilares del dispositivo prefiere validar y recopilar los parámetros del dispositivo periódicamente, se repite todo el procedimiento o desafío.
Requisito previo
Para empezar con la técnica de detección de huellas dactilares del dispositivo NetScaler para aplicaciones móviles, debe descargar e instalar el SDK móvil bot en su aplicación móvil.
Configurar la técnica de detección de huellas dactilares para aplicaciones móviles (Android) mediante la CLI
En la línea de comandos, escriba:
set bot profile <profile name> -deviceFingerprintMobile ( NONE | Android )
Ejemplo:
set bot profile profile 1 –deviceFingerprintMobile Android
Configurar la técnica de detección de huellas dactilares del dispositivo para aplicaciones móviles (Android) mediante la interfaz gráfica de usuario
- Vaya aSeguridad > Gestión de**bots y perfiles de NetScaler .**
- En la página Perfiles de administración de bots de NetScaler, seleccione un archivo y haga clic en Modificar.
- En la página Perfil de administración de bots de NetScaler, haga clic en Huella digital del dispositivo en Configuración del perfil.
- En la sección Configurar Bot Mobile SDK, seleccione el tipo de cliente móvil.
- Haga clic en Actualizar y Listo.
Configurar expresión de registro de bot
Si el cliente se identifica como un bot, la administración de bots de NetScaler le permite capturar información adicional en forma de mensajes de registro. Los datos pueden ser el nombre del usuario que solicitó la URL, la dirección IP de origen y el puerto de origen desde el que el usuario envió la solicitud o los datos generados a partir de una expresión. Para realizar un registro personalizado, debe configurar una expresión de registro en el perfil de administración de bots.
Enlazar la expresión de registro en el perfil de bot mediante la CLI
En la línea de comandos, escriba:
bind bot profile <name> (-logExpression -name <string> -expression <expression> [-enabled ( ON | OFF )]) -comment <string>
<!--NeedCopy-->
Ejemplo:
bind bot profile profile1 –logExpression exp1 –expression HTTP.REQ.URL –enabled ON -comment "testing log expression"
Vincular expresión de registro al perfil de bot mediante la GUI
- Vaya a Seguridad > Administración de bots de NetScaler > Perfiles.
- En la página Perfiles de administración de bots de NetScaler, seleccione Expresiones de registro de bots en la sección Configuración del perfil.
- En la sección Configuración de expresiones de registro de bots, haga clic enAgregar**.
- En la página Configure NetScaler Bot Management Profile Bot Log Expression Binding, defina los siguientes parámetros.
- Nombre de expresión de registro. Nombre de la expresión de registro.
- Expresión. Introduzca la expresión de registro.
- Habilitada. Habilitar o inhabilitar el enlace de expresiones de registro.
- Comentarios. Breve descripción del enlace de expresiones de registro de bot.
- Haga clic enAceptar y Listo.
Configurar la técnica de captura de bot
La técnica de captura de bots de NetScaler inserta aleatoria o periódicamente una URL de captura en la respuesta del servidor. También puede crear una lista de URL de captura y agregar URL para ello. La URL parece invisible y no se puede acceder a ella si el cliente es un usuario humano. Sin embargo, si el cliente es un bot automatizado, se puede acceder a la URL y, cuando se accede, el atacante se clasifica como bot y se bloquea cualquier solicitud posterior del bot. La técnica de trampa es eficaz para bloquear los ataques de los bots.
La URL de captura es una URL alfanumérica de longitud configurable y se genera automáticamente a intervalos configurables. Además, la técnica le permite configurar una URL de inserción de capturas para los sitios web más visitados o los sitios web visitados con frecuencia. De esta manera, puede imponer el propósito de insertar la URL de captura de bots para las solicitudes que coincidan con la URL de inserción de trampa.
Nota:
Aunque la URL de captura de bots se genera automáticamente, la administración de bots de NetScaler sigue permitiéndole configurar una URL de captura personalizada en el perfil del bot. Esto se hace para reforzar la técnica de detección de bots y dificultar que los atacantes accedan a la URL de la trampa.
Para completar la configuración de la trampa de bots, debes completar los siguientes pasos.
- Habilitar URL de captura de bot
- Configurar la URL de captura de bots en el perfil del bot
- Enlace la URL de inserción de capturas de bots al perfil de
- Configurar la longitud y el intervalo de la URL de captura de bots en la configuración del bot
Habilitar la protección URL de captura de bots
Antes de empezar, debe asegurarse de que la protección URL de captura de bots esté habilitada en el dispositivo. En la línea de comandos, escriba:
enable ns feature Bot
Configurar la URL de captura de bots en el perfil del bot
Puede configurar la URL de captura de bots y especificar una acción de captura en el perfil del bot.
En la línea de comandos, escriba:
add bot profile <name> -trapURL <string> -trap ( ON | OFF ) -trapAction <trapAction>
Donde:
-
trapURL
es la URL que Bot Protection utiliza como URL de trampa. Longitud máxima: 127 -
trap
es habilitar la detección de trampas de bots. Valores posibles: ON, OFF. Valor por defecto: OFF -
trapAction
es una acción que debe realizarse en función de la detección de bots. Valores posibles: NONE, LOG, DROP, REDIRECT, RESET, MITIGATION. Valor predeterminado: NINGUNO
Ejemplo:
add bot profile profile1 -trapURL www.bottrap1.com trap ON -trapAction RESET
Enlace la URL de inserción de capturas de bots al perfil de
Puede configurar la URL de inserción de capturas de bots y vincularla al perfil de bot. En la línea de comandos, escriba:
bind bot profile <profile_name> trapInsertionURL –url <url> -enabled ON|OFF -comment <comment>
Donde:
URL
- El patrón de expresión regular de la URL de solicitud para el que se inserta la URL de la trampa de bots. Longitud máxima: 127
Ejemplo:
bind bot profile profile1 trapInsertionURL –url www.example.com –enabled ON –comment insert a trap URL randomly
Configurar la longitud y el intervalo de la URL de captura de bots en la configuración del bot
Puede configurar la longitud de la URL de la captura de bots y también establecer el intervalo para generar automáticamente la URL de captura de bot. En la línea de comandos, escriba:
set bot settings -trapURLAutoGenerate ( ON | OFF ) –trapURLInterval <positive_integer> -trapURLLength <positive_integer>
Donde:
-
trapURLInterval
es el tiempo en segundos tras el cual se actualiza la URL de la trampa de bots. Valor predeterminado: 3600, Valor mínimo: 300, Valor máximo: 86400 -
trapURLLength
. Longitud de la URL de captura de bots generada automáticamente. Valor predeterminado: 32, Valor mínimo: 10, Valor máximo: 255
Ejemplo:
set bot settings -trapURLAutoGenerate ON –trapURLInterval 300 -trapURLLength 60
Configurar la URL de captura de bots mediante la interfaz gráfica de usuario
- Vaya a Seguridad > Administración de bots de NetScaler > Perfiles.
- En la página de perfiles de administración de bots de NetScaler, haga clic en Modificar para configurar la técnica de URL de captura de bots.
- En la página Crear perfil de administración de bots de NetScaler, introduzca la URL de captura de bots en la sección general.
- En la página del perfil deadministración de bots de NetScaler, haga clic en Bot** Trap en la configuración del perfil.**
-
En la sección Bot Trap, defina los siguientes parámetros.
- Habilitada. Seleccione la casilla de verificación para habilitar la detección de trampas de bots
- Descripción. Breve descripción de la URL.
- En la sección Configurar acción, defina los siguientes parámetros.
1. Action. Action to be taken for bot detected by bot trap access. 1. Log. Enable or disable logging for bot trap binding.
- En la sección Configurar URL de inserción de captación, haga clic en Agregar.
-
En la página Configurar el perfil de administración de bots de NetScaler Bot Trap Binding, defina los siguientes parámetros.
- URL de captura. Escriba la URL que quiere confirmar como la URL de inserción de la trampa de bots.
- Habilitada. Habilitar o inhabilitar la URL de inserción de capturas de bots
- Comentario. Una breve descripción de la URL de inserción de capturas.
- Haga clic en Actualizar y Listo.
Configurar los parámetros de URL de captura de bots
Complete los siguientes pasos para configurar la URL de captura de bots:
- Vaya a Seguridad > Administración de bots de NetScaler.
- En el panel de detalles, en Configuración, haga clic en Cambiar configuración de administración de bots de NetScaler.
-
En Configurar los parámetros de administración de bots de NetScaler, defina los siguientes parámetros.
- Intervalo de URL de captura. Tiempo en segundos tras el cual se actualiza la URL de la trampa de bots.
- Longitud de URL de captura. Longitud de la URL de captura de bots generada automáticamente.
- Haga clic en Aceptar y Listo.
Expresión de directiva IP de cliente para detección de bots
La administración de bots de NetScaler ahora le permite configurar una expresión de directiva avanzada para extraer la dirección IP del cliente de un encabezado de solicitud HTTP, el cuerpo de la solicitud HTTP, la URL de una solicitud HTTP o mediante una expresión de directiva avanzada. Los valores extraídos los utiliza un mecanismo de detección de bots (como el TPS, la captura de bots o el límite de velocidad) para detectar si la solicitud entrante es un bot.
Nota:
Si no ha configurado una expresión IP de cliente, se utiliza la dirección IP del cliente de origen predeterminada o existente para la detección de bots. Si se configura una expresión, el resultado de la evaluación proporciona la dirección IP del cliente que se puede utilizar para la detección de bots.
Puede configurar y utilizar la expresión IP del cliente para extraer la dirección IP del cliente real si la solicitud entrante llega a través de un servidor proxy y si la dirección IP del cliente está presente en el encabezado. Al agregar esta configuración, el dispositivo puede utilizar el mecanismo de detección de bots para proporcionar más seguridad a los clientes y servidores de software.
Configurar la expresión de directiva IP del cliente en el perfil de bot mediante la CLI
En la línea de comandos, escriba:
add bot profile <name> [-clientIPExpression <expression>]
<!--NeedCopy-->
Ejemplo:
add bot profile profile1 –clientIPExpression 'HTTP.REQ.HEADER("X-Forwarded-For") ALT CLIENT.IP.SRC.TYPECAST_TEXT_T'
add bot profile profile1 –clientIPExpression 'HTTP.REQ.HEADER("X-Forwarded-For") ALT CLIENT.IPv6.SRC.TYPECAST_TEXT_T'
Configurar la expresión de directiva IP del cliente en el perfil de bot mediante la GUI
- Vaya a Seguridad > Administración de bots de NetScaler > Perfiles.
- En el panel de detalles, haga clic en Agregar.
- En la página Crear perfil de administración de bots de NetScaler, defina la expresión IP del cliente.
-
Haga clic en Crear y Cerrar.
Configurar CAPTCHA para la reputación IP y la detección de huellas dactilares del dispositivo
CAPTCHA es un acrónimo que significa “Prueba pública de Turing completamente automatizada para diferenciar a computadoras y humanos”. CAPTCHA está diseñado para probar si un tráfico entrante proviene de un usuario humano o de un bot automatizado. CAPTCHA ayuda a bloquear los bots automatizados que causan infracciones de seguridad en las aplicaciones web. En NetScaler, CAPTCHA usa el módulo de desafío-respuesta para identificar si el tráfico entrante proviene de un usuario humano y no de un bot automatizado.
Configurar firmas estáticas de bot
Esta técnica de detección permite identificar la información del agente de usuario a partir de los detalles del explorador. En función de la información del agente de usuario, el bot se identifica como un bot malo o bueno y luego se le asigna una acción de bot.
Realice los siguientes pasos para configurar la técnica de firma estática:
- En el panel de navegación, amplíe Seguridad > Administración de bots de NetScaler > Firmas.
- En la página Firmas de administración de bots de NetScaler, seleccione un archivo de firma y haga clic en Modificar.
- En la página Firma de NetScaler bot Management, vaya a la sección Configuración de firmasy haga clic en Firmas de bot.
- En la sección Firmas de bot, defina los siguientes parámetros:
- Configurar firmas estáticas. En esta sección se incluye una lista de registros de firmas estáticas de bot. Puede seleccionar un registro y hacer clic en Modificar para asignarle una acción de bot.
- Haga clic en Aceptar.
- Haga clic en Actualizar firma.
- Haga clic en Listo.
Delineación de firma estática de bot
La administración de bots de NetScaler protege su aplicación web contra los bots. Las firmas estáticas de bots ayudan a identificar bots buenos y malos en función de parámetros de solicitud, como el agente de usuario en la solicitud entrante.
La lista de firmas en el archivo es enorme y también se agregan nuevas reglas y las obsoletas se eliminan periódicamente. Como administrador, es posible que quiera buscar una firma específica o una lista de firmas en una categoría. Para filtrar las firmas fácilmente, la página de firma de bots proporciona una capacidad de búsqueda mejorada. La función de búsqueda permite buscar reglas de firma y configurar su propiedad en función de uno o varios parámetros de firma como acción, ID de firma, desarrollador y nombre de firma.
Acción: seleccione una acción de bot que prefiera configurar para una categoría específica de reglas de firma. A continuación se presentan los tipos de acción disponibles:
- Habilitar lo seleccionado: habilita todas las reglas de firma seleccionadas.
- Desactivar lo seleccionado: inhabilita todas las reglas de firmas seleccionadas.
- Eliminar lo seleccionado: selecciona la acción “Eliminar” para todas las reglas de firma seleccionadas.
- Redirigir lo seleccionado: aplique la acción “Redirigir” a todas las reglas de firma seleccionadas.
- Restablecer lo seleccionado: aplica la acción “Restablecer” a todas las reglas de firma seleccionadas.
- Registrar seleccionado: aplique la acción “Registrar” a todas las reglas de firma seleccionadas.
- Eliminar eliminar elementos seleccionados: desactiva la acción de eliminación de todas las reglas de firma seleccionadas.
- Eliminar el redireccionamiento seleccionado: desactiva la acción de redireccionamiento de todas las reglas de firma seleccionadas.
- Eliminar restablecimiento seleccionado: desactiva la acción de restablecimiento de todas las reglas de firma seleccionadas.
- Eliminar registro seleccionado: anula la acción de registro de todas las reglas de firma seleccionadas.
Categoría: seleccione una categoría para filtrar las reglas de firma en consecuencia. A continuación se presenta la lista de categorías disponibles para ordenar las reglas de firma.
- Acción: ordena en función de la acción del bot.
- Categoría: ordena según la categoría del bot.
- Desarrollador: ordene según el editor de la empresa anfitriona.
- Habilitado: ordene en función de las reglas de firma que están habilitadas.
- ID: ordene según el ID de la regla de firma.
- Registro: ordene en función de las reglas de firma que tienen el registro habilitado.
- Nombre: ordene según el nombre de la regla de firma.
- Tipo: ordene según el tipo de firma.
- Versión: ordene según la versión de la regla de firma.
Buscar reglas de firma estática de bot basadas en tipos de acciones y categorías mediante la GUI de NetScaler
- Vaya a Seguridad > Administración de bots de NetScaler > Firma.
- En la página de detalles, haga clic en Agregar.
- En la página de firmas de NetScaler Bot Management, haga clic en modificar en la sección Firma estática.
- En la sección Configurar firma estática, seleccione una acción de firma de la lista desplegable.
- Utilice la función de búsqueda para seleccionar una categoría y filtrar las reglas según corresponda.
- Haga clic en Update.
Modificar la propiedad de regla de firma estática del bot mediante la GUI de NetScaler
- Vaya a Seguridad > Administración de bots de NetScaler > Firma.
- En la página de detalles, haga clic en Agregar.
- En la página de firmas de NetScaler Bot Management, haga clic en modificar en la sección Firma estática.
- En la sección Configurar firma estática, seleccione una acción de la lista desplegable.
- Utilice la función de búsqueda para seleccionar una categoría y filtrar las reglas según corresponda.
- En la lista de firmas estáticas, seleccione una firma para modificar su propiedad.
- Haga clic en Aceptar para confirmar.
Cómo funciona CAPTCHA en la administración de bots de NetScaler
En la administración de bots de NetScaler, la validación de CAPTCHA se configura como una acción de directiva que se ejecutará después de evaluar la directiva de bots. La acción CAPTCHA solo está disponible para la reputación de IP y las técnicas de detección de huellas dactilares del dispositivo. Los siguientes son los pasos para entender cómo funciona CAPTCHA:
- Si se observa una infracción de seguridad durante la reputación de IP o la detección de bots de huellas digitales del dispositivo, el dispositivo ADC envía un desafío CAPTCHA.
- El cliente envía la respuesta CAPTCHA.
- El dispositivo valida la respuesta CAPTCHA y, si el CAPTCHA es válido, se permite la solicitud y se reenvía al servidor back-end.
- Si la respuesta CATCHA no es válida, el dispositivo envía un nuevo desafío CAPTCHA hasta que se alcanza el número máximo de intentos.
- Si la respuesta CAPTCHA no es válida incluso después del número máximo de intentos, el dispositivo descarta o redirige la solicitud a la URL de error configurada.
- Si ha configurado la acción de registro, el dispositivo almacena los detalles de la solicitud en el archivo ns.log.
Configure los parámetros del CAPTCHA mediante la interfaz gráfica de usuario de NetScaler
La acción CAPTCHA de gestión de bots solo es compatible con la reputación de IP y las técnicas de detección de huellas dactilares del dispositivo. Complete los siguientes pasos para configurar los parámetros de CAPTCHA.
- Vaya a Seguridad > Gestión de bots y perfiles de NetScaler.
- En la página Perfiles de administración de bots de NetScaler, seleccione un perfil y haga clic en Modificar.
- En la página Perfil de administración de bots de NetScaler, vaya a la sección Configuración del perfil y haga clic en CAPTCHA.
- En la sección Configuración de CAPTCHA, haga clic en Agregar para configurar los parámetros de CAPTCHA en el perfil:
- En la página Configurar el CAPTCHA de NetScaler Bot Management, defina los siguientes parámetros.
-
URL. URL de bot para la que se aplica la acción CAPTCHA durante la reputación de IP y las técnicas de detección de huellas dactilares del dispositivo.
- Habilitada. Defina esta opción para habilitar la compatibilidad con CAPTCHA.
- Hora de gracia. Duración hasta que no se envía ninguna nueva impugnación CAPTCHA después de recibir la respuesta CAPTCHA válida actual.
- Tiempo de espera. Duración que tarda el dispositivo ADC en esperar hasta que el cliente envíe la respuesta CAPTCHA.
- Período de silencio. Duración durante la cual el cliente que envió una respuesta CAPTCHA incorrecta debe esperar hasta que se le permita intentarlo a continuación. Durante este período de silencio, el dispositivo ADC no permite ninguna solicitud. Intervalo: 60—900 segundos, recomendado: 300 segundos
- Límite de longitud de solicitud. Duración de la solicitud para la que se envía la impugnación CAPTCHA al cliente. Si la longitud es superior al valor del umbral, la solicitud se descarta. El valor predeterminado es de 10 a 3000 bytes.
- Intentos de reintento. Número de intentos que el cliente puede volver a intentar resolver el desafío CAPTCHA. Intervalo: 1-10, recomendado: 5.
- No se debe realizar ninguna acción, soltar/redirigir si el cliente falla la validación de CAPTCHA.
- Registrar. Establezca esta opción para almacenar información de solicitud del cliente cuando la respuesta CAPTCHA falla. Los datos se almacenan en el archivo
ns.log
. - Comentario. Breve descripción de la configuración de CAPTCHA.
-
- Haga clic en Aceptar y Listo.
- Vaya a Seguridad > Administración de bots de NetScaler > Firmas.
- En la página Firmas de administración de bots de NetScaler, seleccione un archivo de firma y haga clic en Modificar.
- En la página Firma de NetScaler bot Management, vaya a la sección Configuración de firmasy haga clic en Firmas de bot.
-
En la sección Firmas de bot, defina los siguientes parámetros:
- Configurar firmas estáticas. Seleccione un registro de firma estática de bot y haga clic en Modificar para asignarle una acción bot.
- Haga clic en Aceptar.
- Haga clic en Actualizar firma.
- Haga clic en Listo.
Actualización automática de firmas de bots
La técnica de firma estática de bots utiliza una tabla de búsqueda de firmas con una lista de bots buenos y bots malos. Los bots se clasifican según la cadena de agente de usuario y los nombres de dominio. Si la cadena de agente de usuario y el nombre de dominio del tráfico de bot entrante coinciden con un valor de la tabla de búsqueda, se aplica una acción bot configurada. Las actualizaciones de firmas de bots se alojan en la nube de AWS y la tabla de búsqueda de firmas se comunica con la base de datos de AWS para obtener actualizaciones de firmas. El planificador de actualización automática de firmas se ejecuta cada 1 hora para comprobar la base de datos de AWS y actualizar la tabla de firmas del dispositivo NetScaler.
La URL de actualización automática de firmas que se va a configurar es, https://nsbotsignatures.s3.amazonaws.com/BotSignatureMapping.json
Nota:
También puede configurar un servidor proxy y actualizar periódicamente las firmas desde la nube de AWS al dispositivo a través del proxy. Para la configuración del proxy, debe establecer la dirección IP del proxy y la dirección del puerto en la configuración del bot.
Cómo funciona la actualización automática de firmas de bots
El siguiente diagrama muestra cómo se recuperan las firmas de los bots de la nube de AWS, se actualizan en NetScaler y se visualizan en NetScaler Console para ver un resumen de la actualización de firmas.
El planificador de actualización automática de firmas de bot hace lo siguiente:
- Recupera el archivo de asignación del URI de AWS.
- Comprueba las firmas más recientes del archivo de asignación con las firmas existentes en el dispositivo ADC.
- Descarga las nuevas firmas de AWS y verifica la integridad de la firma.
- Actualiza las firmas de bot existentes con las nuevas firmas del archivo de firma del bot.
- Genera una alerta SNMP y envía el resumen de la actualización de la firma a NetScaler Console.
Configurar actualización automática de firmas de bots
Para configurar la actualización automática de firmas de bots, siga los pasos siguientes:
Habilitar actualización automática de firma de bot
Debe habilitar la opción de actualización automática en la configuración del bot del dispositivo ADC. En la línea de comandos, escriba:
set bot settings –signatureAutoUpdate ON
Configurar los parámetros del servidor proxy (opcional)
Si accede a la base de datos de firmas de AWS a través de un servidor proxy, debe configurar el servidor proxy y el puerto.
set bot settings –proxyserver –proxyport
Ejemplo:
set bot settings –proxy server 1.1.1.1 –proxyport 1356
Configurar la actualización automática de firmas de bots mediante la GUI de NetScaler
Complete los siguientes pasos para configurar la actualización automática de firmas de bots:
- Vaya a Seguridad > Administración de bots de NetScaler.
- En el panel de detalles, en Configuración, haga clic en Cambiar configuración de administración de bots de NetScaler.
- En Configurar las opciones de administración de bots de NetScaler, seleccione la casilla de verificación Actualizar automáticamente la firma.
- Haga clic en Aceptar y Cerrar.
Crear perfil de administración de bots
Un perfil de bot es un conjunto de configuraciones de administración de bots que se utilizan para detectar el tipo de bot. En un perfil, determina cómo aplica Web App Firewall cada uno de sus filtros (o comprobaciones) al tráfico de bots a sus sitios web y las respuestas de ellos.
Complete los siguientes pasos para configurar el perfil del bot:
- Vaya aSeguridad > Administración de**bots de NetScaler > Perfiles.**
- En el panel de detalles, haga clic en Agregar.
-
En la página Crear perfil de administración de bots de NetScaler, defina los siguientes parámetros.
- Nombre. Nombre del perfil del bot.
- Firma. Nombre del archivo de firma del bot.
- URL de error. URL para redirecciones.
- Comentario. Breve descripción del perfil.
- Haga clic en Crear y Cerrar.
Crear directiva de bots
La directiva de bots controla el tráfico que va al sistema de administración de bots y también controla los registros de bots enviados al servidor de auditlog. Siga el procedimiento para configurar la directiva de bots.
- Vaya a Seguridad > Administración de bots de NetScaler > Directivas debots**.
- En el panel de detalles, haga clic en Agregar.
- En la página Crear una directiva de administración de bots de NetScaler, defina los siguientes parámetros.
- Nombre. Nombre de la directiva de bots.
- Expresión. Escriba la expresión o regla de directiva directamente en el área de texto.
- Perfil de bot. Perfil de bot para aplicar la directiva de bots.
- Acción indefinida. Seleccione la acción que prefiera asignar.
- Comentario. Breve descripción de la directiva.
- Acción de registro. Acción de mensaje de registro de auditoría para registrar el tráfico de bots. Para obtener más información sobre la acción del registro de auditoría, consulte el tema Registro de auditoría.
- Haga clic en Crear y Cerrar.
Transacciones de bots por segundo (TPS)
La técnica de bot Transacciones por segundo (TPS) detecta el tráfico entrante como bot si el número de solicitudes por segundo (RPS) y el porcentaje de aumento del RPS superan el valor umbral configurado. La técnica de detección protege sus aplicaciones web de bots automatizados que pueden provocar actividades de raspado web, inicio de sesión forzado bruto y otros ataques maliciosos.
Nota:
La técnica bot detecta un tráfico entrante como bot solo si ambos parámetros están configurados y si ambos valores aumentan más allá del límite umbral. Consideremos un caso en el que el dispositivo recibe muchas solicitudes procedentes de una URL específica y quiere que la administración de bots de NetScaler detecte si hay un ataque de bot. La técnica de detección de TPS examina el número de solicitudes (valor configurado) procedentes de la URL en 1 segundo y el aumento porcentual (valor configurado) del número de solicitudes recibidas en 30 minutos. Si los valores superan el límite del umbral, el tráfico se considera bot y el dispositivo ejecuta la acción configurada.
Técnica de configuración de transacciones de bot por segundo (TPS)
Para configurar TPS, debe completar los pasos siguientes:
- Habilitar TPS bot
- Enlazar la configuración de TPS al perfil de administración de bots
Enlazar la configuración de TPS al perfil de administración de bots
Una vez que habilite la función TPS del bot, debe vincular la configuración de TPS al perfil de administración de bots.
En la línea de comandos, escriba:
bind bot profile <name>… (-tps [-type ( SourceIP | GeoLocation | RequestURL | Host )] [-threshold <positive_integer>] [-percentage <positive_integer>] [-action ( none | log | drop | redirect | reset | mitigation )] [-logMessage <string>])
Ejemplo:
bind bot profile profile1 -tps -type RequestURL -threshold 1 -percentage 100000 -action drop -logMessage log
Habilitar transacción bot por segundo (TPS)
Antes de empezar, debe asegurarse de que la función TPS bot esté habilitada en el dispositivo. En la línea de comandos, escriba:
set bot profile profile1 –enableTPS ON
Configurar transacciones de bots por segundo (TPS) mediante la interfaz gráfica de usuario de NetScaler
Complete los siguientes pasos para configurar las transacciones de bots por segundo:
- Vaya a Seguridad > Administración de bots de NetScaler > Perfiles.
- En la página Perfiles de administración de bots de NetScaler, seleccione un perfil y haga clic en Modificar.
- En la página Crear perfil de administración de bots de NetScaler, haga clic en TPS en la sección Configuración de firma.
- En la sección TPS, active la función y haga clic en Agregar.
-
En la página Configurar enlace TPS del perfil de administración de bots de NetScaler, defina los siguientes parámetros.
-
Tipo: seleccione uno de los siguientes tipos:
SOURCE_IP: TPS basado en la dirección IP del cliente.
GEOLOCATION: TPS basado en la ubicación geográfica del cliente.
HOST: TPS basado en solicitudes de clientes reenviadas a una dirección IP de servidor back-end específica.
URL: TPS basado en las solicitudes de los clientes procedentes de una URL específica.
-
Umbral fijo: número máximo de solicitudes permitidas desde un tipo de entrada de TPS dentro de un intervalo de tiempo de 1 segundo.
-
Umbral porcentual: aumento porcentual máximo en las solicitudes de un tipo de entrada de TPS dentro de un intervalo de tiempo de 30 minutos.
-
Acción: acción que se debe tomar en caso de un bot detectado por el enlace TPS.
-
Registro: habilite o inhabilite el registro para el enlace TPS.
-
Registrar mensaje. Mensaje para registrar el bot detectado por el enlace TPS. Longitud máxima: 255.
-
Comentarios: Una breve descripción de la configuración del TPS. Longitud máxima: 255
-
- Haga clic en Aceptar y luego en Cerrar.
Detección de bots basada en la dinámica del ratón y el teclado
Para detectar bots y mitigar las anomalías de raspado web, la administración de bots de NetScaler utiliza una técnica de detección de bots mejorada basada en el comportamiento del ratón y el teclado. A diferencia de las técnicas de bots convencionales que requieren interacción humana directa (por ejemplo, validación CAPTCHA), la técnica mejorada monitorea pasivamente la dinámica del ratón y el teclado. A continuación, el dispositivo NetScaler recopila los datos del usuario en tiempo real y analiza el comportamiento entre un humano y un bot.
La detección de bots pasivos mediante la dinámica del ratón y el teclado tiene las siguientes ventajas sobre los mecanismos de detección de bots existentes:
- Proporciona supervisión continua durante toda la sesión de usuario y elimina un único punto de control.
- No requiere interacción humana y es transparente para los usuarios.
Cómo funciona la detección de bots mediante la dinámica del ratón y el teclado
La técnica de detección de bots que utiliza la dinámica del teclado y el ratón consta de dos componentes, un registrador de páginas web y un detector de bots. El registrador de páginas web es un JavaScript que registra los movimientos del teclado y del ratón cuando un usuario realiza una tarea en la página web (por ejemplo, rellenando un formulario de registro). A continuación, el registrador envía los datos por lotes al dispositivo NetScaler. A continuación, el dispositivo almacena los datos como un registro KM y los envía al detector de bots del servidor de NetScaler Console, que analiza si el usuario es un humano o un bot.
En los siguientes pasos se explica cómo interactúan los componentes entre sí:
- El administrador de NetScaler configura la expresión de directivas mediante el StyleBook de ADM, la CLI o NITRO o cualquier otro método.
- La URL se establece en el perfil de bot cuando el administrador habilita la función en el dispositivo.
- Cuando un cliente envía una solicitud, el dispositivo NetScaler hace un seguimiento de la sesión y de todas las solicitudes de la sesión.
- El dispositivo inserta un JavaScript (registrador de páginas web) en la respuesta si la solicitud coincide con la expresión configurada en el perfil de bot.
- A continuación, JavaScript recopila toda la actividad del teclado y el ratón y envía los datos KM en una URL POST (transitoria).
- El dispositivo NetScaler almacena los datos y los envía al servidor de NetScaler Console al final de la sesión. Una vez que el dispositivo recibe los datos completos de una solicitud POST, los datos se envían al servidor ADM.
- El servicio NetScaler Console analiza los datos y, según el análisis, el resultado está disponible en la GUI del servicio NetScaler Console.
El registrador de JavaScript registra los siguientes movimientos del ratón y del teclado:
- Eventos de teclado: todos los eventos
- Eventos de mouse: movimiento del mouse, mouse hacia arriba, mouse hacia abajo
- Eventos portapapeles: pegar
- Eventos personalizados: autocompletar, autocompletar y cancelar
- marca de hora de cada evento
Configurar la detección de bots mediante la dinámica de ratón y teclado
La configuración de administración de bots de NetScaler incluye habilitar o inhabilitar la función de detección basada en teclado y mouse, y configura la URL de JavaScript en el perfil del bot. Siga los siguientes pasos para configurar la detección de bots mediante la dinámica del ratón y el teclado:
- Habilitar la detección basada en teclado y ratón
- Configure la expresión para decidir cuándo se puede inyectar JavaScript en la respuesta HTTP
Habilitar la detección de bots basada en el ratón
Antes de comenzar la configuración, asegúrese de haber habilitado la función de detección de bots basada en teclado y ratón en el dispositivo.
En la línea de comandos, escriba:
add bot profile <name> -KMDetection ( ON | OFF )
<!--NeedCopy-->
Ejemplo:
add bot profile profile1 –KMDetection ON
Configurar la expresión bot para la inserción de JavaScript
Configure la expresión bot para evaluar el tráfico e insertar JavaScript. El JavaScript se inserta solo si la expresión se evalúa como verdadera.
En la línea de comandos, escriba:
bind bot profile <name> -KMDetectionExpr -name <string> -expression <expression> -enabled ( ON | OFF ) –comment <string>
<!--NeedCopy-->
Ejemplo:
bind bot profile profile1 -KMDetectionExpr -name test -expression http.req.url.startswith("/testsite") -enabled ON
Configurar el nombre de archivo JavaScript insertado en la respuesta HTTP para la detección de bots basada en teclado y ratón
Para recopilar los detalles de la acción del usuario, el dispositivo envía un nombre de archivo JavaScript en la respuesta HTTP. El archivo JavaScript recopila todos los datos de un registro KM y los envía al dispositivo.
En la línea de comandos, escriba:
set bot profile profile1 – KMJavaScriptName <string>
<!--NeedCopy-->
Ejemplo:
set bot profile profile1 –KMJavaScriptName script1
Configurar el tamaño biométrico del comportamiento
Puede configurar el tamaño máximo de los datos de comportamiento del ratón y el teclado que se pueden enviar como registro KM al dispositivo y procesar en el servidor ADM.
En la línea de comandos, escriba:
set bot profile profile1 -KMEventsPostBodyLimit <positive_integer>
<!--NeedCopy-->
Ejemplo:
set bot profile profile1 – KMEventsPostBodyLimit 25
Tras configurar el dispositivo NetScaler para configurar JavaScript y recopilar datos biométricos del comportamiento del teclado y el ratón, el dispositivo envía los datos al servidor de NetScaler Console. Para obtener más información sobre cómo el servidor de NetScaler Console detecta los bots a partir de datos biométricos de comportamiento, consulte el tema Infracciones de bots.
Configurar los parámetros de expresión de bot de teclado y ratón mediante la GUI
- Vaya a Seguridad > Gestión de bots y perfiles de NetScaler.
- En la página Perfiles de administración de bots de NetScaler, seleccione un perfil y haga clic en Modificar.
- En la página Perfil de administración de bots de NetScaler, haga clic en el icono de edición.
- En la configuración básica, en la sección Detección de bots mediante teclado y ratón, defina los siguientes parámetros:
- Habilita la detección. Seleccione la casilla de verificación para detectar el comportamiento dinámico del teclado y el ratón basado en bots.
- Límite de cuerpo de publicación del evento. Tamaño de los datos dinámicos de teclado y ratón enviados por el explorador para que los procese el dispositivo NetScaler.
-
Haga clic en Aceptar.
- En la página Perfil de administración de bots de NetScaler, vaya a la sección Configuración del perfil y haga clic en Configuración de expresión de bots basada en teclado y ratón.
- En la sección Configuración de expresiones de bot basadas en teclado y ratón, haga clic en Agregar.
- En la página Configurar enlace de expresiones de teclado y ratón de NetScaler bot Management Profile Bot Bot, establezca los siguientes parámetros:
- Nombre de expresión. Nombre de la expresión de directiva de bot para la detección de dinámicas de teclado y ratón.
- Expresión. Expresión de directiva bot.
- Habilitada. Seleccione la casilla de verificación para habilitar el enlace de expresiones de teclado y ratón del robot y del teclado.
- Comentarios. Breve descripción de la expresión de la directiva de bot y su vinculación al perfil del bot.
- Haga clic en Aceptar y Cerrar.
- En la sección Configuración de expresiones de bot basadas en teclado y ratón, haga clic en Actualizar.
Registro verboso para el tráfico de bots
Cuando una solicitud entrante se identifica como un bot, el dispositivo NetScaler registra más detalles del encabezado HTTP para supervisar y solucionar problemas. La capacidad de registro de bot verbose es similar al registro verboso del módulo Web App Firewall.
Considere el tráfico entrante de un cliente. Si el cliente se identifica como un bot, el dispositivo NetScaler utiliza la funcionalidad de registro detallado para registrar la información completa del encabezado HTTP, como la dirección del dominio, la URL, el encabezado del agente de usuario y el encabezado de la cookie. Los detalles del registro se envían al servidor ADM para supervisar y solucionar problemas del propósito. El mensaje de registro verboso no se almacena en el archivo “ns.log”.
Configurar el registro de bot verbose mediante la CLI
Para capturar información detallada del encabezado HTTP como registros, puede configurar el parámetro de registro detallado en el perfil del bot. En la línea de comandos, escriba:
set bot profile <name> [-verboseLogLevel ( NONE | HTTP_FULL_HEADER ) ]
<!--NeedCopy-->
Ejemplo:
set bot profile p1 –verboseLogLevel HTTP_FULL_HEADER
Configurar el registro de bot verbose mediante la GUI de NetScaler
Siga el procedimiento para configurar el nivel de registro detallado en el perfil del bot.
- En el panel de navegación, vaya a Seguridad > Administración de bots de NetScaler.
- En la página Perfiles de administración de bots de NetScaler, haga clic en Agregar.
- En la página Crear perfil de administración de bots de NetScaler, seleccione el nivel de registro verboso como Encabezado completo HTTP.
- Haga clic en Aceptar y Listo.
Configurar una acción para las solicitudes de bots falsificadas
Un atacante podría intentar hacerse pasar por un buen bot y enviar solicitudes a su servidor de aplicaciones. Estos bots se identifican como bots falsificados mediante la firma del bot. Configure las siguientes acciones contra los bots falsificados para proteger su servidor de aplicaciones:
- DROP
- NONE
- REDIRECT
- RESET
Configure una acción para las solicitudes de bots falsificadas mediante la CLI
Ejecute el siguiente comando para configurar una acción para las solicitudes de bots falsificadas:
set bot profile <bot-profile-name> -spoofedReqAction <action> LOG
<!--NeedCopy-->
Ejemplo:
set bot profile bot_profile -spoofedReqAction DROP LOG
<!--NeedCopy-->
En este ejemplo, las solicitudes de los bots falsificados se descartan y se registran en un dispositivo NetScaler.
Consejo:
Para registrar los eventos de los bots falsificados, especifique
LOG
en el comando.
Configure una acción para las solicitudes de bots falsificadas mediante la interfaz gráfica de usuario
Siga los pasos para configurar una acción para las solicitudes de bots falsificadas:
-
Vaya a Seguridad > Administración de bots de NetScaler.
-
En la página Perfiles de administración de bots de NetScaler, haga clic en Agregar.
-
Seleccione una acción de la lista Acciones de solicitud falsificada.
-
Selecciona Registrar solicitud falsificada.
Esta acción registra los eventos de los bots falsificados.
-
Haga clic en Crear.
Encabezados de solicitud descartados por NetScaler bot Management
Muchos de los encabezados de solicitud relacionados con el almacenamiento en caché se eliminan para ver cada solicitud en el contexto de una sesión. Del mismo modo, si la solicitud incluye un encabezado de codificación para permitir que el servidor web envíe respuestas comprimidas, la administración de bots elimina este encabezado para que la administración de bots inspeccione el contenido de la respuesta del servidor sin comprimir para insertar el JavaScript.
La administración de bots elimina los siguientes encabezados de solicitud:
Rango: se usa para recuperarse de una transferencia de archivos fallida o parcial.
If-Range: permite a un cliente recuperar un objeto parcial cuando ya contiene una parte de ese objeto en su caché (GET condicional).
If-Modified-Since: si el objeto solicitado no se modifica desde la hora especificada en este campo, el servidor no devuelve una entidad. Aparece un error HTTP 304 no modificado.
If-None-Match: permite actualizaciones eficientes de la información almacenada en caché con una sobrecarga mínima.
Aceptar codificación: qué métodos de codificación están permitidos para un objeto en particular, como gzip.
En este artículo
- Cómo actualizar el dispositivo a la configuración de administración de bots basada en CLI de NetScaler
- Configurar la administración de bots basada en CLI de NetScaler
- Configuración de la administración de bots mediante la GUI de NetScaler
- Configurar los parámetros de administración de bots para la técnica de huella digital
- Configurar la lista de bots permitidos mediante la GUI de NetScaler
- Configurar la lista de bloques de bots mediante la GUI de NetScaler
- Configurar la reputación de IP mediante la interfaz gráfica de usuario de NetScaler
- Configurar la técnica de límite de velocidad de bots
- Configurar la técnica de huellas digitales del dispositivo mediante la interfaz gráfica de usuario de NetScaler
- Configurar la técnica de huellas dactilares del dispositivo para aplicaciones móviles (Android)
- Cómo funciona la técnica de huellas dactilares del dispositivo para la aplicación móvil
- Configurar expresión de registro de bot
- Configurar la técnica de captura de bot
- Configurar CAPTCHA para la reputación IP y la detección de huellas dactilares del dispositivo
- Configurar firmas estáticas de bot
- Crear perfil de administración de bots
- Crear directiva de bots
- Detección de bots basada en la dinámica del ratón y el teclado
- Registro verboso para el tráfico de bots
- Configurar una acción para las solicitudes de bots falsificadas
- Encabezados de solicitud descartados por NetScaler bot Management