Armis を Google SecOps と統合する

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

ユースケース

  1. 拡充アクションを実行します。
  2. アラートの取り込みを実行します。
  3. トリアージ アクション(アラート ステータスの更新)を実行します。

統合のパラメータ

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

パラメータ名 種類 デフォルト値 必須 説明
API ルート 文字列 ○ Armis API ルート
API Secret パスワード なし ○ Armis API シークレット
SSL を確認する チェックボックス オン ○ 有効になっている場合は、Armis サーバーへの接続用の SSL 証明書が有効であることを確認します。

Google SecOps で統合を構成する手順については、統合を構成するをご覧ください。

必要に応じて、後の段階で変更できます。統合インスタンスを構成すると、ハンドブックで使用できるようになります。複数のインスタンスの構成とサポートの詳細については、複数のインスタンスのサポートをご覧ください。

操作

アクションの詳細については、 デスクから保留中のアクションに対応すると手動アクションを実行するをご覧ください。

Ping

Armis への接続をテストします。

パラメータ

なし

実行

このアクションはエンティティを使用せず、必須入力パラメータもありません。

アクションの結果

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

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

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

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

成功しなかった場合: 「Armis サーバーに接続できませんでした。エラーは {0}」.format(exception.stacktrace)

一般

エンティティの拡充

Armis の情報を使用してエンティティを拡充します。サポートされるエンティティ: IP、MAC アドレス。

パラメータ

パラメータ名 種類 デフォルト値 必須 説明
エンドポイント インサイトを作成する チェックボックス オン ○ 有効にすると、アクションによってエンドポイントに関する情報を含む分析情報が作成されます。

実行

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

  • IP アドレス
  • MAC アドレス

アクションの結果

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

JSON の結果

{
    "accessSwitch": null,
    "category": "Computers",
    "dataSources": [
        {
            "firstSeen": "2021-03-07T04:04:22.562873+00:00",
            "lastSeen": "2021-03-07T04:04:22.562873+00:00",
            "name": "Example",
            "types": [
                "Asset & System Management",
                "Virtualization"
            ]
        },
        {
            "firstSeen": "2021-03-07T04:04:22.562873+00:00",
            "lastSeen": "2021-03-07T04:04:22.562873+00:00",
            "name": "Armis Smart Scanner",
            "types": [
                "Vulnerability Management"
            ]
        }
    ],
    "firstSeen": "2021-03-07T04:04:22.562873+00:00",
    "id": 1616,
    "ipAddress": "192.0.2.120",
    "ipv6": null,
    "lastSeen": "2021-03-21T08:05:40.244960+00:00",
    "macAddress": "01:23:45:ab:cd:ef",
    "manufacturer": "VMware",
    "model": "VMware Virtual Platform",
    "name": "Example",
    "operatingSystem": "CentOS",
    "operatingSystemVersion": "6.6",
    "purdueLevel": 4.0,
    "riskLevel": 5,
    "sensor": {
        "name": "North conference room",
        "type": "Physical Sensor"
    },
    "site": {
        "location": "Palo Alto",
        "name": "Palo Alto Offices"
    },
    "tags": [
        "Discover",
        "Example"
    ],
    "type": "Virtual Machines",
    "user": "",
    "visibility": "Full"
}

エンティティ拡充

拡充フィールド名 ロジック - 適用するタイミング
category JSON で利用可能な場合
id JSON で利用可能な場合
ipAddress JSON で利用可能な場合
macAddress JSON で利用可能な場合
name JSON で利用可能な場合
os JSON で利用可能な場合
purdue_level JSON で利用可能な場合
risk_level JSON で利用可能な場合
タグ JSON で利用可能な場合
type JSON で利用可能な場合
ユーザー JSON で利用可能な場合
visibility JSON で利用可能な場合
サイト JSON で利用可能な場合
リンク JSON で利用可能な場合
ケースウォール
結果のタイプ 説明 種類
出力メッセージ *

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

一部を拡充した場合(is_success = true): 「Armis を使用して次のエンティティを拡充しました:\n".format(entity.identifier)

一部が拡充されなかった場合(is_success = true): 「アクションで Armis を使用して次のエンティティを拡充できませんでした:\n".format(entity.identifier)

すべて拡充しなかった場合(is_success = false): 「拡充されたエンティティはありません」。

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

一般
エンティティ テーブル エンティティ

アラート接続を一覧表示する

Armis でアラートに関連する接続を一覧表示します。

パラメータ

パラメータ名 種類 デフォルト値 必須 説明
アラート ID Integer ○ 接続データを取得するアラートの ID を指定します。
取得する最も低い重大度 DDL

中

有効な値:

  • 低
  • 中
  • 高
× 接続を取得するときに使用する必要がある最も低い重大度を指定します。
返される最大接続数 Integer 50 × 返す接続の数を指定します。

実行

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

アクションの結果

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

JSON の結果

{
    "band": null,
    "channel": null,
    "dhcpAuthenticationDuration": null,
    "duration": 12339,
    "endTimestamp": "2021-03-18T20:19:31.562873+00:00",
    "id": 33355,
    "inboundTraffic": 12412512,
    "outboundTraffic": 19626489,
    "protocol": "Bluetooth",
    "radiusAuthenticationDuration": null,
    "risk": "Medium",
    "rssi": null,
    "sensor": {
        "name": "EXAMPLE",
        "type": "Switch"
    },
    "site": {
        "location": "Location",
        "name": "Location HQ"
    },
    "snr": null,
    "sourceId": 2097,
    "startTimestamp": "2021-03-18T16:53:52.562873+00:00",
    "targetId": 217,
    "title": "Connection between Example and user's iPhone",
    "totalAssociationDuration": null,
    "traffic": 32039001,
    "wlanAssociationDuration": null
}
ケースウォール
結果のタイプ 説明 種類
出力メッセージ *

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

200 でデータが利用可能な場合(is_success = true): 「Armis で指定された条件に基づいて、アラート {alertId} に関連する接続が正常に返されました。」

200 で、利用可能なデータがない場合(is_success=false):「Armis で指定された条件に基づいて、アラート {alertId} に関連する接続が見つかりませんでした。」

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

認証情報が誤っている、サーバーへの接続がないなどの致命的なエラーの場合、その他: 「アクション「アラート接続の一覧表示」の実行エラー。理由: {0}」.format(error.Stacktrace)

一般
Case Wall テーブル

名前: 利用可能なコミュニケーション

列:

  • タイトル
  • プロトコル
  • 重大度
  • 開始時刻
  • 終了時刻
全般

アラートのステータスを更新する

Armis でアラートのステータスを更新します。

パラメータ

パラメータ名 種類 デフォルト値 必須 説明
アラート ID Integer ○ ステータスを更新するアラートの ID を指定します。
ステータス DDL

未処理

値は次のいずれかです。

  • 未処理
  • 無効化済み
  • 解決済み
× アラートに設定するステータスを指定します。

実行

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

アクションの結果

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

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

200(is_success = true)の場合: 「Armis でアラート "{alert id}" のステータスが "{status}" に正常に更新されました。」

400(is_success=true)の場合: 「アラート "{alert id}" は Armis でステータス "{status}" をすでに持っています。」

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

認証情報が誤っている、サーバーへの接続がないなどの致命的なエラーの場合: "Error executing action "Update Alert Status". 理由: {0}」.format(error.Stacktrace)

404 の場合:「アクション「アラート ステータスの更新」の実行エラー。理由: アラート「{アラート ID}」が Armis で見つかりませんでした。

全般

コネクタ

Google SecOps でコネクタを構成する方法については、データを取り込む(コネクタ)をご覧ください。

Armis - アラート コネクタ

Armis から関連するアクティビティを含むアラートを取得します。

コネクタ パラメータ

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

パラメータ名 種類 デフォルト値 必須 説明
プロダクト フィールド名 文字列 alert_type ○

商品名が保存されるフィールドの名前。

デフォルト値は alert_type です。

商品名は主にマッピングに影響します。コネクタのマッピング プロセスを合理化して改善するため、デフォルト値 alert_type は、コードから参照されるフォールバック値に解決されます。このパラメータの無効な入力は、デフォルトでフォールバック値に解決されます。

イベント フィールド名 文字列 タイプ ○

イベント名(サブタイプ)を特定するフィールドの名前。

環境フィールド名 文字列 "" ×

環境名が保存されるフィールドの名前。

環境フィールドがない場合、コネクタはデフォルト値を使用します。

Environment Regex Pattern 文字列 .* ×

Environment Field Name フィールドで見つかった値に対して実行する正規表現パターン。このパラメータを使用すると、正規表現ロジックを使用して環境フィールドを操作できます。

デフォルト値 .* を使用して、必要な未加工の Environment Field Name 値を取得します。

正規表現パターンが null か空の場合、または環境値が null の場合、最終的な環境の結果はデフォルト環境になります。

スクリプトのタイムアウト(秒) 整数 180 ○

現在のスクリプトを実行する Python プロセスのタイムアウト上限(秒単位)。

API ルート 文字列 https:// ○ Armis インスタンスの API ルート。
API Secret パスワード なし ○ Armis アカウントの API Secret。
取得する最も低い重大度 低 低 × アラートの取得に使用される最も低い重大度。指定できる値: Low、Medium、High。
最大遡及時間 整数 1 ×

最初コネクタのイテレーションでアラートを取得するまでの時間(時間単位)。

このパラメータは、コネクタを初めて有効にした後の最初のコネクタ イテレーション、または期限切れのコネクタ タイムスタンプのフォールバック値に適用できます。

取得するアラートの最大数 Integer 10 × 1 回のコネクタの反復処理で処理するアラートの数。最大値は 1000 です。
Use whitelist as a blacklist チェックボックス オン ○

選択すると、コネクタは動的リストを拒否リストとして使用します。

SSL を確認する チェックボックス オフ ○ 選択すると、Armis サーバーに接続するときに SSL 証明書が検証されます。
プロキシ サーバーのアドレス 文字列 いいえ 使用するプロキシ サーバーのアドレス。
プロキシのユーザー名 文字列 いいえ 認証に使用するプロキシのユーザー名。
プロキシ パスワード パスワード いいえ 認証に使用するプロキシ パスワード。

コネクタルール

コネクタはプロキシをサポートしています。

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