Citrix ADC

机器人检测

Citrix ADC 机器人管理系统使用六种不同的技术来检测传入的机器人流量。这些技术用作检测规则来检测机器人类型。这些技术包括机器人允许列表,机器人阻止列表,IP 信誉,设备指纹,速率限制,机器人陷阱,TPS 和验证码。

注意 : 机器人管理最多支持 32 个配置实体用于阻止列表、允许列表和速率限制技术。

机器人白名单。可以绕过为允许列表的 IP 地址、子网和策略表达式的自定义列表。

机器人黑名单。必须阻止访问 Web 应用程序的 IP 地址、子网和策略表达式的自定义列表。

IP 信誉。此规则检测传入的机器人流量是否来自恶意 IP 地址。

设备指纹。此规则检测传入的机器人流量是否在传入客户端机器人流量的传入请求标头和浏览器属性中具有设备指纹 ID。

限制:

  1. 必须在客户端浏览器中启用 JavaScript。
  2. 不适用于 XML 响应。

机器人日志表达式。检测技术使您能够以日志消息的形式捕获其他信息。数据可以是请求 URL 的用户的姓名、源 IP 地址以及用户发送请求的源端口或表达式生成的数据。

费率限制。此规则速率限制来自同一客户端的多个请求。

机器人陷阱。通过在客户端响应中广告陷阱 URL 来检测并阻止自动机器人。如果客户端是人类用户,URL 将显示不可见且无法访问。检测技术可以有效地阻止来自自动机器人的攻击。

TPS。如果请求的最大数量和请求的增加百分比超过配置的时间间隔,则以机器人身份检测传入流量。

验证码。此规则使用验证码来缓解机器人攻击。验证码是一种质询响应验证,用于确定传入流量是来自人类用户还是自动机器人。验证有助于阻止导致 Web 应用程序安全违规的自动机器人。您可以在 IP 信誉和设备指纹检测技术中将验证码配置为机器人操作。

现在,让我们看看如何配置每种技术来检测和管理您的机器人流量。

如何将设备升级到基于 Citrix ADC CLI 的机器人管理配置

如果要从旧版本升级设备(Citrix ADC 13.0 Build 58.32 或更早版本),则必须首先手动将现有机器人管理配置转换为基于 Citrix ADC CLI 的机器人管理配置一次。完成以下步骤手动转换机器人管理配置。

  1. 升级到最新版本后,使用以下命令连接到升级工具 “upgrade_bot_config.py”

    在命令提示符下,键入:

    shell "/var/python/bin/python /netscaler/upgrade_bot_config.py > /var/bot_upgrade_commands.txt"

  2. 使用以下命令运行配置。

    在命令提示符下,键入:

    batch -f /var/bot_upgrade_commands.txt

  3. 保存升级后的配置。

save ns config

配置基于 Citrix ADC CLI 的机器人程序管理

通过机器人管理配置,您可以将一个或多个机器人检测技术绑定到特定的机器人配置文件。您可以通过在设备上启用机器人管理功能来开始该过程。启用后,将自动程序签名文件导入设备。导入后,必须创建机器人配置文件。 然后,您可以创建一个绑定到自动程序配置文件的机器人策略,以评估传入流量为机器人,并将策略全局绑定或绑定到虚拟服务器。

注意 : 如果要从旧版本升级设备,则必须首先手动转换现有的机器人管理配置。有关更多信息,请参阅 如何升级到基于 Citrix ADC CLI 的机器人管理配置 部分。

要配置基于 Citrix ADC 的自动程序管理,必须完成以下步骤:

  1. 启用机器人管理
  2. 导入机器人签名
  3. 添加机器人配置文件
  4. 绑定机器人配置文件
  5. 添加机器人策略
  6. 绑定机器人策略
  7. 配置机器人设置

启用机器人管理

开始之前,请确保在设备上启用了机器人管理功能。如果您有新的 Citrix ADC 或 VPX,则必须在配置之前启用该功能。如果要将 Citrix ADC 或 VPX 设备从早期版本的 Citrix ADC 软件升级到当前版本,则必须在配置之前启用该功能。在命令提示符下,键入:

enable ns feature Bot

导入机器人签名

你可以导入默认的签名机器人文件并将其绑定到机器人配置文件。在命令提示符下,键入:

import bot signature [<src>] <name> [-comment <string>] [-overwrite]

其中, src. 要存储导入的签名文件的文件的本地路径和名称或 URL(协议、主机、路径和文件名)。注意:如果要导入的对象位于需要客户端证书身份验证才能访问的 HTTPS 服务器上,则导入失败。最大长度:2047 名称。要分配给 Citrix ADC 上的机器人签名文件对象的名称。这是一个强制性的论点。最大长度:31 评论. 保留有关签名文件对象的信息的任何注释。最大长度:255。 覆盖。覆盖现有文件。 注意:使用该 overwrite 选项可更新签名文件中的内容。或者,使用update bot signature <name> 命令更新 Citrix ADC 设备上的签名文件

示例

import bot signature http://www.example.com/signature.json signaturefile -comment commentsforbot –overwrite

注意 : 您可以使用覆盖选项更新签名文件中的内容。此外,还可以使用update bot signature <name> 命令更新 Citrix ADC 设备中的特征码文件。

添加机器人配置文件

机器人配置文件是用于在设备上配置机器人管理的配置文件设置的集合。您可以配置设置以执行机器人检测。

在命令提示符下,键入:

add bot profile <name> [-signature <string>] [-errorURL <string>] [-trapURL <string>] [-comment <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 )] [-trapAction ( none | log | drop | redirect | reset )] [-tps ( ON | OFF )]

示例:

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

绑定机器人配置文件

创建机器人配置文件后,必须将机器人检测机制绑定到该配置文件。

在命令提示符下,键入:

bind bot profile <name> ((-blackList [-type ( IPv4 | Subnet | Expression )] [-enabled ( ON | OFF )] [-value <string>] [-action ( log | drop | reset )] [-logMessage <string>] [-comment <string>]) | (-whiteList [-type ( IPv4 | Subnet | Expression )] [-enabled ( ON | OFF )] [-value <string>] [-log ( ON | OFF )] [-logMessage <string>] [-comment <string>])) | (-rateLimit [-type ( session |SOURCE_IP | url )] [-enabled ( ON | OFF )] [-url <string>] [-cookieName <string>] [-rate <positive_integer>] [-timeslice <positive_integer>] [-action ( none | log | drop | redirect | reset )] [-logMessage <string>] [-comment <string>]) | (-ipReputation [-category <ipReputationCategory>] [-enabled ( ON | OFF )] [-action ( none | log | drop | redirect | reset | mitigation )] [-logMessage <string>] [-comment <string>]) | (-captchaResource [-url <string>] [-enabled ( ON | OFF )] [-waitTime <positive_integer>] [-gracePeriod <positive_integer>] [-mutePeriod <positive_integer>] [-requestLengthLimit <positive_integer>] [-retryAttempts <positive_integer>] [-action ( none | log | drop | redirect | reset )] [-logMessage <string>] [-comment <string>]) | (-tps [-type ( SOURCE_IP | GeoLocation | REQUEST_URL | Host )] [-threshold <positive_integer>] [-percentage <positive_integer>] [-action ( none | log | drop | redirect | reset | mitigation )] [-logMessage <string>] [-comment <string>])

示例:

以下示例用于将 IP 信誉检测技术绑定到特定的机器人配置文件。

bind bot profile profile5 -ipReputation -category BOTNET -enabled ON -action drop -logMessage message

添加机器人策略

您必须添加用于评估机器人流量的机器人策略。

在命令提示符下,键入:

add bot policy <name> -rule <expression> -profileName <string> [-undefAction <string>] [-comment <string>] [-logAction <string>]

其中,

名称。机器人策略的名称。必须以字母、数字或下划线字符 (_) 开头,并且必须仅包含字母、数字和连字符 (-)、句点 (.) (#)、空格 ()、位于 (@)、equals (=)、冒号 (:) 和下划线字符。可以在添加机器人策略后更改。

规则。策略用于确定是否对指定请求应用机器人配置文件的表达式。这是一个强制性的论点。 最大长度:1499

profileName。如果请求与此机器人策略匹配,则要应用的机器人配置文件的名称。这是一个强制性的论点。最大长度:127

undefAction。如果策略评价结果不明确,应采取的操作 (UNDEF)。一个 UNDEF 事件表示一个内部错误条件。 最大长度:127

评论。有关此机器人策略的任何类型的信息。 最大长度:255

logAction。要用于与此策略匹配的请求的日志操作的名称。 最大长度:127

示例:

add bot policy pol1 –rule "HTTP.REQ.HEADER(\"header\").CONTAINS(\"custom\")" - profileName profile1 -undefAction drop –comment commentforbotpolicy –logAction log1

Bind bot policy global

在命令提示符下,键入:

bind bot global -policyName <string> -priority <positive_integer> [-gotoPriorityExpression <expression>][-type ( REQ_OVERRIDE | REQ_DEFAULT )] [-invoke (-labelType ( vserver | policylabel ) -labelName <string>) ]

示例:

bind bot global –policyName pol1 –priority 100 –gotoPriorityExpression NEXT -type REQ_OVERRIDE

将机器人策略绑定到虚拟服务器

在命令提示符下,键入:

bind lb vserver <name>@ ((<serviceName>@ [-weight <positive_integer>] ) | <serviceGroupName>@ | (-policyName <string>@ [-priority <positive_integer>] [-gotoPriorityExpression <expression>] [-type ( REQUEST | RESPONSE )] [-invoke (<labelType> <labelName>) ] ) | -analyticsProfile <string>@)

示例:

bind lb vserver lb-server1 –policyName pol1 –priority 100 –gotoPriorityExpression NEXT -type REQ_OVERRIDE

配置机器人设置

如有必要,您可以自定义默认设置。 在命令提示符下,键入:

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|*>]

其中,

默认配置文件。当连接与任何策略不匹配时使用的配置文件。默认设置为 “,这将无与伦比的连接发送回 Citrix ADC,而不尝试进一步筛选它们。最大长度:31

javaScriptName。BotNet 功能 用于响应的 JavaScript 的名称。必须以字母或数字开头,并且可以包含 1 到 31 个字母、数字以及连字符 (-) 和下划线 (_) 符号。以下要求仅适用于 Citrix ADC CLI:如果名称包含一个或多个空格,请将名称用双引号或单引号括起来(例如,“我的 cookie 名称”或“我的 cookie 名称”)。最大长度:31

sessionTimeout。会话超时(以秒为单位),之后用户会话将终止。

最小值:1,最大值:65535

sessionCookieName。僵尸网络功能用于跟踪的会话 cookie 的名称。必须以字母或数字开头,并且可以包含 1 到 31 个字母、数字以及连字符 (-) 和下划线 (_) 符号。以下要求仅适用于 Citrix ADC CLI:如果名称包含一个或多个空格,请将名称用双引号或单引号括起来(例如,“我的 Cookie 名称”或“我的 Cookie 名称”)。最大长度:31

dfpRequestLimit。如果启用了设备指纹,则允许没有机器人会话 cookie 的请求数。

最小值:1,最大值:4294967295

签名自动更新。用于启用/禁用机器人自动更新签名的标志。

可能的值:ON、OFF

默认值:OFF

签名 URL。从服务器下载机器人签名映射文件的 URL。

默认值:https://nsbotsignatures.s3.amazonaws.com/BotSignatureMapping.json

最大长度:2047

ProxyServer。 代理服务器 IP 从 AWS 获取更新的签名称。

代理端口。代理服务器端口,从 AWS 获取更新的签名称。默认值:8080

示例:

set bot settings –defaultProfile profile1 –javaScriptName json.js –sessionTimeout 1000 –sessionCookieName session

使用 Citrix ADC GUI 配置机器人管理

您可以通过首先在设备上启用该功能来配置 Citrix ADC 机器人管理。启用后,您可以创建一个机器人策略,将传入流量评估为 bot,并将流量发送到机器人配置文件。然后,您创建一个机器人配置文件,然后将该配置文件绑定到机器人签名。作为替代方法,您还可以克隆默认机器人签名文件,并使用特征文件配置检测技术。创建签名文件后,您可以将其导入到机器人配置文件中。

机器人管理页面

  1. 启用机器人管理功能
  2. 配置机器人管理设置
  3. 克隆 Citrix 机器人默认签名
  4. 导入 Citrix 机器人签名
  5. 配置机器人签名设置
  6. 创建机器人配置文件
  7. 创建机器人策略

启用机器人管理功能

完成以下步骤以启用机器人管理:

  1. 在导航窗格上,展开 系统 ,然后单击 设置
  2. 在“配置高级功能”页上,选中“机 器人管理”复选框。
  3. 单击 OK(确定),然后单击 Close(关闭)。

    启用机器人管理

配置设备指纹技术的机器人管理设置

完成以下步骤以配置设备指纹技术:

  1. 导航到安全 > Citrix 机器人管理
  2. 在详细信息窗格中的设置下,单击更改 Citrix 机器人管理设置
  3. 配置 Citrix 机器人管理设置中,设置以下参数。

    1. 默认配置文件。选择一个机器人配置文件。
    2. JavaScript 名称。机器人管理在响应客户端时使用的 JavaScript 文件的名称。
    3. 会话超时。超时(以秒为单位),在此之后终止用户会话。
    4. 会话 cookie。机器人管理系统用于跟踪的会话 cookie 的名称。
    5. 设备指纹请求限制。如果启用了设备指纹,则在没有机器人会话 cookie 的情况下允许的请求数

    机器人管理设置

  4. 单击 OK(确定)。

克隆机器人签名文件

完成以下步骤以克隆机器人签名文件:

  1. 导航到安全 > Citrix 机器人管理签名
  2. Citrix 机器人管理签名 页面中,选择默认机器人签名记录,然后单击 克隆
  3. 在“克 隆机器人签 名”页面中,输入名称并编辑签名数据。
  4. 单击创建

    克隆机器人签名文件

导入机器人签名文件

如果您有自己的签名文件,则可以将其导入为文件、文本或 URL。执行以下步骤导入机器人签名文件:

  1. 导航到安全 > Citrix 机器人管理签名
  2. Citrix 机器人管理签名 页面上,将文件导入为 URL、文件或文本。
  3. 单击继续

    导入机器人签名文件

  4. 在“导入 Citrix 机器人管理签名”页面上,设置以下参数。
    1. 名称。机器人签名文件的名称。
    2. 评论。有关导入文件的简要描述。
    3. 覆盖。选中此复选框可允许在文件更新期间覆盖数据。
    4. 签名数据。修改签名参数
  5. 单击完成

    导入机器人签名文件

使用 Citrix ADC GUI 配置机器人允许列表

此检测技术使您能够绕过配置允许列出的 URL。完成以下步骤以配置允许列表 URL:

  1. 导航到 安全 > Citrix 机器人管理配置文件
  2. Citrix 机器人管理配置 文件页面上,选择一个文件,然后单击 编辑
  3. Citrix 机器人管理配置文件 页面上,转到“签名设置”部分,然后单击“白名单”。
  4. 白名单 部分,设置以下参数:
    1. 已启用。选中该复选框可验证允许列表 URL 作为检测过程的一部分。
    2. 配置类型。配置允许列表 URL。在机器人检测过程中会绕过 URL。单击添加将 URL 添加到机器人允许列表。
    3. 在“配置 Citrix 机器人管理概要文件白名单绑定”页中,设置以下参数:
      1. 类型。URL 类型可以是 IPv4 地址、子网 IP 地址或与策略表达式匹配的 IP 地址。
      2. 已启用。选中此复选框以验证 URL。
      3. 值。URL 地址。
      4. 日志。选中该复选框以存储日志条目。
      5. 日志消息。日志的简要说明。
      6. 评论。有关允许列表 URL 的简要说明。
      7. 单击 OK(确定)。

    配置机器人允许列表

  5. 单击更新
  6. 单击完成

    配置机器人允许列表

使用 Citrix ADC GUI 配置自动程序阻止列表

此检测技术使您可以删除配置为块列出的 URL。完成以下步骤以配置阻止列表 URL。

  1. 导航到 安全 > Citrix 机器人管理配置文件
  2. Citrix 机器人管理配置文件页面上,选择一个签名文件,然后单击编辑
  3. Citrix 机器人管理配置文件 页面上,转到“签名设置”部分,然后单击“黑名单”。
  4. 黑名单 部分,设置以下参数:

    1. 已启用。选中该复选框以验证阻止列表 URL 作为检测过程的一部分。
    2. 配置类型。将 URL 配置为机器人阻止列表检测过程的一部分。这些 URL 在机器人检测过程中被删除。单击添加将 URL 添加到机器人阻止列表
    3. 在“配置 Citrix 机器人管理概要文件黑名单绑定”页中,设置以下参数。

      1. 类型。URL 类型可以是 IPv4 地址、子网 IP 地址或 IP 地址。
      2. 已启用。选中此复选框以验证 URL。
      3. 值。URL 地址。
      4. 日志。选中该复选框以存储日志条目。
      5. 日志消息。登录的简要描述。
      6. 评论。有关阻止列表 URL 的简要说明。
      7. 单击 OK(确定)。

    配置自动程序阻止列表

  5. 单击更新
  6. 单击完成

    配置自动程序阻止列表

使用 Citrix ADC GUI 配置 IP 信誉

此配置是机器人 IP 信誉功能的先决条件。通过检测技术,您可以识别传入 IP 地址是否存在任何恶意活动。作为配置的一部分,我们设置了不同的恶意机器人类别,并将机器人操作关联到每个机器人操作。 完成以下步骤以配置 IP 信誉技术。

  1. 导航到“ 安全性”>“Citrix 机器人管理配置文件”。
  2. Citrix 机器人管理配置文件页面上,选择一个签名文件,然后单击编辑
  3. Citrix 机器人管理配置文件 页面上,转到“签名设置”部分,然后单击“IP 信誉”。
  4. IP 信誉部分,设置以下参数:
    1. 已启用。选中此复选框可验证传入的机器人流量作为检测过程的一部分。
    2. 配置类别。您可以将 IP 信誉技术用于不同类别下的传入机器人流量。根据配置的类别,您可以删除或重定向机器人流量。单击 添加 以配置恶意机器人类别。
    3. 在“配置 Citrix 机器人管理概要文件 IP 信誉绑定”页中,设置以下参数:

      1. Category(类别)。从列表中选择一个恶意机器人类别。根据类别关联机器人操作。
      2. 已启用。选中此复选框以验证 IP 信誉签名检测。
      3. 机器人操作。根据配置的类别,您可以分配任何操作、删除、重定向、缓解或验证码操作。
      4. 日志。选中该复选框以存储日志条目。
      5. 日志消息。日志的简要说明。
      6. 评论。有关机器人类别的简要描述。
  5. 单击 OK(确定)。
  6. 单击更新
  7. 单击完成

    配置 IP 信誉

使用 Citrix ADC GUI 配置机器人速率限制

通过此检测技术,您可以根据在预定义时间内从客户端 IP 地址、会话或配置的资源(例如,从 URL)收到的请求数阻止机器人。完成以下步骤以配置速率限制技术。

  1. 导航到 安全 > Citrix 机器人管理配置文件
  2. Citrix 机器人管理配置文件页面上,选择一个签名文件,然后单击编辑
  3. Citrix 机器人管理配置文件 页面上,转到 签名设置 部分,然后单击 速率限制
  4. 在“费率限制”部分,设置以下参数:
    1. 已启用。选中此复选框可验证传入的机器人流量作为检测过程的一部分。
    2. 会议。基于会话的速率限制请求。单击添加以配置基于会话的速率限制请求。
    3. 在“配置 Citrix 机器人管理签名速率限制”页面中,设置以下参数。
      1. Category(类别)。从列表中选择一个恶意机器人类别。根据类别关联操作。
      2. 已启用。选中此复选框以验证传入的机器人流量。
      3. 机器人操作。为所选类别选择机器人操作。
      4. 日志。选中该复选框以存储日志条目。
      5. 日志消息。日志的简要说明。
      6. 评论。有关机器人类别的简要描述。
      7. 单击 OK(确定)。

    配置速率限制

  5. 单击更新
  6. 单击完成

    配置速率限制

使用 Citrix ADC GUI 配置设备指纹技术

此检测技术向客户端发送 Java 脚本质询并提取设备信息。根据设备信息,该技术会丢弃或绕过机器人流量。按照步骤配置检测技术。

  1. 导航到 安全 > Citrix 机器人管理配置文件
  2. Citrix 机器人管理配置文件页面上,选择一个签名文件,然后单击编辑
  3. Citrix 机器人管理配置文件 页面上,转到“签名设置”部分,然后单击“设 备指纹”。
  4. 在“设 备指纹”部分中,设置以下参数:

    1. 已启用。设置此选项以启用规则。
    2. 配置。对于给定的设备指纹,不分配任何操作、删除或重定向、缓解或验证码操作。
    3. 日志。选中该复选框以存储日志条目。
  5. 单击更新
  6. 单击完成

配置设备指纹

为移动 (Android) 应用程序配置设备指纹技术

设备指纹技术通过在客户端的 HTML 响应中插入 JavaScript 脚本,将传入流量作为机器人进行检测。浏览器调用 JavaScript 脚本时,它会收集浏览器和客户端属性并向设备发送请求。检查属性以确定流量是机器人还是人类。

该检测技术进一步扩展到在移动(Android)平台上检测机器人。与 Web 应用程序不同,在移动 (Android) 流量中,基于 JavaScript 脚本的机器人检测不适用。 为了检测移动网络中的机器人,该技术使用与客户端移动应用程序集成的机器人移动 SDK。SDK 会拦截移动流量、收集设备详细信息并将数据发送到设备。在设备方面,检测技术检查数据并确定连接是来自机器人还是来自人。

移动应用程序的设备指纹技术如何工作

以下步骤说明了机器人检测工作流程,以检测来自移动设备的请求是来自人类还是机器人。

  1. 当用户与移动应用程序进行交互时,机器人移动 SDK 会记录设备行为。
  2. 客户端向 Citrix ADC 设备发送请求。
  3. 发送响应时,设备会插入包含会话详细信息和参数的机器人会话 cookie 以收集客户端参数。
  4. 当移动应用程序收到响应时,与移动应用程序集成的 Citrix bot SDK 将验证响应、检索记录的设备指纹参数并将其发送到设备。
  5. 设备端的设备指纹检测技术可验证设备详细信息,如果是不是可疑的机器人会话 cookie,则更新机器人会话 cookie。
  6. 当 Cookie 过期或设备指纹保护更喜欢定期验证和收集设备参数时,整个过程或质询都会重复。

先决条件

要开始使用适用于移动应用程序的 Citrix ADC 设备指纹检测技术,必须在移动应用程序中下载并安装机器人移动 SDK。

使用 CLI 为移动 (Android) 应用程序配置指纹检测技术

在命令提示符下,键入:

set bot profile <profile name> -deviceFingerprintMobile ( NONE | Android )

示例:

set bot profile profile 1 –deviceFingerprintMobile Android

使用 GUI 为移动 (Android) 应用程序配置设备指纹检测技术

  1. 导航到 安全 > Citrix 机器人管理配置文件
  2. Citrix 机器人管理配置 文件页面上,选择一个文件,然后单击 编辑
  3. Citrix 机器人管理配置文件页面上,单击配置文件设置下的设备指纹
  4. 配置 Bot Mobile SDK 部分中,选择移动客户端类型。
  5. 单击“更新完成”。

移动应用程序的机器人管理设备指纹检测

配置机器人日志表达

如果客户端被标识为机器人,Citrix 机器人管理使您能够以日志消息的形式捕获其他信息。数据可以是请求 URL 的用户的姓名、源 IP 地址以及用户发送请求的源端口或表达式生成的数据。要执行自定义日志记录,必须在机器人管理配置文件中配置日志表达式。

使用 CLI 在机器人配置文件中绑定日志表达式

在命令提示符下,键入:

bind bot profile <name> (-logExpression -name <string> -expression <expression> [-enabled ( ON | OFF )]) -comment <string>
<!--NeedCopy-->

示例:

bind bot profile profile1 –logExpression exp1 –expression HTTP.REQ.URL –enabled ON -comment "testing log expression"

使用 GUI 将日志表达式绑定到机器人配置文件

  1. 导航到 安全 > Citrix 机器人管理 > 配置文件
  2. Citrix Bot 管理配置文件 页面上,从配置文件 设置 部分选择 机器人日志表达式
  3. 机器人日志表达式设置部分中,单击 添加
  4. 配置 Citrix Bot 管理配置文件机器人日志表达式绑定 页面中,设置以下参数。
    1. 日志表达式名称。日志表达式的名称。
    2. 表达式。输入日志表达式。
    3. 已启用。启用或禁用日志表达式绑定。
    4. 评论。关于机器人日志表达式绑定的简要说明。
  5. 单击确定然后完成

Bot 日志表达式

配置机器人陷阱技术

Citrix 机器人陷阱技术会随机或定期在客户端响应中插入陷阱 URL。您还可以创建陷阱 URL 列表并为其添加 URL 如果客户端是人类用户,该 URL 将显示不可见且无法访问。但是,如果客户端是自动机器人,则 URL 是可访问的,当访问时,攻击者被归类为机器人,并阻止来自机器人的任何后续请求。陷阱技术有效阻止来自机器人的攻击。

陷阱 URL 是可配置长度的字母数字 URL,并以可配置的间隔自动生成。此外,该技术还允许您为最受访的网站或经常访问的网站配置陷阱注入 URL。通过这样做,您可以强制为匹配陷阱注入 URL 的请求注入机器人陷阱 URL 的目的。

注意 : 尽管机器人陷阱 URL 是自动生成的,但 Citrix ADC 机器人管理仍允许您在机器人配置文件中配置自定义陷阱 URL。这样做是为了 加强机器人检测技术,使攻击者更难访问陷阱 URL。

要完成机器人陷阱配置,必须完成以下步骤。

  1. 启用机器人陷阱 URL
  2. 在机器人配置文件中配置机器人陷阱 URL
  3. 将机器人陷阱注入 URL 绑定到机器人档
  4. 在机器人设置中配置机器人陷阱 URL 长度和间隔

启用机器人陷阱 URL 保护

在开始之前,必须确保设备上启用了机器人陷阱 URL 保护。在命令提示符下,键入:

enable ns feature Bot

在机器人配置文件中配置机器人陷阱 URL

您可以配置机器人陷阱 URL 并在机器人配置文件中指定陷阱操作。
在命令提示符下,键入:

add bot profile <name> -trapURL <string> -trap ( ON | OFF ) -trapAction <trapAction>

其中,

trapURL。机器人防护用作陷阱 URL 的 URL。 最大长度:127

trap。启用机器人陷阱检测。可能的值:ON、OFF 默认值:OFF

trapAction。 基于机器人检测的操作。 可能的值:无、日志、删除、重定向、重置、缓解。默认值:无

示例:

add bot profile profile1 -trapURL www.bottrap1.com trap ON -trapAction RESET

将机器人陷阱注入 URL 绑定到机器人档

您可以配置机器人陷阱注入 URL 并将其绑定到机器人配置文件。 在命令提示符下,键入:

bind bot profile <profile_name> trapInjectionURL –url <url> -enabled ON|OFF -comment <comment>

其中,

URL。请求插入机器人陷阱 URL 的 URL 正则表达式模式。最大长度:127

示例:

bind bot profile profile1 trapInjectionURL –url www.example.com –enabled ON –comment insert a trap URL randomly

在机器人设置中配置机器人陷阱 URL 长度和间隔

您可以配置机器人陷阱 URL 长度,还可以将时间间隔设置为自动生成机器人陷阱 URL。 在命令提示符下,键入:

set bot settings -trapURLAutoGenerate ( ON | OFF ) –trapURLInterval <positive_integer> -trapURLLength <positive_integer>

其中,

trapURLInterval。机器人陷阱 URL 更新的时间(以秒为单位)。默认值:3600,最小值:300,最大值:86400

trapURLLength。自动生成的机器人陷阱 URL 的长度。默认值:32,最小值:10,最大值:255

示例:

set bot settings -trapURLAutoGenerate ON –trapURLInterval 300 -trapURLLength 60

使用 GUI 配置机器人陷阱 URL

  1. 导航到 安全 > Citrix 机器人管理 > 配置文件
  2. Citrix 机器人管理配置文件 页面中,单击编辑以配置机器人陷阱 URL 技术。
  3. 创建 Citrix 机器人管理配置文件页面中,在常规部分中输入机器人陷阱 URL。

    机器人管理档案中的机器人陷阱

  4. 创建 Citrix 机器人管理配置文件页面中,单击配置文件设置中的机器人陷阱
  5. 在 “ 机器人陷阱 ” 部分中,设置以下参数。

    a. 已启用。选中该复选框以启用机器人陷阱检测 b. 说明。关于 URL 的简要描述。 c. 配置操作。对机器人陷阱访问检测到的机器人采取的操作。

    机器人陷阱配置的 Bot 陷阱技术

  6. 配置陷阱插入 URL 部分中,单击 添加
  7. 配置 Citrix 机器人管理配置文件机器人陷阱绑定页面中,设置以下参数。

    1. 陷阱 URL。键入要确认为机器人陷阱注入 URL 的 URL。
    2. 已启用。启用或禁用机器人陷阱注入 URL。
    3. 评论。关于陷阱注入 URL 的简要说明。 Bot 陷阱绑定的机器人陷阱技术
  8. 在“签名设置”部分中,单击“机器人陷阱”。
  9. 在“机 器人陷阱”部分,设置以下参数:

    1. 已启用。选中该复选框可启用自动程序陷阱检测。
    2. 在“配置”部分中,设置以下参数。

      1. 操作。对机器人陷阱访问检测到的机器人采取的操作。
      2. 日志。启用或禁用机器人陷阱绑定的日志记录。
  10. 单击“更新完成”。

配置机器人陷阱 URL 设置

完成以下步骤以配置机器人陷阱 URL 设置:

  1. 导航到 安全 > Citrix 机器人管理
  2. 在详细信息窗格中的设置下,单击更改 Citrix 机器人管理设置
  3. 配置 Citrix 机器人管理设置中,设置以下参数。

    1. 陷阱 URL 间隔。机器人陷阱 URL 更新的时间(以秒为单位)。
    2. 陷阱 URL 长度。自动生成的机器人陷阱 URL 的长度。
  4. 点击 确定完成

机器人陷阱 URL 设置的机器人陷阱技术

机器人检测客户端 IP 策略表达式

Citrix 机器人管理现在可以配置高级策略表达式,以便从 HTTP 请求标头、HTTP 请求正文、HTTP 请求 URL 或使用高级策略表达式中提取客户端 IP 地址。机器人检测机制(例如 TPS、机器人陷阱或速率限制)可以使用提取的值来检测传入的请求是否为机器人。

注意 : 如果您尚未配置客户端 IP 表达式,则默认或现有源客户端 IP 地址将用于机器人检测。如果配置了表达式,则评估结果将提供可用于机器人检测的客户端 IP 地址。

如果传入请求是通过代理服务器发出并且标头中存在客户端 IP 地址,则可以配置并使用客户端 IP 表达式来提取实际的客户端 IP 地址。通过添加此配置,设备可以使用机器人检测机制为软件客户端和服务器提供更高的安全性。

使用 CLI 在机器人配置文件中配置客户端 IP 策略表达式

在命令提示符下,键入:

add bot profile <name> [-clientIPExpression <expression>]
<!--NeedCopy-->

示例:

add bot profile profile1 –clientIPExpression 'HTTP.REQ.HEADER("X-Forwarded-For") ALT CLIENT.IP.SRC.TYPECAST_TEXT_T'

使用 GUI 在机器人配置文件中配置客户端 IP 策略表达式

  1. 导航到 安全 > Citrix 机器人管理 > 配置文件
  2. 在详细信息窗格中,单击 Add(添加)。
  3. 创建 Citrix Bot 管理配置文件 页面中,设置客户端 IP 表达式。
  4. 单击创建关闭

    使用机器人配置文件中的策略表达式进行客户端 IP 地址

为 IP 信誉和设备指纹检测配置验证码

CAPTCHA 是代表“完全自动化的公共图灵测试来告诉计算机和人类分开”的缩写词。 验证码旨在测试传入流量是来自人类用户还是自动机器人。CAPTCHA 有助于阻止导致 Web 应用程序安全违规的自动机器人。在 ADC 设备中,CAPTCHA 使用质询-响应模块来识别传入的流量是否来自人类用户,而不是自动机器人。

配置机器人静态签名

此检测技术使您能够从浏览器详细信息中识别用户代理信息。根据用户代理信息,该机器人被标识为坏机器人或好机器人,然后您将机器人操作分配给它。请按照以下步骤配置静态签名技术:

  1. 在导航窗格中,展开 安全性 > Citrix 机器人管理 > 签名
  2. Citrix 机器人管理签名页面上,选择一个特征文件,然后单击编辑
  3. Citrix 机器人管理签名页面上,转到“签名设置”部分,然后单击“机器人签名”。
  4. 机器人签名 部分,设置以下参数:
    1. 配置 静态签名称。本节有机器人静态签名记录的列表。您可以选择一条记录,然后单击 编辑 以为其分配机器人操作。
    2. 单击 OK(确定)。
  5. 点击 更新签名
  6. 单击完成

机器人静态签名

机器人静态签名描述

Citrix ADC 机器人管理可保护您的 Web 应用程序免受机器人 机器人静态签名有助于根据传入请求中的用户代理等请求参数识别好机器人和坏机器人。
文件中的签名列表非常庞大,还会添加新的规则,并定期删除陈旧的规则。作为管理员,您可能希望在某个类别下搜索特定签名或签名列表。为了轻松过滤签名,机器人签名页面提供了增强的搜索功能。搜索功能使您能够查找签名规则并根据一个或多个签名参数(如操作、签名 ID、开发人员和签名名称)配置其属性。

操作。选择您希望为特定类别的签名规则配置的机器人操作。以下是可用的操作类型:

  • 启用选定项。启用所有选定的签名规则。
  • 禁用选定项。禁用所有选定的签名规则。
  • 删除选定项。将操作作为 “丢弃” 应用于所有选定的签名规则。
  • 重定向选定项。将操作作为 “重定向” 应用于所有选定的签名规则。
  • 重置选定项。将操作作为 “重置” 应用于所有选定的签名规则。
  • 已选择日志。将操作作为 “日志” 应用于所有选定的签名规则。
  • 删除删除选定项。将删除操作取消设置为所有选定的签名规则。
  • 删除已选定重定向。取消将重定向操作设置为所有选定的签名规则。
  • 删除重置选定项。将重置操作取消设置为所有选定的签名规则。
  • 删除已选日志。将日志操作取消设置为所有选定的签名规则。

Category(类别)。选择一个类别以相应地过滤签名规则。以下是可用于对签名规则进行排序的类别列表。

  • 操作。根据机器人操作进行排序。
  • Category(类别)。根据机器人类别进行排序。
  • 开发者。根据主机公司出版商进行排序。
  • 已启用。根据已启用的签名规则进行排序。
  • Id。根据签名规则 ID 进行排序。
  • 日志。根据启用了日志记录的签名规则进行排序。
  • 名称。根据签名规则名称进行排序。
  • 类型。根据签名类型进行排序。
  • 版本。根据签名规则版本进行排序。

使用 Citrix ADC GUI 根据操作和类别类型搜索机器人静态签名规则

  1. 导航到 安全 > Citrix 机器人管理 > 签名
  2. 在详细信息页面中,单击 添加
  3. Citrix Bot 管理签名 页面中,单击 静态签 名部分的编辑。
  4. 配置静态签名 部分,从下拉列表中选择签名操作。
  5. 使用搜索功能选择类别并相应地筛选规则。
  6. 单击更新

根据操作和类别类型搜索机器人静态签名规则

使用 Citrix ADC GUI 编辑机器人静态签名规则属性

  1. 导航到 安全 > Citrix 机器人管理 > 签名
  2. 在详细信息页面中,单击 添加
  3. Citrix Bot 管理签名 页面中,单击 静态签 名部分的编辑。
  4. 配置静态签名 部分,从下拉列表中选择一个操作。
  5. 使用搜索功能选择类别并相应地筛选规则。
  6. 从静态签名列表中,选择一个签名以修改其属性。

    编辑机器人静态签名规则属性

  7. 单击确定进行确认。

验证码在 Citrix ADC 机器人管理中的工作原理

在 Citrix ADC 机器人管理中,验证码验证配置为在评估机器人策略后运行的策略操作。验证码操作仅适用于 IP 信誉和设备指纹检测技术。以下是了解验证码如何工作的步骤:

  1. 如果在 IP 信誉或设备指纹机器人检测过程中发现安全违规,ADC 设备将发送验证码质询。
  2. 客户端发送验证码响应。
  3. 设备将验证验证码响应,如果验证码有效,则允许该请求并将其转发到后端服务器。
  4. 如果 CATCHA 响应无效,设备将发送新的验证码质询,直到达到最大尝试次数。
  5. 如果 CAPTCHA 响应即使在最大尝试次数之后仍然无效,则设备会丢弃请求或将请求重定向到配置的错误 URL。
  6. 如果您已配置日志操作,则设备将请求详细信息存储在 ns.log 文件中。

使用 Citrix ADC GUI 配置验证码设置

只有 IP 信誉和设备指纹检测技术才支持机器人管理验证码操作。完成以下步骤以配置 验证码 设置。

  1. 导航到安全 > Citrix 机器人管理和配置文件
  2. Citrix 机器人管理配置文件页面上,选择一个配置文件,然后单击编辑
  3. Citrix 机器人管理配置文件页面上,转到签名设置部分,然后单击 CAPTCHA
  4. 验证码设置 部分,单击 添加将验证码设置配置 到配置文件:
  5. 配置 Citrix 机器人管理 CAPTCHA 页中,设置以下参数。
    1. URL。在 IP 信誉和设备指纹检测技术期间应用验证码操作的机器人 URL。

    2. 已启用。设置此选项可启用验证码支持。
    3. 宽限时间持续时间,直到收到当前有效的 CAPTCHA 响应后没有发送新的 CAPTCHA 挑战为止。
    4. 等待时间ADC 设备等待客户端发送验证码响应所需的持续时间。
    5. 静音周期。发送不正确验证码响应的客户端必须等待,直到允许下一步尝试的持续时间。在此静音期间,ADC 设备不允许任何请求。范围:60 秒到 900 秒,推荐时间:300 秒
    6. 请求长度限制。验证码挑战发送给客户端的请求长度。如果长度大于阈值,请求将被删除。默认值为 10—3000 字节。
    7. 重试尝试。允许客户端重试以解决验证码挑战的尝试次数。范围:1—10,建议:5。
    8. 如果客户端未通过验证码验证,则不会执行任何操作/丢失/重定向操作。
    9. 日志。设置此选项可在响应验证码失败时存储来自客户端的请求信息。数据存储在 ns.log 文件中。
    10. 评论。有关验证码配置的简要说明。
  6. 点击 确定完成

    机器人验证码 GUI 配置

  7. 导航到“安全性”>“Citrix 机器人管理”>“签名”
  8. Citrix 机器人管理签名页面上,选择一个特征文件,然后单击编辑
  9. Citrix 机器人管理签名页面上,转到“签名设置”部分,然后单击“机器人签名”。
  10. 机器人签名 部分,设置以下参数:

  11. 配置 静态签名称。选择机器人静态签名记录,然后单击“编辑”以为其分配机器人操作。
  12. 单击 OK(确定)。
  13. 点击 更新签名
  14. 单击完成

机器人静态签名

自动更新机器人签名

机器人静态签名技术使用具有良好机器人和坏机器人列表的签名查找表。这些机器人根据用户代理字符串和域名进行分类。如果传入机器人流量中的用户代理字符串和域名与查找表中的值相匹配,则会应用已配置的机器人操作。 机器人签名更新托管在 AWS 云上,签名查找表与 AWS 数据库通信以进行签名更新。自动签名更新计划程序每 1 小时运行一次,以检查 AWS 数据库 并更新 Citrix ADC 设备中的签名表。

要配置的签名自动更新 URL 为https://nsbotsignatures.s3.amazonaws.com/BotSignatureMapping.json

注意 : 您还可以配置代理服务器,并通过代理定期将签名从 AWS 云更新到设备。对于代理配置,必须在机器人设置中设置代理 IP 地址和端口地址。

机器人签名自动更新的工作原理

下图显示了如何从 AWS 云中检索机器人签名、在 Citrix ADC 上更新以及如何在 Citrix ADM 上查看机器人签名以获取签名更新摘要。

机器人签名自动更新

自动程序签名自动更新计划程序执行以下操作:

  1. 从 AWS URI 中检索映射文件。
  2. 使用 ADC 设备中的现有签名检查映射文件中的最新签名。
  3. 从 AWS 下载新签名并验证签名完整性。
  4. 使用机器人签名文件中的新签名更新现有机器人签名。
  5. 生成 SNMP 警报并将特征码更新摘要发送到 Citrix ADM。

配置机器人特征码自动更新

要配置机器人特征码自动更新,请完成以下步骤:

启用机器人签名自动更新

您必须在 ADC 设备的自动程序设置中启用自动更新选项。 在命令提示符下,键入:

set bot settings –signatureAutoUpdate ON

配置代理服务器设置(可选)

如果您通过代理服务器访问 AWS 签名数据库,则必须配置代理服务器和端口。 set bot settings –proxyserver –proxyport

示例:

set bot settings –proxy server 1.1.1.1 –proxyport 1356

使用 Citrix ADC GUI 配置机器人特征码自动更新

完成以下步骤以配置机器人特征码自动更新:

  1. 导航到 安全 > Citrix 机器人管理
  2. 在详细信息窗格中的设置下,单击更改 Citrix 机器人管理设置
  3. 在“配置 Citrix 机器人管理设置”中,选中“自动更新签名”复选框。

    机器人自动更新签名设置

  4. 单击确定关闭

创建机器人管理配置文件

机器人配置文件是用于检测机器人类型的机器人管理设置的集合。在配置文件中,您可以确定 Web App Firewall 如何将其每个筛选器(或检查)应用到您的网站的机器人流量以及来自这些网站的响应。

完成以下步骤以配置机器人配置文件:

  1. 导航到安全 > Citrix 机器人管理 > 配置文件
  2. 在详细信息窗格中,单击 Add(添加)。
  3. 在“创建 Citrix 机器人管理配置文件”页面中,设置以下参数。

    1. 名称。机器人配置文件名称。
    2. 签名。机器人签名文件的名称。
    3. 错误的 URL。重定向的 URL。
    4. 评论。有关配置文件的简要描述。
  4. 单击创建关闭

配置机器人管理配置文件

创建机器人策略

机器人策略控制进入机器人管理系统的流量,并控制发送到 Auditlog 服务器的机器人日志。按照过程配置机器人策略。

  1. 导航到安全 > Citrix 机器人管理 > 机器人策略
  2. 在详细信息窗格中,单击 Add(添加)。
  3. 在“创建 Citrix 机器人管理策略”页面中,设置以下参数。
    1. 名称。机器人策略的名称。
    2. 表达式。直接在文本区域中键入策略表达式或规则。
    3. 机器人个人资料. 用于应用机器人策略的机器人配置文件。
    4. 未定义的操作。 选择您希望分配的操作。
    5. 评论。有关策略的简要描述。
    6. 日志操作。审核记录机器人流量的日志消息操作。有关审核日志操作的详细信息,请参阅审核日志记录主题。
  4. 单击创建关闭

配置机器人管理配置文件

每秒机器人事务 (TPS)

每秒事务 (TPS) 机器人技术在每秒请求数 (RPS) 和 RPS 中的百分比增加超过配置的阈值时将传入流量检测为机器人。 检测技术可以保护您的 Web 应用程序免受可能导致 Web 抓取活动、暴力强制登录和其他恶意攻击的自动机器人的攻击。

注意 : 只有在两个参数均配置并且两个值均增加超过阈值限制时,机器人技术才会将传入流量检测为机器人。 让我们考虑一种情况,即设备接收来自特定 URL 的许多请求,并且您希望 Citrix ADC 机器人管理部门检测是否存在机器人攻击。TPS 检测技术检查 1 秒内来自 URL 的请求数(配置值),以及 30 分钟内收到的请求数的增加百分比(配置值)。如果值超过阈值限制,则流量将被视为机器人,并且设备将运行配置的操作。

配置每秒机器人事务 (TPS) 技术

要配置 TPS,您必须完成以下步骤:

  1. 启用自动程序 TPS
  2. 将 TPS 设置绑定到机器人管理配置文件

将 TPS 设置绑定到机器人管理配置文件

启用机器人 TPS 功能后,必须将 TPS 设置绑定到机器人管理配置文件。

在命令提示符下,键入:

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>])

示例:

bind bot profile profile1 -tps -type RequestURL -threshold 1 -percentage 100000 -action drop -logMessage log

启用每秒机器人事务 (TPS)

在开始之前,必须确保已在设备上启用 Bot TPS 功能。在命令提示符下,键入:

set bot profile profile1 –enableTPS ON

使用 Citrix ADC GUI 配置每秒机器人事务 (TPS)

完成以下步骤以配置每秒机器人事务:

  1. 导航到 安全 > Citrix 机器人管理 > 配置文件
  2. Citrix 机器人管理配置文件页面中,选择一个配置文件,然后单击编辑
  3. 创建 Citrix 机器人管理配置文件页中,单击签名设置部分下的 TPS
  4. TPS 部分中,启用该功能并单击 添加

    每秒部分的机器人管理事务

  5. 配置 Citrix 机器人管理配置文件 TPS 绑定页中,设置以下参数。

    1. 类型。检测技术允许的输入类型。可能的值:源 IP、 地理位置、主机、URL。

      源 IP — 基于客户端 IP 地址的 TPS。

      地理位置 — TPS 基于客户的地理位置。

      HOST-基于转发到特定后端服务器 IP 地址的客户端请求的 TPS。

      URL — 基于来自特定 URL 的客户端请求的 TPS。

    2. 固定阈值。在 1 秒时间间隔内,TPS 输入类型允许的最大请求数。

    3. 百分比阈值。在 30 分钟时间间隔内,来自 TPS 输入类型的请求增加的最大百分比。

    4. 操作。对 TPS 绑定检测到的机器人采取的操作。

    5. 日志。启用或禁用 TPS 绑定的日志记录。

    6. 日志消息。TPS 绑定检测到的机器人日志消息。最大长度:255。

    7. 评论。有关 TPS 配置的简要说明。最大长度:255

  6. 单击确定,然后关闭

每秒部分的机器人管理事务

基于鼠标和键盘动态学的机器人检测

为了检测机器人并缓解 Web 抓取异常情况,Citrix ADC 机器人管理使用了基于鼠标和键盘行为的增强型机器人检测技术。与需要直接人工互动的传统机器人技术(例如,CAPTCHA 验证)不同,增强的技术被动监视鼠标和键盘动态。然后,Citrix ADC 设备收集实时用户数据并分析人与机器人之间的行为。

与现有机器人检测机制相比,使用鼠标和键盘动态进行被动机器人检测具有以下优点

  • 在整个用户会话期间提供持续监视,并消除单个检查点。
  • 不需要人工互动,对用户来说是完全透明的。

使用鼠标和键盘动态学检测机器人的工作

使用键盘和鼠标动态学的机器人检测技术由两个组件组成:网页记录器和机器人探测器。网页记录器是一种 JavaScript,用于记录用户在网页上执行任务(例如,填写注册表格)时的键盘和鼠标移动情况。然后,记录器将数据批量发送到 Citrix ADC 设备。然后,设备将数据存储为 KM 记录,并将其发送到 Citrix ADM 服务器上的机器人检测器,该服务器分析用户是人还是机器人。

以下步骤解释了组件之间的交互方式:

  1. Citrix ADC 管理员通过 ADM 样书、CLI、NITRO 或任何其他方法配置策略表达式。
  2. 当管理员在设备上启用该功能时,URL 将在机器人配置文件中设置。
  3. 当客户端发送请求时,Citrix ADC 设备将跟踪会话和会话中的所有请求。
  4. 如果请求与机器人配置文件中配置的表达式匹配,则设备会在响应中插入 JavaScript(网页记录器)。
  5. 然后,JavaScript 收集所有键盘、鼠标活动,并以 POST URL(瞬态)发送 KM 数据。
  6. Citrix ADC 设备存储数据并在会话结束时将其发送到 Citrix ADM 服务器。设备收到 POST 请求的完整数据后,数据就会发送到 ADM 服务器。
  7. CAS 平台分析数据,并根据分析结果可在 Citrix ADM GUI 上获得。

JavaScript 记录器记录以下鼠标和键盘移动:

  • 键盘事件 — 所有活动
  • 鼠标事件-鼠标移动、向上鼠标、鼠标向下
  • 剪贴板事件-粘贴
  • 自定义事件-自动填充、自动填充取消
  • 每个事件的时间戳

使用鼠标和键盘动态设置机器人检测

Citrix ADC 机器人管理配置包括启用或禁用基于键盘和鼠标的检测功能,以及在机器人配置文件中配置 JavaScript URL。 完成以下步骤以使用鼠标和键盘动态配置机器人检测:

  1. 启用基于键盘和鼠标的检测
  2. 配置表达式以决定何时可以在 HTTP 响应中注入 JavaScript

启用基于键盘鼠标的机器人检测

在开始配置之前,请确保已在设备上启用了基于键盘和鼠标的机器人检测功能。

在命令提示符下,键入:

add bot profile <name> -KMDetection ( ON | OFF )
<!--NeedCopy-->

示例:

add bot profile profile1 –KMDetection ON

为 JavaScript 插入配置机器人表达式

配置机器人表达式以评估流量并插入 JavaScript。只有在表达式被评估为 true 时,才会插入 JavaScript。

在命令提示符下,键入:

bind bot profile <name> -KMDetectionExpr -name <string> -expression <expression> -enabled ( ON | OFF ) –comment <string>
<!--NeedCopy-->

示例:

bind bot profile profile1 -KMDetectionExpr -name test -expression http.req.url.startswith("/testsite") -enabled ON

为基于键盘鼠标的机器人检测配置 HTTP 响应中插入的 JavaScript 文件名

为了收集用户操作详细信息,设备会在 HTTP 响应中发送 JavaScript 文件名。JavaScript 文件收集 KM 记录中的所有数据并将其发送到设备。

在命令提示符下,键入:

set bot profile profile1 – KMJavaScriptName <string>
<!--NeedCopy-->

示例:

set bot profile profile1 –KMJavaScriptName script1

配置行为生物识别尺寸

您可以配置鼠标和键盘行为数据的最大大小,这些数据可以作为 KM 记录发送到设备并由 ADM 服务器处理。

在命令提示符下,键入:

set bot profile profile1 -KMEventsPostBodyLimit <positive_integer>
<!--NeedCopy-->

示例:

set bot profile profile1 – KMEventsPostBodyLimit 25

将 Citrix ADC 设备配置为配置 JavaScript 并收集键盘和鼠标行为生物识别技术后,设备将数据发送到 Citrix ADM 服务器。有关 Citrix ADM 服务器如何通过行为生物识别检测机器人的详细信息,请参阅机 器人违规 主题。

使用 GUI 配置键盘和鼠标机器人表达式设置

  1. 导航到安全 > Citrix 机器人管理和配置文件
  2. Citrix 机器人管理配置文件页面上,选择一个配置文件,然后单击编辑
  3. 基于键盘和鼠标的机器人检测 部分中,设置以下参数:
    1. 启用检测。选中该复选框以检测基于机器人的键盘和鼠标动态行为。
    2. 事件发布身体限制。浏览器发送的要由 Citrix ADC 设备处理的键盘和鼠标动态数据的大小。
  4. 单击 OK(确定)。

    配置键盘和鼠标机器人表达式设

  5. Citrix Bot 管理配置文件 页面上,转到 配置文件设置 部分,然后单击 基于键盘和鼠标的机器人表达式设
  6. 基于键盘和鼠标的机器人表达式设置 部分中,单击 添加
  7. 在 “ 配置 Citrix Bot 管理配置文件机器人键盘和鼠标表达式绑定 ” 页中,设置以下参数:
    1. 表达式名称。用于检测键盘和鼠标动态的机器人策略表达式的名称。
    2. 表达式。机器人策略表达式。
    3. 已启用。选中该复选框以启用键盘、机器人键盘和鼠标表达式绑定。
    4. 评论。关于机器人策略表达式及其与机器人配置文件的绑定的简要描述。
    5. 单击确定关闭
  8. 基于键盘和鼠标的机器人表达式设置 部分中,单击 更新

    基于键盘和鼠标的机器人表达式设置