Lastline

このドキュメントでは、Lastline を Google SecOps と統合する方法について説明します。

ユースケース

URL またはファイル オブジェクトの動的分析。

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
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。

  • 成功した場合:「指定された接続パラメータで Lastine サービスに正常に接続しました。」

アクションが失敗し、ハンドブックの実行が停止します。

  • アカウントの認証情報が正しくない場合:「指定されたアカウントで Lastline サービスに接続できませんでした。構成を確認してください。エラーは {0}」.format(exception.stacktrace)

  • その他の重大なエラーの場合:「Lastline サービスへの接続に失敗しました。エラーは {0}」.format(exception.stacktrace)
全般

URL を送信

説明

指定された URL の分析タスクを送信します。

パラメータ

パラメータの表示名 種類 デフォルト値 必須 説明
分析対象の URL 文字列 なし ○ 分析する URL を指定します。
レポートを待つ チェックボックス オン いいえ アクションがレポートの作成を待機するかどうかを指定します。スキャンが完了すると、後で [Get Analysis Results] アクションを使用してレポートを取得することもできます。

実行

このアクションはエンティティに対しては実行されません。

アクションの結果

スクリプトの結果
スクリプトの結果名 値のオプション
is_success is_success=False
is_success is_success=True

JSON の結果

[Wait for the report] チェックボックスがオンになっていない場合:

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

[Wait for the report] チェックボックスがオンになっている場合:

{
    "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"
    }
}
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。

  • 成功した場合: 「URL {0} の分析タスクが正常に作成されました」.format(url)
  • 成功し、結果を待つチェックボックスが指定された場合、アクションが完了した後(結果を取得): 「URL {0} の分析結果を正常に取得しました」.format(url)
  • 指定された URL が正しくない場合(is_success=false):「指定された URL {0} が正しくないため、分析タスクを作成できませんでした。」.format(url)
  • 他の重大でないエラーが発生した場合(is_success=false):「URL {0} の分析タスクを作成できませんでした。エラー: {1}」.format(url,entity_identifier)

アクションが失敗し、ハンドブックの実行が停止します。

  • API 認証情報が正しくない場合: 「指定された API キーまたはトークンを使用して Lastline サービスに接続できませんでした。構成を確認してください。エラーは {0} です。」format(exception.stacktrace)
  • アカウントの認証情報が正しくない場合:「指定されたアカウントで Lastline サービスに接続できませんでした。構成を確認してください。エラーは {0} です。」format(exception.stacktrace)
  • その他の重大なエラーの場合:「Lastline サービスへの接続に失敗しました。エラーは {0}」.format(exception.stacktrace)
一般
テーブル

テーブル名:「{0} 分析結果」。

テーブル列:

Submission_Timestamp

Latest_Submission_Timestamp

Results_Expiry_Timestamp

Analysis_Task_UUID

スコア

Malicious_Activity

全般

ファイルの送信

説明

指定されたファイルの分析タスクを送信します。

パラメータ

パラメータの表示名 種類 デフォルト値 必須 説明
ファイルパス 文字列 なし ○ 分析するファイルのフルパスを指定します。
レポートを待つ チェックボックス オン いいえ アクションがレポートの作成を待機するかどうかを指定します。スキャンが完了すると、後で [Get Analysis Results] アクションを使用してレポートを取得することもできます。

実行

このアクションはエンティティに対しては実行されません。

アクションの結果

スクリプトの結果
スクリプトの結果名 値のオプション
is_success is_success=False
is_success is_success=True
JSON の結果

[Wait for the report] チェックボックスがオンになっていない場合:

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

[Wait for the report] チェックボックスがオンになっている場合:

{
    "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"
    }
}
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。

  • 成功した場合: 「ファイル {0} の分析タスクが正常に作成されました」.format(file)
  • 成功し、結果を待機するチェックボックスがオンになっている場合、アクションが完了した後(結果を取得): 「ファイル {0} の分析結果を正常に取得しました」.format(file)
  • 指定されたファイルパスが正しくない場合(is_success=false):「指定されたファイルパス {0} が正しくないため、分析タスクを作成できませんでした。」.format(file)
  • 他の重大でないエラーが発生した場合(is_success=false):「URL {0} の分析タスクを作成できませんでした。エラー: {1}」.format(url,entity_identifier)

アクションが失敗し、ハンドブックの実行が停止します。

  • API 認証情報が正しくない場合: 「指定された API キーまたはトークンを使用して Lastline サービスに接続できませんでした。構成を確認してください。エラーは {0} です。」format(exception.stacktrace)
  • アカウントの認証情報が正しくない場合:「指定されたアカウントで Lastline サービスに接続できませんでした。構成を確認してください。エラーは {0} です。」format(exception.stacktrace)
  • その他の重大なエラーの場合:「Lastline サービスへの接続に失敗しました。エラーは {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 の完了した分析タスクの履歴を検索します。送信には、URL またはファイルハッシュ(md5 または sha1 形式)を指定できます。

パラメータ

パラメータの表示名 種類 デフォルト値 必須 説明
送信名 文字列 なし いいえ 検索する提出物の名前。URL またはファイルハッシュ(MD5 形式または SHA1 形式)を指定できます。
送信タイプ DDL 指定なし いいえ 必要に応じて、検索する送信タイプ(URL または FileHash)を指定します。
最大遡及時間 整数 24 いいえ 完了した分析タスクを検索する期間
過去 x 回のスキャンを検索 Integer 100 ○ Any.Run で実行された過去 x 回の分析でレポートを検索します。
最初の x 回のスキャンをスキップ Integer 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
        },
Case Wall
結果のタイプ 値 / 説明 種類
出力メッセージ *

アクションが失敗したり、Playbook の実行が停止したりすることはありません。

  • 成功してレポートが見つかった場合:「指定された検索パラメータに対して Lastline の完了した分析タスクが見つかりました。」
  • レポートが見つからなかった場合: 「Any.Run レポートが見つかりませんでした。」

アクションが失敗し、Playbook の実行が停止します。

  • アカウントの認証情報が正しくない場合:「指定されたアカウントで Lastline サービスに接続できませんでした。構成を確認してください。エラーは {0} です。」format(exception.stacktrace)
  • その他の重大なエラーの場合:「Lastline サービスへの接続に失敗しました。エラーは {0}」.format(exception.stacktrace)
一般
テーブル

テーブル名: 検索結果

テーブル列:

タスク UUID

md5

sha1

SHA256

URL

ステータス

送信者(ユーザー名)

送信日時

全般

分析結果を取得する

説明

以前に完了した分析タスクの結果を使用して、Google SecOps の FileHash エンティティまたは URL エンティティを拡充します。

パラメータ

パラメータの表示名 種類 デフォルト値 必須 説明
しきい値 Integer 70 ○ エンティティのスコア値が指定されたしきい値を超えている場合、エンティティを不審としてマークします。
過去 x 回のスキャンを検索 Integer 25 ○ Lastline で実行された過去 x 回の分析で、指定されたエンティティのレポートを検索します。
インサイトを作成しますか? チェックボックス オフ いいえ レポートデータに基づいて分析情報を作成するかどうかを指定します。

実行

このアクションは次のエンティティに対して実行されます。

  • ファイル ハッシュ(md-5、sha-1、sha-256)
  • URL

アクションの結果

スクリプトの結果
スクリプトの結果名 値のオプション
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. URL

拡充フィールド名 ロジック - 適用するタイミング
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 常に
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。

  • 成功し、結果を取得した場合: 「{0} {1} の分析結果を正常に取得しました」.format(url_or_filehash, value)
  • URL またはファイルが正しくない場合(is_success=false):「{0} の分析結果を取得できませんでした」.format(url_or_file)
  • 何も見つからなかった場合(is_success=false): 「エンティティ {0} に指定されたパラメータに基づいて、以前に完了した分析タスクが見つかりませんでした」.format(url_or_hash)
  • サポートされていないエンティティがアクションに指定された場合(is_success=false): 「エンティティ タイプ {0} はアクションでサポートされていません。Filehash の URL のみがサポートされています。このエンティティ タイプをスキップします」.format(entity.type)
  • 他の重大でないエラーが発生した場合(is_success=false):「URL {0} の分析タスクを作成できませんでした。エラー: {1}」.format(url,entity_identifier)

アクションが失敗し、ハンドブックの実行が停止します。

  • アカウントの認証情報が正しくない場合:「指定されたアカウントで Lastline サービスに接続できませんでした。構成を確認してください。エラーは {0} です。」format(exception.stacktrace)
  • その他の重大なエラーの場合:「Lastline サービスへの接続に失敗しました。エラーは {0}」.format(exception.stacktrace)
全般
テーブル(URL 用)

テーブル名:「{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 のプロフェッショナルから回答を得ることができます。