Lastline

本文档提供了有关如何将 Lastline 与 Google SecOps 集成的指南。

使用场景

对网址或文件对象进行动态分析。

在 Google Security Operations 中配置 Lastline 集成

有关如何在 Google SecOps 中配置集成的详细说明,请参阅配置集成。

集成参数

使用以下参数配置集成:

参数显示名称 类型 默认值 为必填项 说明
API 根 字符串 https://user.lastline.com 是 Lastline API 根
用户名 字符串 不适用 是 要在集成中使用的 Lastline 账号用户名。
密码 密码 不适用 是 要在集成中使用的 Lastline 账号密码。
验证 SSL 复选框 勾选 否 指定集成是否应检查 API 根是否配置了有效证书。

操作

Ping

说明

使用 Google SecOps Content Hub 页面中的集成配置页面上提供的参数,测试与 Lastline 服务的连接。

运行时间

此操作不会对实体执行。

操作执行结果

脚本结果
脚本结果名称 值选项
is_success is_success=False
is_success is_success=True
案例墙
结果类型 值 / 说明 类型
输出消息*

操作不应失败,也不应停止 playbook 执行:

  • 如果成功:“已使用提供的连接参数成功连接到 Lastine 服务!”

操作应失败并停止 playbook 执行:

  • 如果账号凭证不正确:“无法使用提供的账号连接到 Lastline 服务。请检查您的配置。错误为 {0}”。format(exception.stacktrace)

  • 如果出现其他严重错误:“Failed to connect to the Lastline service! 错误为 {0}”。format(exception.stacktrace)
常规

提交网址

说明

为提供的网址提交分析任务。

参数

参数显示名称 类型 默认值 为必填项 说明
待分析的网址 字符串 不适用 是 指定要分析的网址。
等待报告? 复选框 勾选 否 指定操作是否应等待报告创建。扫描完成后,您也可以稍后通过“获取分析结果”操作获取报告。

运行时间

此操作不会对实体执行。

操作执行结果

脚本结果
脚本结果名称 值选项
is_success is_success=False
is_success is_success=True

JSON 结果

如果未勾选“等待报告”复选框:

{
    "success": 1,
    "data": {
        "submission_timestamp": "2021-03-10 07:13:25",
        "task_uuid": "543b3a6ffd17001009d4e10cfa16c2c3",
        "expires": "2021-03-11 14:51:57"
    }
}

如果选中“等待报告”复选框:

{
    "success": 1,
    "data": {
        "submission": "2021-03-14 04:46:11",
        "expires": "2021-03-16 04:46:10",
        "task_uuid": "5801c22ce6b4001003e58377051920f2",
        "reports": [
            {
                "relevance": 1.0,
                "report_uuid": "36150b54987b7f8bIUnzQWg2UgKxu8qdz7caWKwqyWz1yyE1aFpa9g",
                "report_versions": [
                    "ll-pcap"
                ],
                "description": "Pcap analysis"
            },
            {
                "relevance": 1.0,
                "report_uuid": "a03998ee0d483efaRlYorEk0lbJUBcMXkYP1YfeGpQTufOFDWraR5Q",
                "report_versions": [
                    "ll-web"
                ],
                "description": "Dynamic analysis in instrumented Chrome browser"
            }
        ],
        "submission_timestamp": "2021-03-15 03:58:51",
        "child_tasks": [
            {
                "task_uuid": "772d23d8d59500100f87aac889c70ece",
                "score": 0,
                "tag": "network traffic analysis",
                "parent_report_uuid": "a03998ee0d483efaRlYorEk0lbJUBcMXkYP1YfeGpQTufOFDWraR5Q"
            }
        ],
        "score": 0,
        "malicious_activity": [
            "Info: A Domain / URL of high reputation was visited"
        ],
        "analysis_subject": {
            "url": "https://yahoo.com"
        },
        "last_submission_timestamp": "2021-03-15 03:58:51"
    }
}
案例墙
结果类型 值/说明 类型
输出消息*

操作不应失败,也不应停止 playbook 执行:

  • 如果成功: "Successfully created analysis task for the url {0}".format(url)
  • 如果操作成功,并且提供了等待结果的复选框,则在操作完成后(提取结果): "Successfully fetched the analysis results for the url {0}".format(url)
  • 如果提供的网址不正确 (is_success=false):“Failed to create analysis task because the provided url {0} is incorrect.”format(url)
  • 如果发生其他非严重错误 (is_success=false):“未能为网址 {0} 创建分析任务。Error is {1}".format(url,entity_identifier)

操作应失败并停止 playbook 执行:

  • 如果 API 凭据不正确:“无法使用提供的 API 密钥或令牌连接到 Lastline 服务。请检查您的配置。Error is {0}".format(exception.stacktrace)
  • 如果账号凭证不正确:“无法使用提供的账号连接到 Lastline 服务。请检查您的配置。Error is {0}".format(exception.stacktrace)
  • 如果出现其他严重错误:“Failed to connect to the Lastline service! 错误为 {0}”。format(exception.stacktrace)
常规
表

表名称:“{0} 分析结果”。

表列:

Submission_Timestamp

Latest_Submission_Timestamp

Results_Expiry_Timestamp

Analysis_Task_UUID

得分

Malicious_Activity

常规

提交文件

说明

为提供的文件提交分析任务。

参数

参数显示名称 类型 默认值 为必填项 说明
文件路径 字符串 不适用 是 指定要分析的文件的完整路径。
等待报告? 复选框 勾选 否 指定操作是否应等待报告创建。扫描完成后,您也可以稍后通过“获取分析结果”操作获取报告。

运行时间

此操作不会对实体执行。

操作执行结果

脚本结果
脚本结果名称 值选项
is_success is_success=False
is_success is_success=True
JSON 结果

如果未勾选“等待报告”复选框:

{
    "success": 1,
    "data": {
        "submission_timestamp": "2021-03-10 07:13:25",
        "task_uuid": "543b3a6ffd17001009d4e10cfa16c2c3",
        "expires": "2021-03-11 14:51:57"
    }
}

如果选中“等待报告”复选框:

{
    "success": 1,
    "data": {
        "activity_to_mitre_techniques": {
            "Search: Enumerates running processes": [
                {
                    "tactics": [
                        {
                            "id": "TA0007",
                            "name": "Discovery"
                        }
                    ],
                    "id": "T1057",
                    "name": "Process Discovery"
                }
            ],
            "Settings: Requiring rights elevation in browser": [
                {
                    "tactics": [
                        {
                            "id": "TA0005",
                            "name": "Defense Evasion"
                        }
                    ],
                    "id": "T1112",
                    "name": "Modify Registry"
                }
            ],
            "Autostart: Registering a scheduled task": [
                {
                    "tactics": [
                        {
                            "id": "TA0002",
                            "name": "Execution"
                        },
                        {
                            "id": "TA0003",
                            "name": "Persistence"
                        },
                        {
                            "id": "TA0004",
                            "name": "Privilege Escalation"
                        }
                    ],
                    "id": "T1053",
                    "name": "Scheduled Task"
                }
            ],
            "Memory: Tracking process identifiers through mutexes": [
                {
                    "tactics": [
                        {
                            "id": "TA0004",
                            "name": "Privilege Escalation"
                        },
                        {
                            "id": "TA0005",
                            "name": "Defense Evasion"
                        }
                    ],
                    "id": "T1055",
                    "name": "Process Injection"
                }
            ],
            "Autostart: Registering a new service at startup": [
                {
                    "tactics": [
                        {
                            "id": "TA0003",
                            "name": "Persistence"
                        },
                        {
                            "id": "TA0004",
                            "name": "Privilege Escalation"
                        }
                    ],
                    "id": "T1050",
                    "name": "New Service"
                }
            ],
            "Settings: Granting rights to debug or read memory of another process(SeDebugPrivilege)": [
                {
                    "tactics": [
                        {
                            "id": "TA0004",
                            "name": "Privilege Escalation"
                        },
                        {
                            "id": "TA0005",
                            "name": "Defense Evasion"
                        }
                    ],
                    "id": "T1134",
                    "name": "Access Token Manipulation"
                }
            ],
            "Search: Enumerates loaded modules": [
                {
                    "tactics": [
                        {
                            "id": "TA0007",
                            "name": "Discovery"
                        }
                    ],
                    "id": "T1057",
                    "name": "Process Discovery"
                }
            ]
        },
        "submission": "2021-03-14 04:51:20",
        "expires": "2021-03-16 03:30:53",
        "child_tasks": [
            {
                "task_uuid": "226d6278859c00102b480de14f0f1835",
                "score": 0,
                "tag": "File extracted from analysis subject",
                "parent_report_uuid": "aad392a7339d5b51VH8vSLfPk5llbmidNtkUBTCCayKfK6j5wX22"
            },
            {
                "task_uuid": "9894fee9908c001002eed0219fad3d28",
                "score": 0,
                "tag": "File extracted from analysis subject",
                "parent_report_uuid": "5749cedc8a1d6828hssTbnLGm6AOH3AUpefWyKY6nK8xCfvaZNEO"
            },
            {
                "task_uuid": "f543a862fe90001023e3a67cc2769a30",
                "score": 0,
                "tag": "URL extracted from analysis subject",
                "parent_report_uuid": "5749cedc8a1d6828hssTbnLGm6AOH3AUpefWyKY6nK8xCfvaZNEO"
            },
            {
                "task_uuid": "05efc0b74077001027ab691bdc7971ae",
                "score": 0,
                "tag": "network traffic analysis",
                "parent_report_uuid": "aad392a7339d5b51VH8vSLfPk5llbmidNtkUBTCCayKfK6j5wX22"
            },
            {
                "task_uuid": "390905dc316200102cd51e8880973a26",
                "score": 0,
                "tag": "URL extracted from analysis subject",
                "parent_report_uuid": "5749cedc8a1d6828hssTbnLGm6AOH3AUpefWyKY6nK8xCfvaZNEO"
            },
            {
                "task_uuid": "a3710e5d6a1400102540b44b56011019",
                "score": 0,
                "tag": "network traffic analysis",
                "parent_report_uuid": "5749cedc8a1d6828hssTbnLGm6AOH3AUpefWyKY6nK8xCfvaZNEO"
            },
            {
                "task_uuid": "c3a87f9a2f1b0010203b6049def1a1ac",
                "score": 0,
                "tag": "URL extracted from analysis subject",
                "parent_report_uuid": "5749cedc8a1d6828hssTbnLGm6AOH3AUpefWyKY6nK8xCfvaZNEO"
            },
            {
                "task_uuid": "5fb932bf8dfc00100fbb9f2c75e8a061",
                "score": 0,
                "tag": "URL extracted from analysis subject",
                "parent_report_uuid": "aad392a7339d5b51VH8vSLfPk5llbmidNtkUBTCCayKfK6j5wX22"
            }
        ],
        "reports": [
            {
                "relevance": 1.0,
                "report_uuid": "5749cedc8a1d6828hssTbnLGm6AOH3AUpefWyKY6nK8xCfvaZNEO",
                "report_versions": [
                    "ll-int-win",
                    "ll-win-timeline-based",
                    "ioc:ll",
                    "ioc:stix",
                    "ioc:openioc",
                    "ioc:openioc:tanium",
                    "ll-win-timeline-thread-based"
                ],
                "description": "Dynamic analysis on Microsoft Windows 10"
            },
            {
                "relevance": 0.0,
                "report_uuid": "d4672aa84d9aa966WyYQH1SwRbltbJ3IzDXGUf7fL8F9uQwLOs4T",
                "report_versions": [
                    "ll-static"
                ],
                "description": "Static analysis"
            },
            {
                "relevance": 1.0,
                "report_uuid": "aad392a7339d5b51VH8vSLfPk5llbmidNtkUBTCCayKfK6j5wX22",
                "report_versions": [
                    "ll-int-win",
                    "ll-win-timeline-based",
                    "ioc:ll",
                    "ioc:stix",
                    "ioc:openioc",
                    "ioc:openioc:tanium",
                    "ll-win-timeline-thread-based"
                ],
                "description": "Dynamic analysis on Microsoft Windows 7"
            }
        ],
        "submission_timestamp": "2021-03-15 06:37:17",
        "task_uuid": "8af81dd5b542001024d946e57d28c99b",
        "score": 39,
        "malicious_activity": [
            "Autostart: Registering a new service at startup",
            "Autostart: Registering a scheduled task",
            "Memory: Tracking process identifiers through mutexes",
            "Search: Enumerates loaded modules",
            "Search: Enumerates running processes",
            "Settings: Granting rights to debug or read memory of another process(SeDebugPrivilege)",
            "Settings: Requiring rights elevation in browser",
            "Steal: Targeting Windows Saved Credential"
        ],
        "analysis_subject": {
            "sha256": "3ed0fead30f80313e7fdb275652295108f8044da592f27aa7e98232bf40b4738",
            "sha1": "933b0903a87d1ec2c1b54e4608223f42168422c7",
            "mime_type": "application/x-pe-app-32bit-i386",
            "md5": "a6d2b2f3ff369137748ff40403606862"
        },
        "last_submission_timestamp": "2021-03-15 06:37:17"
    }
}
案例墙
结果类型 值/说明 类型
输出消息*

操作不应失败,也不应停止 playbook 执行:

  • 如果成功: "Successfully created analysis task for the file {0}".format(file)
  • 如果成功,并且提供了等待结果的复选框,则在操作完成后(提取结果): "Successfully fetched the analysis results for the file {0}".format(file)
  • 如果提供的文件路径不正确 (is_success=false): "Failed to create analysis task because the provided file path {0} is incorrect.".format(file)
  • 如果发生其他非严重错误 (is_success=false):“未能为网址 {0} 创建分析任务。Error is {1}".format(url,entity_identifier)

操作应失败并停止 playbook 执行:

  • 如果 API 凭据不正确:“无法使用提供的 API 密钥或令牌连接到 Lastline 服务。请检查您的配置。Error is {0}".format(exception.stacktrace)
  • 如果账号凭证不正确:“无法使用提供的账号连接到 Lastline 服务。请检查您的配置。Error is {0}".format(exception.stacktrace)
  • 如果出现其他严重错误:“Failed to connect to the Lastline service! 错误为 {0}”。format(exception.stacktrace)
常规
表

表名称:“{0} 分析结果”。

表列:

Submission_Timestamp

Latest_Submission_Timestamp

Results_Expiry_Timestamp

Analysis_Task_UUID

得分

Malicious_Activity

md5_hash

sha1_hash

sha256_hash

mime_type

常规
附件

fileName: lastline_file_analisys_full_report.json

fileContent:请求 5 的 JSON 响应

常规

搜索分析记录

说明

搜索 Lastline 已完成的分析任务历史记录。提交时,可以提供网址或 md5/sha1 格式的文件哈希。

参数

参数显示名称 类型 默认值 为必填项 说明
提交名称 字符串 不适用 否 要搜索的提交内容名称。可以是网址,也可以是 MD5 和 SHA1 格式的文件哈希。
提交类型 DDL 未指定 否 (可选)指定要搜索的提交类型,即 URL 或 FileHash。
回溯的小时数上限 整数 24 否 搜索已完成分析任务的时间范围
在最近 x 次扫描中搜索 整数 100 是 在 Any.Run 中执行的最后 x 次分析中搜索报告。
跳过前 x 次扫描 整数 0 否 跳过 Any.Run API 返回的前 x 次扫描。

运行时间

此操作不会对实体执行。

操作执行结果

脚本结果
脚本结果名称 值选项
is_success is_success=False
is_success is_success=True
JSON 结果
{
    "success": 1,
    "data": [
        {
            "username": "tip.labops@siemplify.co",
            "status": "finished",
            "task_subject_filename": null,
            "task_subject_sha1": "933b0903a87d1ec2c1b54e4608223f42168422c7",
            "task_uuid": "8af81dd5b542001024d946e57d28c99b",
            "task_subject_md5": "a6d2b2f3ff369137748ff40403606862",
            "task_subject_url": null,
            "task_start_time": "2021-03-15 06:37:18",
            "analysis_history_id": 711622656,
            "title": null,
            "score": 39
        },
        {
            "username": "tip.labops@siemplify.co",
            "status": "finished",
            "task_subject_filename": null,
            "task_subject_sha1": "933b0903a87d1ec2c1b54e4608223f42168422c7",
            "task_uuid": "8af81dd5b542001024d946e57d28c99b",
            "task_subject_md5": "a6d2b2f3ff369137748ff40403606862",
            "task_subject_url": null,
            "task_start_time": "2021-03-15 06:28:24",
            "analysis_history_id": 3856791660,
            "title": null,
            "score": 39
        },
案例墙
结果类型 值/说明 类型
输出消息*

操作不应失败,也不应停止 playbook 执行:

  • 如果成功并找到报告:“Found Lastline completed analysis tasks for the provided search parameters”。
  • 如果找不到报告:“未找到任何 Any.Run 报告。”

操作应失败并停止 playbook 执行:

  • 如果账号凭证不正确:“无法使用提供的账号连接到 Lastline 服务。请检查您的配置。Error is {0}".format(exception.stacktrace)
  • 如果出现其他严重错误:“Failed to connect to the Lastline service! 错误为 {0}”。format(exception.stacktrace)
常规
表

表名称:搜索结果

表列:

任务 UUID

md5

sha1

Sha256

网址

状态

提交者(用户名)

提交时间

常规

获取分析结果

说明

使用之前完成的分析任务结果丰富 Google SecOps FileHash 或网址实体。

参数

参数显示名称 类型 默认值 为必填项 说明
阈值 整数 70 是 如果实体的得分值高于指定阈值,则将实体标记为可疑。
在最近 x 次扫描中搜索 整数 25 是 在 Lastline 中执行的最后 x 次分析中搜索所提供实体的报告。
要创建分析洞见吗? 复选框 尚未核查 否 指定是否根据报告数据创建数据分析。

运行时间

此操作将在以下实体上运行:

  • 文件哈希(md-5、sha-1、sha-256)
  • 网址

操作执行结果

脚本结果
脚本结果名称 值选项
is_success is_success=False
is_success is_success=True
JSON 结果
{
    "success": 1,
    "data": {
        "submission": "2021-03-14 04:46:11",
        "expires": "2021-03-16 04:46:10",
        "task_uuid": "5801c22ce6b4001003e58377051920f2",
        "reports": [
            {
                "relevance": 1.0,
                "report_uuid": "36150b54987b7f8bIUnzQWg2UgKxu8qdz7caWKwqyWz1yyE1aFpa9g",
                "report_versions": [
                    "ll-pcap"
                ],
                "description": "Pcap analysis"
            },
            {
                "relevance": 1.0,
                "report_uuid": "a03998ee0d483efaRlYorEk0lbJUBcMXkYP1YfeGpQTufOFDWraR5Q",
                "report_versions": [
                    "ll-web"
                ],
                "description": "Dynamic analysis in instrumented Chrome browser"
            }
        ],
        "submission_timestamp": "2021-03-15 03:58:51",
        "child_tasks": [
            {
                "task_uuid": "772d23d8d59500100f87aac889c70ece",
                "score": 0,
                "tag": "network traffic analysis",
                "parent_report_uuid": "a03998ee0d483efaRlYorEk0lbJUBcMXkYP1YfeGpQTufOFDWraR5Q"
            }
        ],
        "score": 0,
        "malicious_activity": [
            "Info: A Domain / URL of high reputation was visited"
        ],
        "analysis_subject": {
            "url": "https://yahoo.com"
        },
        "last_submission_timestamp": "2021-03-15 03:58:51"
    }
}
实体丰富化

方法 1. 网址

扩充项字段名称 逻辑 - 适用情形
IsSuspicous 如果达到特定阈值,实体应标记为可疑。
Lastline.Submission_Timestamp 始终
Lastline.Latest_Submission_Timestamp 始终
Lastline.Results_Expiry_Timestamp 始终
Lastline.Analysis_Task_UUID 始终
Lastline.Score 始终
Lastline.Malicious_Activity 始终

方式 2:文件

扩充项字段名称 逻辑 - 适用情形
IsSuspicous 如果达到特定阈值,实体应标记为可疑。
Lastline.Submission_Timestamp 始终
Lastline.Latest_Submission_Timestamp 始终
Lastline.Results_Expiry_Timestamp 始终
Lastline.Analysis_Task_UUID 始终
Lastline.Score 始终
Lastline.Malicious_Activity 始终
Lastline.md5 始终
Lastline.sha1 始终
Lastline.sha256 始终
Lastline.mime\_type 始终
案例墙
结果类型 值/说明 类型
输出消息*

操作不应失败,也不应停止 playbook 执行:

  • 如果成功并提取了结果:“Successfully fetched the analysis results for the {0} {1}”.format(url_or_filehash, value)
  • 如果提供的网址或文件不正确 (is_success=false): "Failed to fetch the analysis results for the {0}".format(url_or_file)
  • 如果未找到任何内容 (is_success=false):“No previously completed analysis tasks were found based on the provided parameters for entity {0}”.format(url_or_hash)
  • 如果向操作提供了不受支持的实体 (is_success=false): "Entity type {0} is not supported by the action, only URL of Filehash are supported, skipping this entity type".format(entity.type)
  • 如果发生其他非严重错误 (is_success=false):“未能为网址 {0} 创建分析任务。Error is {1}".format(url,entity_identifier)

操作应失败并停止 playbook 执行:

  • 如果账号凭证不正确:“无法使用提供的账号连接到 Lastline 服务。请检查您的配置。Error is {0}".format(exception.stacktrace)
  • 如果出现其他严重错误:“Failed to connect to the Lastline service! 错误为 {0}”。format(exception.stacktrace)
常规
表格(针对网址)

表名称:“{0} 分析结果”。

表列:

Submission_Timestamp

Latest_Submission_Timestamp

Results_Expiry_Timestamp

Analysis_Task_UUID

得分

Malicious_Activity

常规
表(针对 FileHash)

表名称:“{0} 分析结果”。

表列:

Submission_Timestamp

Latest_Submission_Timestamp

Results_Expiry_Timestamp

Analysis_Task_UUID

得分

Malicious_Activity

md5_hash

sha1_hash

sha256_hash

mime_type

常规

需要更多帮助?获得社区成员和 Google SecOps 专业人士的解答。