Illusive Networks
集成版本:3.0
产品使用场景
- 执行主动操作 - 运行取证扫描、丰富实体、添加/移除欺骗用户/服务器。
- 将突发事件提取到 Simplify。
在 Google Security Operations 上配置 Illusive Networks 集成
有关如何在 Google SecOps 中配置集成的详细说明,请参阅配置集成。
集成参数
使用以下参数配置集成:
参数显示名称 | 类型 | 默认值 | 是必填字段 | 说明 |
---|---|---|---|---|
API 根 | 字符串 | http://x.x.x.x | 是 | Illusive Networks 实例的 API 根。 |
API 密钥 | 密码 | 不适用 | 是 | Illusive Networks 的 API 密钥。 |
CA 证书文件 | 字符串 | 错误 | Base64 编码的 CA 证书文件。 | |
验证 SSL | 复选框 | 勾选 | 是 | 如果已启用,请验证与 Illusive Networks 服务器的连接的 SSL 证书是否有效。 |
如何生成 API 密钥
- 在 Illusive Networks 控制台中,前往“设置”部分
- 在“常规”部分中,向下滚动到“API 密钥”部分。
- 按“添加密钥”按钮。
- 建议为 API 密钥添加所有权限。
- 您需要从提供的字符串中复制除“Basic”字符串之外的所有内容。
- 将该值放入 Google SecOps 集成的“API 密钥”参数中。
如何更新速率限制
Illusive Networks 中的某些端点存在速率限制。对于连接器,关键在于确保限制足够高,以便提取所有突发事件。如需更新速率限制,您需要登录管理服务器并前往:C:\Program
Files\illusive-Management-Server-3.1.XXX.XXXX\conf\general.properties.txt
在文件中,查找以下属性:
- api.incident.rate.limit.maximum.num.requests
- api.rate.limit.windows.duration.minutes
建议采用以下设置:
- api.incident.rate.limit.maximum.num.requests=100
- api.rate.limit.windows.duration.minutes=1
- api.monitoring.rate.limit.maximum.num.requests = 100
- api.forensics.rate.limit.maximum.num.requests = 100
操作
Ping
说明
使用 Google Security Operations Marketplace 标签页中的集成配置页面上提供的参数,测试与 Illusive Networks 的连接。
参数
不适用
运行于
此操作不会在实体上运行。
操作执行结果
脚本结果
脚本结果名称 | 值选项 |
---|---|
is_success | is_success=False |
is_success | is_success=True |
案例墙
结果类型 | 值 / 说明 | 类型 |
---|---|---|
输出消息* | 如果成功:“Successfully connected to the Illusive Networks server with the provided connection parameters!” 不成功:(失败)- 无法连接到 Illusive Networks 服务器!错误为 {0}".format(exception.stacktrace) |
常规 |
丰富实体
说明
使用 Illusive Networks 的信息丰富实体。支持的实体: 主机名。
参数
参数显示名称 | 类型 | 默认值 | 是必填字段 | 说明 |
---|---|---|---|---|
不适用 |
运行于
此操作在 Host 实体上运行。
操作执行结果
脚本结果
脚本结果名称 | 值选项 |
---|---|
is_success | is_success=False |
is_success | is_success=True |
JSON 结果
{
"machineId": "00428a29-0343-4e13-aa97-3b624739c509",
"machineName": "HELLO",
"isHealthy": false,
"lastDeploymentMethodType": "WMI",
"distinguishedName": "CN=HELLO,CN=Computers,dc=iln,dc=local",
"groupName": null,
"sourceDiscoveryName": "iln.local",
"collectData": true,
"policyName": null,
"assignmentStatus": "ANALYSIS",
"operatingSystemType": "Windows",
"operatingSystemName": "Windows Server 2016 Standard Evaluation",
"operatingSystemVersion": "10.0 (14393)",
"agentVersion": null,
"bitness": null,
"loggedInUserName": null,
"lastLogonTime": 1613078764501,
"succeededDeceptionFamilies": 0,
"shouldBeUninstalledDeceptionFamilies": 0,
"desiredDeceptionFamilies": 0,
"deceptionFamiliesPercentages": null,
"lastExecutionType": "AGENT",
"machineLastExecutionPhaseType": "CONNECTION",
"machineLastExecutionPhaseStatus": "FAILURE",
"machineLastExecutionPhaseErrorMessage": "Unreachable - no ping",
"mitigationStatusType": null,
"machineExecutionUnifiedStatus": "FAILURE_CONNECTION",
"machineLastExecutionPhaseFinishDate": "2021-02-12T10:17:30.623Z",
"endpointTrapHealthCheckHostStatus": "NotTested",
"endpointTrapHealthCheckHostStatusLastUpdated": null,
"failedDeceptionFamilies": 0,
"inProgressDeceptionFamilies": 0,
"notDeployedDeceptionFamilies": 0,
"policyId": null,
"ghost": false
}
实体扩充
扩充项字段名称 | 逻辑 - 适用情形 |
---|---|
ILLNET_machineName | 当以 JSON 格式提供时(主机信息) |
ILLNET_isHealthy | 当以 JSON 格式提供时(主机信息) |
ILLNET_host | 当以 JSON 格式提供时(主机信息) |
ILLNET_distinguishedName | 当以 JSON 格式提供时(主机信息) |
ILLNET_sourceDiscoveryName | 当以 JSON 格式提供时(主机信息) |
ILLNET_policyName | 当以 JSON 格式提供时(主机信息) |
ILLNET_operatingSystemName | 当以 JSON 格式提供时(主机信息) |
ILLNET_agentVersion | 当以 JSON 格式提供时(主机信息) |
ILLNET_loggedInUserName | 当以 JSON 格式提供时(主机信息) |
ILLNET_machineExecutionUnifiedStatus | 当以 JSON 格式提供时(主机信息) |
ILLNET_bitness | 当以 JSON 格式提供时(主机信息) |
案例墙
结果类型 | 值 / 说明 | 类型 |
---|---|---|
输出消息* | 操作不应失败,也不应停止 playbook 执行: 如果至少有一个实体没有数据(is_success = true):“Action wasn't able to enrich the following entities using Illusive Networks: \n {entity.identifier}”。 如果并非所有数据都可用(is_success = false):“没有实体得到丰富”。 操作应失败并停止 playbook 执行: 如果状态代码为 429:“执行操作‘丰富实体’时出错。原因:速率限制错误。请参阅有关如何提高速率限制的文档"。 |
常规 |
“案例墙”表格 | 名称:{entity.identifier} 将只有 2 列:“键”和“值”。 |
实体 |
运行取证扫描
说明
在 Illusive Networks 中对端点运行取证扫描。适用于 IP 和主机名实体。
参数
参数显示名称 | 类型 | 默认值 | 是必填字段 | 说明 |
---|---|---|---|---|
包含系统信息 | 复选框 | 勾选 | 是 | 如果启用,操作将返回系统信息。 |
包含预取文件信息 | 复选框 | 勾选 | 是 | 如果启用,操作将返回有关预取文件的信息。 |
包含“添加/删除程序”信息 | 复选框 | 勾选 | 是 | 如果启用,操作将返回有关添加/移除程序的信息。 |
包含启动进程信息 | 复选框 | 勾选 | 是 | 如果启用,操作将返回有关启动进程的信息。 |
包含正在运行的进程信息 | 复选框 | 勾选 | 是 | 如果启用,操作将返回有关正在运行的进程的信息。 |
纳入用户辅助计划信息 | 复选框 | 勾选 | 是 | 如果已启用,操作将返回有关用户辅助计划的信息。 |
包含 PowerShell 历史记录信息 | 复选框 | 勾选 | 是 | 如果启用,操作将返回有关 PowerShell 历史记录的信息。 |
要返回的最大商品数 |
整数 | 50 | 否 | 指定要返回的项数。如果未提供任何内容,操作将返回所有内容。 |
运行于
此操作适用于以下实体:
- IP 地址
- 主机
操作执行结果
脚本结果
脚本结果名称 | 值选项 |
---|---|
is_success | is_success=False |
is_success | is_success=True |
JSON 结果
{
"Entity.identifier": {
"host_info": "{Host_info part}",
"prefetch_info": "{prefetch_info}",
"installed_programs_info": "{installed_programs_info}",
"startup_processes": "{startup_processes}",
"running_processes": "{running_processes}",
"user_assist_info": "{user_assist_info}",
"powershell_history": "{powershell history}"
}
}
实体扩充
扩充项字段名称 | 逻辑 - 适用情形 |
---|---|
ILLNET_osName | 当以 JSON 格式提供时(主机信息) |
ILLNET_machineType | 当以 JSON 格式提供时(主机信息) |
ILLNET_host | 当以 JSON 格式提供时(主机信息) |
ILLNET_loggedInUser | 当以 JSON 格式提供时(主机信息) |
ILLNET_userProfiles | 当以 JSON 格式提供时(主机信息) |
ILLNET_operatingSystemType | 当以 JSON 格式提供时(主机信息) |
案例墙
结果类型 | 值 / 说明 | 类型 |
---|---|---|
输出消息* | 该操作不应失败,也不应停止 playbook 执行: 如果至少有一个未成功:“Action wasn't able to get any information from forensic scan on the following endpoints: {entity.identifier}”(操作无法从以下端点的取证扫描中获取任何信息): 如果所有端点均未成功:“在提供的端点上未找到任何取证信息。” 异步消息:“已在以下端点上开始取证扫描:{实体标识符}。\n 已完成对以下端点的取证扫描。“ 操作应失败并停止 playbook 执行: 如果未启用任何“include ...”参数:“执行操作‘运行取证扫描’时出错。原因:您需要启用至少一个“Include ...”参数 |
常规 |
案例墙表格主机信息 | 名称:{entity.identifier} 将只有 2 列:“键”和“值”。 |
实体 |
案例墙表格 Prefetch_Info | 名称:“{entity.identifier}:预提取文件信息” 列: 文件名 上次执行时间 文件修改时间 预取文件名 |
常规 |
“案例墙”表格 INSTALLED_PROGRAMS_INFO |
名称:“{entity.identifier}:添加/移除程序信息” 列: 显示名称 文件名 |
常规 |
“案例墙”表格 STARTUP_PROCESSES |
名称:“{entity.identifier}:启动进程” 列: 姓名 命令 位置 用户 |
常规 |
“案例墙”表格 RUNNING_PROCESSES |
名称:“{entity.identifier}:正在运行的进程” 列: 用户 管理员权限 命令 进程 ID 进程名称 开始时间 |
常规 |
“案例墙”表格 USER_ASSIST_INFO |
名称:“{entity.identifier}:用户辅助计划信息” 列: 文件名 用户名 上次使用日期 |
**** |
“案例墙”表格 POWER_SHELL_HISTORY |
名称:“{entity.identifier}: Powershell 历史记录” 列: 用户名 命令 |
列出欺骗性商品
说明
列出 Illusive Networks 中的可用欺骗性项。
参数
参数显示名称 | 类型 | 默认值 | 是必填字段 | 说明 |
---|---|---|---|---|
欺骗性类型 | DDL | 全部 可能的值: 全部 仅限用户 仅限服务器 |
是 | 指定应返回哪种类型的欺骗性商品。 |
欺骗性状态 | DDL | 全部 可能的值: 全部 仅限已批准、仅限建议 |
是 | 指定应根据状态返回哪种欺骗性商品。 |
要返回的最大商品数 | 整数 | 50 | 否 | 指定要返回的项数。默认值:50。如果未指定任何内容,操作将返回所有商品。 |
运行于
此操作不会在实体上运行。
操作执行结果
脚本结果
脚本结果名称 | 值选项 |
---|---|
is_success | is_success=False |
is_success | is_success=True |
JSON 结果
{
"users": [
{
"username": "backupad",
"password": "5437niwY",
"domainName": "intw-lab.local",
"policyNames": [
"Full Protection"
],
"adUser": false,
"activeUser": false,
"deceptiveState": "APPROVED"
},
{
"username": "jvillar",
"password": "ritA1102",
"domainName": "intw-lab.local",
"policyNames": [],
"adUser": true,
"activeUser": false,
"deceptiveState": "SUGGESTED"
},
{
"username": "gaccess.user",
"password": "psUiS01",
"domainName": "intw-lab.local",
"policyNames": [],
"adUser": true,
"activeUser": false,
"deceptiveState": "SUGGESTED"
},
{
"username": "service.user",
"password": "mAkaYe4",
"domainName": "intw-lab.local",
"policyNames": [],
"adUser": true,
"activeUser": false,
"deceptiveState": "SUGGESTED"
}
],
"servers": [
{
"host": "10.0.0.2",
"serviceTypes": [
"DB"
],
"policyNames": [
"Full Protection"
],
"adHost": false,
"deceptiveState": "APPROVED"
},
{
"host": "10.0.0.1",
"serviceTypes": [
"DB"
],
"policyNames": [
"Full Protection"
],
"adHost": false,
"deceptiveState": "APPROVED"
}
]
}
案例墙
结果类型 | 值 / 说明 | 类型 |
---|---|---|
输出消息* | 该操作不应失败,也不应停止 playbook 执行: 如果状态代码为 200 且没有可用数据 (is_success=false),“No data was found regarding deceptive items based on the provided criteria in Illusive Networks.” 操作应失败并停止 playbook 执行: |
常规 |
“案例墙”表格 | 名称:“欺骗性用户” 列: 用户名 密码 网域 政策 AD 用户 有效 州 |
常规 |
“案例墙”表格 | 名称:“欺骗性服务器” 列: 主机 服务 政策 AD 服务器 州 |
常规 |
添加欺骗性用户
说明
在 Illusive Networks 中添加欺骗性用户。
参数
名称 | 默认值 | 是必填字段 | 说明 |
---|---|---|---|
用户名 | 不适用 | 是 | 指定新欺骗性用户的用户名。 |
密码 | 不适用 | 是 | 为新的欺骗性用户指定密码。 |
DNS 域名 | 不适用 | 否 | 为新的欺骗性用户指定域名。 |
政策名称 | 不适用 | 否 | 指定需要应用于新欺骗性用户的政策的英文逗号分隔列表。如果未提供任何内容,操作将默认使用所有政策。 |
操作执行结果
脚本结果
脚本结果名称 | 值选项 |
---|---|
is_success | is_success=False |
is_success | is_success=True |
案例墙
结果类型 | 值 / 说明 | 类型 |
---|---|---|
输出消息* | 成功 (is_success=true) → 已在 Illusive Networks 中成功添加欺骗性用户。 情形 1. 用户已存在(失败) - 执行操作“{action name}”时出错。原因:欺骗性用户“{username}”已存在。 情形 2. 400 状态代码(失败) - 执行操作“{action name}”时出错。原因:{error message}。 案例 3:一般错误(失败) - 执行操作“{action name}”时出错。原因:{error traceback}。 |
常规 |
移除欺骗性用户
说明
从 Illusive Networks 中移除欺骗性用户。
参数
名称 | 默认值 | 是必填字段 | 说明 |
---|---|---|---|
用户名 | 不适用 | 是 | 指定需要移除的欺骗性用户的用户名。 |
操作执行结果
脚本结果
脚本结果名称 | 值选项 |
---|---|
is_success | is_success=False |
is_success | is_success=True |
案例墙
结果类型 | 值 / 说明 | 类型 |
---|---|---|
输出消息* | 成功 → 已成功移除 Illusive Networks 中的欺骗性用户。 情形 1. 用户不存在 (is_success=false) - 操作无法移除欺骗性用户“{username}”。原因:欺骗性用户“{username}”不存在。 情形 2. 常规错误(失败)- 执行操作“{action name}”时出错。原因:{error traceback}。 |
常规 |
添加欺骗性服务器
说明
在 Illusive Networks 中添加欺骗性服务器。
参数
名称 | 默认值 | 是必填字段 | 说明 |
---|---|---|---|
服务器名称 | 不适用 | 是 | 指定新欺骗性服务器的名称。 |
服务类型 | 数据库 | 是 | 为新的欺骗性服务器指定以英文逗号分隔的服务类型列表。 |
政策名称 | 否 | 指定需要应用于新欺骗性服务器的政策的英文逗号分隔列表。如果未提供任何内容,操作将默认使用所有政策。 |
操作执行结果
脚本结果
脚本结果名称 | 值选项 |
---|---|
is_success | is_success=False |
is_success | is_success=True |
案例墙
结果类型 | 值 / 说明 | 类型 |
---|---|---|
输出消息* | 成功 (is_success=true) → 已在 Illusive Networks 中成功添加欺骗性服务器。 情形 1. 服务器已存在(失败)- 执行操作“{action name}”时出错。原因:欺骗性服务器“{server name}”已存在。 情形 2. 400 状态(失败)- 执行操作“{action name}”时出错。原因:{error message}。 案例 3:一般错误 - 执行操作“{action name}”时出错。原因:{error traceback}。 |
常规 |
移除欺骗性服务器
说明
从 Illusive Networks 中移除欺骗性服务器。
参数
名称 | 默认值 | 是必填字段 | 说明 |
---|---|---|---|
服务器名称 | 不适用 | 是 | 指定需要移除的欺骗性服务器的名称。 |
操作执行结果
脚本结果
脚本结果名称 | 值选项 |
---|---|
is_success | is_success=False |
is_success | is_success=True |
案例墙
结果类型 | 值 / 说明 | 类型 |
---|---|---|
输出消息* | 成功 → 已成功移除 Illusive Networks 中的欺骗性服务器。 情形 1. 服务器不存在 (is_success=false) - 操作未能移除欺骗性服务器“{server name}”。原因:欺骗性服务器“{server name}”不存在。 情形 2. 一般错误 - 执行操作“{action name}”时出错。原因:{error traceback}。 |
常规 |
连接器
Illusive Networks - Incidents 连接器
说明
从 Illusive Networks 拉取具有相关取证时间轴的突发事件。
在 Google SecOps 中配置 Illusive Networks - Incidents 连接器
有关如何在 Google SecOps 中配置连接器的详细说明,请参阅配置连接器。
连接器参数
使用以下参数配置连接器:
参数显示名称 | 类型> | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
商品字段名称 | 字符串 | 产品名称 | 是 | 输入源字段名称,以便检索产品字段名称。 |
事件字段名称 | 字符串 | details_serviceType | 是 | 输入源字段名称,以便检索事件字段名称。 |
环境字段名称 | 字符串 | "" | 否 | 描述存储环境名称的字段的名称。 如果找不到环境字段,则环境为默认环境。 |
环境正则表达式模式 | 字符串 | .* | 否 | 要对“环境字段名称”字段中找到的值运行的正则表达式模式。 默认值为 .*,用于捕获所有内容并返回未更改的值。 用于允许用户通过正则表达式逻辑来操纵环境字段。 如果正则表达式模式为 null 或空,或者环境值为 null,则最终环境结果为默认环境。 |
脚本超时(秒) | 整数 | 180 | 是 | 运行当前脚本的 Python 进程的超时时间限制。 |
API 根 | 字符串 | http://x.x.x.x | 是 | Illusive Networks 实例的 API 根。 |
API 密钥 | 字符串 | 不适用 | 是 | Illusive Networks 的 API 密钥。注意:字符串“Basic”不应是值的一部分。 |
提醒严重程度 | 字符串 | 中 | 是 | 将根据 Illusive Networks 的事件创建的 Google SecOps 提醒的严重程度。 可能的值: 信息 低 中 高 严重 |
回溯的小时数上限 | 整数 | 1 | 否 | 提取事件的小时数。 |
要提取的突发事件数上限 | 整数 | 10 | 否 | 每次连接器迭代要处理的事件数量。最大值为 1000。 |
将白名单用作黑名单 | 复选框 | 勾选 | 是 | 如果启用,白名单将用作黑名单。 |
验证 SSL | 复选框 | 尚未核查 | 是 | 如果已启用,请验证与 Illusive Networks 服务器的连接的 SSL 证书是否有效。 |
CA 证书文件 | 字符串 | 不适用 | 否 | Base64 编码的 CA 证书文件。 |
代理服务器地址 | 字符串 | 不适用 | 否 | 要使用的代理服务器的地址。 |
代理用户名 | 字符串 | 不适用 | 否 | 用于进行身份验证的代理用户名。 |
代理密码 | 密码 | 不适用 | 否 | 用于进行身份验证的代理密码。 |
连接器规则
代理支持
连接器支持代理。
需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。