Illusive Networks

統合バージョン: 3.0

プロダクトのユースケース

  1. アクティブなアクションを実行する - フォレンジック スキャンを実行する、エンティティを拡充する、欺瞞ユーザー/サーバーを追加/削除する。
  2. インシデントを Simplify に取り込みます。

Google Security Operations で Illusive Networks の統合を構成する

Google SecOps で統合を構成する方法について詳しくは、統合を構成するをご覧ください。

統合のパラメータ

次のパラメータを使用して統合を構成します。

パラメータの表示名 タイプ デフォルト値 必須 Description
API ルート 文字列 http://x.x.x.x はい Illusive Networks インスタンスの API ルート。
API キー パスワード なし はい

Illusive Networks の API キー。
注: 文字列「Basic」は値の一部にしないでください。

CA 証明書ファイル 文字列 誤り Base64 でエンコードされた CA 証明書ファイル。
SSL を確認 チェックボックス オン はい 有効になっている場合は、Illusive Networks サーバーへの接続用の SSL 証明書が有効であることを確認します。

API キーの生成方法

  1. Illusive Networks Console の [設定] セクションに移動します。
  2. [全般] セクションで、[API キー] までスクロールします。
  3. [Add Key] ボタンを押します。
  4. すべての権限を API キーに追加することをおすすめします。
  5. 指定された文字列から、「Basic」という文字列以外のすべてをコピーする必要があります。
  6. この値を Google SecOps 統合の [API Key] パラメータに入力します。

レート制限を更新する方法

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

成功した場合: 「指定された接続パラメータを使用して Illusive Networks サーバーに正常に接続しました。」

成功しなかった場合(失敗): - Illusive Networks サーバーへの接続に失敗しました。エラーは {0}」.format(exception.stacktrace)

一般

エンティティの拡充

説明

Illusive Networks の情報を使用してエンティティを拡充します。サポートされるエンティティ: ホスト名。

パラメータ

パラメータの表示名 タイプ デフォルト値 必須 説明
なし

実行

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

アクションの結果

スクリプトの結果
スクリプトの結果名 値のオプション
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 で利用可能な場合(ホスト情報)
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

アクションが失敗したり、ハンドブックの実行が停止したりすることはありません。
少なくとも 1 つのデータが利用可能な場合(is_success = true):「Illusive Networks を使用して次のエンティティを拡充しました: \n {entity.identifier}。」

少なくとも 1 つのデータがない場合(is_success = true): 「アクションは、Illusive Networks を使用して次のエンティティを拡充できませんでした: \n {entity.identifier}」。

すべてのデータが利用できない場合(is_success = false): 「エンティティは拡充されませんでした。」

アクションが失敗し、ハンドブックの実行が停止します:
認証情報が誤っているなどの致命的なエラーで、サーバーへの接続がない場合、その他: 「"エンティティの拡充" アクションの実行中にエラーが発生しました。理由: {0}''.format(error.Stacktrace)

429 ステータス コードの場合:「アクション「エンティティの拡充」の実行エラー。理由: レート上限エラー。レート制限を引き上げる方法については、ドキュメントをご覧ください。」

全般
Case Wall テーブル

名前: {entity.identifier}

列は Key と Value の 2 つのみになります。

エンティティ

フォレンジック スキャンを実行する

説明

Illusive Networks のエンドポイントでフォレンジック スキャンを実行します。IP エンティティとホスト名エンティティで動作します。

パラメータ

パラメータの表示名 タイプ デフォルト値 必須 説明
システム情報を含める チェックボックス オン はい 有効にすると、アクションでシステム情報が返されます。
プリフェッチ ファイルの情報を含める チェックボックス オン はい 有効にすると、アクションでプリフェッチ ファイルに関する情報が返されます。
プログラムの追加と削除の情報を含める チェックボックス オン はい 有効にすると、アクションでプログラムの追加と削除に関する情報が返されます。
スタートアップ プロセス情報を含める チェックボックス オン はい 有効にすると、アクションでスタートアップ プロセスに関する情報が返されます。
実行中のプロセス情報を含める チェックボックス オン はい 有効にすると、アクションで実行中のプロセスに関する情報が返されます。
ユーザー支援プログラムの情報を含める チェックボックス オン はい 有効にすると、アクションでユーザー アシスト プログラムに関する情報が返されます。
Powershell の履歴情報を含める チェックボックス オン はい 有効にすると、アクションで PowerShell の履歴に関する情報が返されます。

返されるアイテムの最大数

Integer 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 で利用可能な場合(ホスト情報)
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

アクションが失敗したり、ハンドブックの実行が停止したりすることはありません。
少なくとも 1 つで正常に実行された場合(is_success = true): 「Illusive Networks の次のエンドポイントでフォレンジック スキャンが正常に実行されました: {entity.identifier}」

少なくとも 1 つで成功しなかった場合: 「アクションは、次のエンドポイントのフォレンジック スキャンから情報を取得できませんでした: {entity.identifier}」

すべてで成功しなかった場合: 「指定されたエンドポイントでフォレンジック情報が見つかりませんでした。」

非同期メッセージ: 「次のエンドポイントでフォレンジック スキャンを開始しました: {エンティティ ID}。\n

次のエンドポイントでフォレンジック スキャンが完了しました。」

アクションが失敗し、ハンドブックの実行が停止します:
認証情報が間違っている、サーバーに接続できない、その他など、致命的なエラーが発生した場合:「アクション「フォレンジック スキャンの実行」の実行エラー。理由: {0}''.format(error.Stacktrace)

「... を含める」パラメータが有効になっていない場合:「アクション「フォレンジック スキャンを実行」の実行エラー。理由: 「Include ...」パラメータの少なくとも 1 つを有効にする必要があります。

全般
Case Wall テーブルのホスト情報

名前: {entity.identifier}

列は Key と Value の 2 つのみになります。

エンティティ
Case Wall テーブルの Prefetch_Info

名前: 「{entity.identifier}: プリフェッチ ファイル情報」

列:

ファイル名

最終実行時間

ファイルの変更日時

プリフェッチ ファイル名

全般

Case Wall テーブル

INSTALLED_PROGRAMS_INFO

名前: 「{entity.identifier}: プログラムの追加と削除の情報」

列:

表示名

ファイル名

全般

Case Wall テーブル

STARTUP_PROCESSES

名前: "{entity.identifier}: Startup Processes"

列:

名前

コマンド

場所

ユーザー

全般

Case Wall テーブル

RUNNING_PROCESSES

名前: "{entity.identifier}: 実行中のプロセス"

列:

ユーザー

管理者権限

コマンド

プロセス ID

プロセス名

開始時刻

全般

Case Wall テーブル

USER_ASSIST_INFO

名前: 「{entity.identifier}: ユーザー アシスト プログラム情報」

列:

ファイル名

ユーザー名

最終使用日

****

Case Wall テーブル

POWER_SHELL_HISTORY

名前: 「{entity.identifier}: Powershell History」

列:

ユーザー名

コマンド

誤解を招く可能性のある商品アイテムのリスト

説明

Illusive Networks で利用可能な欺瞞アイテムを一覧表示します。

パラメータ

パラメータの表示名 タイプ デフォルト値 必須 説明
欺瞞的なタイプ DDL

すべて

有効な値:

すべて

ユーザーのみ

サーバーのみ

はい どのような不正なアイテムを返すかを指定します。
欺瞞的な状態 DDL

すべて

有効な値:

すべて

承認済みのみ、候補のみ

はい 状態に基づいて、どのような不正なアイテムを返すかを指定します。
返されるアイテムの最大数 Integer 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"
        }
    ]
}
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

アクションが失敗したり、ハンドブックの実行が停止したりすることはありません。
200 でデータが利用可能な場合(is_success = true): 「Illusive Networks から利用可能な欺瞞アイテムが正常に返されました。」

200 でデータが利用できない場合(is_success=false)「Illusive Networks で指定された条件に基づく不正なアイテムに関するデータが見つかりませんでした。」

アクションが失敗し、ハンドブックの実行が停止します:
認証情報が間違っている、サーバーに接続できない、その他など、致命的なエラーが発生した場合:「アクション「欺瞞的なアイテムの一覧表示」の実行エラー。理由: {0}」.format(error.Stacktrace)

一般
Case Wall テーブル

名前: 「Deceptive Users」(不正なユーザー)

列:

ユーザー名

パスワード

ドメイン

ポリシー

AD ユーザー

アクティブな

状態

全般
Case Wall テーブル

名前: 「Deceptive Servers」

列:

ホスト

サービス

ポリシー

AD サーバー

状態

全般

Add Deceptive User(不正なユーザーを追加)

説明

Illusive Networks で欺瞞的なユーザーを追加します。

パラメータ

Name デフォルト値 必須 説明
ユーザー名 なし はい 新しい不正なユーザーのユーザー名を指定します。
パスワード なし はい 新しい不正なユーザーのパスワードを指定します。
DNS ドメイン なし いいえ 新しい不正なユーザーのドメイン名を指定します。
ポリシー名 なし いいえ 新しい不正なユーザーに適用する必要があるポリシーのカンマ区切りのリストを指定します。何も指定しないと、アクションではデフォルトですべてのポリシーが使用されます。

アクションの結果

スクリプトの結果
スクリプトの結果名 値のオプション
is_success is_success=False
is_success is_success=True
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

成功(is_success=true)→ Illusive Networks に欺瞞的なユーザーが正常に追加されました。

ケース 1. User Already Exists(失敗) - アクション「{アクション名}」の実行中にエラーが発生しました。理由: 誤解を招くユーザー「{username}」はすでに存在します。

ケース 2. 400 ステータス コード(失敗) - アクション「{アクション名}」の実行中にエラーが発生しました。理由: {エラー メッセージ}。

ケース 3. 一般的なエラー(失敗) - アクション「{action name}」の実行中にエラーが発生しました。理由: {エラー トレースバック}。

全般

Remove Deceptive User(不正なユーザーを削除)

説明

Illusive Networks から不正なユーザーを削除します。

パラメータ

Name デフォルト値 必須 説明
ユーザー名 なし はい 削除する必要がある不正なユーザーのユーザー名を指定します。

アクションの結果

スクリプトの結果
スクリプトの結果名 値のオプション
is_success is_success=False
is_success is_success=True
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

成功 → Illusive Networks で不正なユーザーを削除しました。

ケース 1. ユーザーが存在しない(is_success=false)- アクションは、不正なユーザー「{username}」を削除できませんでした。理由: 偽装ユーザー「{username}」が存在しません。

ケース 2. 一般的なエラー(失敗)- アクション「{action name}」の実行中にエラーが発生しました。理由: {エラー トレースバック}。

全般

Add Deceptive Server(欺瞞的なサーバーを追加)

説明

Illusive Networks に欺瞞サーバーを追加します。

パラメータ

Name デフォルト値 必須 説明
サーバー名 なし はい 新しい欺瞞サーバーの名前を指定します。
Service のタイプ DB はい 新しい欺瞞サーバーのサービスタイプのカンマ区切りリストを指定します。
ポリシー名 いいえ 新しい欺瞞サーバーに適用する必要があるポリシーのカンマ区切りのリストを指定します。何も指定しないと、アクションではデフォルトですべてのポリシーが使用されます。

アクションの結果

スクリプトの結果
スクリプトの結果名 値のオプション
is_success is_success=False
is_success is_success=True
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

成功(is_success=true)→ Illusive Networks に欺瞞サーバーが正常に追加されました。

ケース 1. Server Already Exists(失敗)- アクション「{アクション名}」の実行中にエラーが発生しました。理由: 欺瞞的なサーバー「{サーバー名}」はすでに存在します。

ケース 2. ステータス 400(失敗)- アクション「{action name}」の実行中にエラーが発生しました。理由: {エラー メッセージ}。

ケース 3. 一般的なエラー - アクション「{action name}」の実行中にエラーが発生しました。理由: {エラー トレースバック}。

全般

欺瞞的なサーバーを削除する

説明

Illusive Networks から欺瞞サーバーを削除します。

パラメータ

Name デフォルト値 必須 説明
サーバー名 なし はい 削除する必要がある不正なサーバーの名前を指定します。

アクションの結果

スクリプトの結果
スクリプトの結果名 値のオプション
is_success is_success=False
is_success is_success=True
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

成功 → Illusive Networks で不正なサーバーを削除しました。

ケース 1. サーバーが存在しない(is_success=false)- アクションは、不正なサーバー「{サーバー名}」を削除できませんでした。理由: 詐欺的なサーバー「{サーバー名}」が存在しません。

ケース 2. 一般的なエラー - アクション「{action name}」の実行中にエラーが発生しました。理由: {エラー トレースバック}。

全般

コネクタ

Illusive Networks - インシデント コネクタ

説明

Illusive Networks から関連するフォレンジック タイムラインを含むインシデントを取得します。

Google SecOps で Illusive Networks - インシデント コネクタを構成する

Google SecOps でコネクタを構成する方法の詳細については、コネクタの構成をご覧ください。

コネクタ パラメータ

次のパラメータを使用してコネクタを構成します。

パラメータの表示名 Type> デフォルト値 必須 説明
プロダクト フィールド名 文字列 プロダクト名 ソース フィールド名を入力してプロダクト フィールド名を取得します。
イベント フィールド名 文字列 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 いいえ インシデントを取得した時点からの経過時間数。
取得する最大インシデント数 Integer 10 いいえ 1 回のコネクタのイテレーションで処理するインシデントの数。最大値は 1,000 です。
許可リストを拒否リストとして使用 チェックボックス オン はい 有効にすると、許可リストが拒否リストとして使用されます。
SSL を確認 チェックボックス オフ はい 有効になっている場合は、Illusive Networks サーバーへの接続用の SSL 証明書が有効であることを確認します。
CA 証明書ファイル 文字列 なし いいえ Base64 でエンコードされた CA 証明書ファイル。
プロキシ サーバーのアドレス 文字列 なし いいえ 使用するプロキシ サーバーのアドレス。
プロキシのユーザー名 文字列 なし いいえ 認証に使用するプロキシのユーザー名。
プロキシ パスワード パスワード なし いいえ 認証に使用するプロキシ パスワード。

コネクタ ルール

プロキシのサポート

コネクタでプロキシがサポートされます。

さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。