X-Force

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

Google Security Operations と連携するように X-Force を構成する

  1. 個人用の API キーを取得するには、有効な IBM ID を使用して IBM X-Force Exchange ウェブサイトにログインしてください。

  2. 画面の右上にあるユーザー プロフィールを表示し、下の [設定] ページに移動して、新しい API キーとパスワードのペアを作成します。

  3. [設定] ページで [API アクセス] をクリックし、[API キーの生成] セクションの [生成] ボタンをクリックします。

Google SecOps で X-Force インテグレーションを構成する

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

操作

ハッシュ情報を取得する

説明

ハッシュ情報について X-Force にクエリします。

パラメータ

パラメータ 種類 デフォルト値 説明
しきい値 文字列 なし しきい値は、低、中、高のいずれかになります。

ユースケース

なし

実行

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

アクションの結果

エンティティ拡充
拡充フィールド名 ロジック - 適用するタイミング
不正なソフトウェア JSON の結果に存在する場合に返す
tags JSON の結果に存在する場合に返す
分析情報

エンティティのリスクスコアがしきい値を超えると、ハッシュがマルウェアとしてマークされていることを警告する分析情報が追加されます。

スクリプトの結果
スクリプトの結果名 値のオプション 例
is_risk 正しい / 誤り is_risk:False
JSON の結果
[
    {
        "EntityResult":
        {
            "malware":
            {
                "hash": "0x474B9CCF5AB9D72CA8A333889BBB34F0",
                "family": ["tsunami"],
                "origins":
                {
                    "downloadServers": {},
                    "subjects": {},
                    "CnCServers":
                    {
                        "count": 1,
                        "rows":
                        [{
                            "count": 483,
                            "origin": "CnC",
                            "domain": "pc-guard.net",
                            "filepath": "v.html",
                            "ip": "1.1.1.1",
                            "uri": "http://pc-guard.net/v.html",
                            "lastseen": "2014-10-20T23:19:00Z",
                            "md5": "474B9CCF5AB9D72CA8A333889BBB34F",
                            "type": "CnC",
                            "firstseen": "2014-10-20T23:19:00Z",
                            "schema": "http"
                        }]},
                    "emails": {},
                    "external":
                    {
                        "detectionCoverage": 46,
                        "family": ["heuristic", "trojan"]
                    }},
                "created": "2014-10-20T23:19:00Z",
                "familyMembers":
                {
                    "tsunami":
                    {
                        "count": 61
                    }},
                "md5": "0x474B9CCF5AB9D72CA8A333889BBB34F0",
                "type": "md5",
                "risk": "high"
            },
            "tags": []
        },
        "Entity": "474B9CCF5AB9D72CA8A333889BBB34F0"
    }
]

カテゴリ別に IP を取得する

説明

カテゴリ別に IP を取得します。

パラメータ

パラメータ 種類 デフォルト値 説明
カテゴリ 文字列 なし IP のカテゴリ。

ユースケース

なし

実行

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

アクションの結果

エンティティ拡充

なし

分析情報

なし

スクリプトの結果
スクリプトの結果名 値のオプション 例
is_success True/False is_success:False
JSON の結果
[
    {
        "ip": "string",
        "score": "integer",
        "created": "string"
    }
]

IP 情報を取得する

説明

X-Force に IP 情報をクエリします。

パラメータ

パラメータ 種類 デフォルト値 説明
しきい値 文字列 なし しきい値は整数で指定する必要があります(例: 3)。

ユースケース

なし

実行

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

アクションの結果

エンティティ拡充

エンティティは、しきい値を超えると、不審としてマークされます。それ以外の場合は、False です。

拡充フィールド名 ロジック - 適用するタイミング
subnets JSON の結果に存在する場合に返す
reasonDescription JSON の結果に存在する場合に返す
tags JSON の結果に存在する場合に返す
ip JSON の結果に存在する場合に返す
reason JSON の結果に存在する場合に返す
スコア JSON の結果に存在する場合に返す
categoryDescriptions JSON の結果に存在する場合に返す
猫 JSON の結果に存在する場合に返す
geo JSON の結果に存在する場合に返す
履歴 JSON の結果に存在する場合に返す
分析情報

リスクスコアがしきい値を超えた場合は、分析情報を追加して、疑わしいとマークします。

スクリプトの結果
スクリプトの結果名 値のオプション 例
is_risky 正しい / 誤り is_risky:False
JSON の結果
[
    {
        "EntityResult":
        {
            "subnets":
            [{
                "subnet": "1.1.1.1/14",
                "reasonDescription": "One of the five RIRs announced a (new) location mapping of the IP.",
                "created": "2017-10-18T06:23:00.000Z",
                "ip": "1.1.1.1",
                "asns":
                {
                    "8359":
                    {
                        "Company": "MTS, RU",
                        "cidr": 14
                    }},
                "reason": "Regional Internet Registry",
                "score": 1,
                "categoryDescriptions": {},
                "cats": {},
                "geo":
                {
                    "country": "Russia",
                    "countrycode": "RU"
                }}, {
                    "subnet": "1.1.1.1/20",
                    "reasonDescription": "Based on statistical DNS analysis.",
                    "created": "2014-01-22T19:56:00.000Z",
                    "ip": "1.1.1.1",
                    "reason": "DNS heuristics",
                    "score": 1,
                    "categoryDescriptions":
                    {
                        "Dynamic IPs": "This category contains IP addresses of dialup hosts and DSL lines."
                    },
                    "cats":
                    {
                        "Dynamic IPs": 71
                    }}],
            "reasonDescription": "One of the five RIRs announced a (new) location mapping of the IP.",
            "tags": [],
            "ip": "1.1.1.1",
            "reason": "Regional Internet Registry",
            "score": 1,
            "categoryDescriptions":
            {
                "Dynamic IPs": "This category contains IP addresses of dialup hosts and DSL lines."
            },
            "cats":
            {
                "Dynamic IPs": 71
            },
            "geo":
            {
                "country": "Russia",
                "countrycode": "RU"
            },
            "history":
            [{
                "reasonDescription": "One of the five RIRs announced a (new) location mapping of the IP.",
                "created": "2012-03-22T07:26:00.000Z",
                "ip": "1.1.1.1/14",
                "reason": "Regional Internet Registry",
                "score": 1,
                "categoryDescriptions": {},
                "cats": {},
                "geo":
                {
                    "country": "Russia",
                    "countrycode": "RU"
                }}, {
                    "reasonDescription": "Based on statistical DNS analysis.",
                    "created": "2012-04-13T13:34:00.000Z",
                    "ip": "1.1.1.1/14",
                    "reason": "DNS heuristics",
                    "score": 1,
                    "categoryDescriptions":
                    {
                        "Dynamic IPs": "This category contains IP addresses of dialup hosts and DSL lines."
                    },
                    "cats":
                    {
                        "Dynamic IPs": 100
                    },
                    "geo":
                    {
                        "country": "Russia",
                        "countrycode": "RU"
                    }}, {
                        "reasonDescription": "Based on statistical DNS analysis.",
                        "created": "2014-01-22T19:56:00.000Z",
                        "ip": "1.1.1.1/20",
                        "reason": "DNS heuristics",
                        "score": 1,
                        "categoryDescriptions":
                        {
                            "Dynamic IPs\": "This category contains IP addresses of dialup hosts and DSL lines."
                        },
                        "cats":
                        {
                            "Dynamic IPs": 71
                        },
                        "geo":
                        {
                            "country": "Russia",
                            "countrycode": "RU"
                        }}]},
        "Entity": "1.1.1.1"
    }
]

IP マルウェアを取得する

説明

IP アドレスに関連付けられているマルウェアについて X-Force にクエリを実行します。

パラメータ

パラメータ 種類 デフォルト値 説明
しきい値 文字列 なし しきい値は整数で指定する必要があります(例: 3)。

ユースケース

なし

実行

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

アクションの結果

エンティティ拡充

malware_count が 0 より大きい場合、エンティティは不審としてマークされます。

拡充フィールド名 ロジック - 適用するタイミング
不正なソフトウェア JSON の結果に存在する場合に返す
分析情報

エンティティがマルウェアに関連付けられているという警告の分析情報を追加し、malware_count > 0 の場合は不審としてマークします。

スクリプトの結果
スクリプトの結果名 値のオプション 例
is_malware 正しい / 誤り is_malware:False
JSON の結果
[
    {
        "EntityResult":
        {
            "malware":
            [{
                "count": 13,
                "origin": "CnC",
                "domain": "l33t-milf.info",
                "last": "2016-10-29T06:31:00Z",
                "family": ["kasidet"],
                "filepath": "dom/tasks.php",
                "ip": "0x00000000000000000000ffff08080808",
                "uri": "http://example.com/dom/tasks.php",
                "first": "2016-10-29T06:31:00Z",
                "host": "dom",
                "lastseen": "2016-10-29T06:31:00Z",
                "md5": "4C10F74CE20328B7CC4207245BC9D725",
                "type": "CnC",
                "firstseen": "2016-10-29T06:31:00Z",
                "schema": "http"
            }]},
        "Entity": "1.1.1.1"
    }
]

URL 情報を取得する

説明

X-Force に URL 情報をクエリします。

パラメータ

パラメータ 種類 デフォルト値 説明
しきい値 文字列 なし しきい値は整数で指定してください(例: 3)。

ユースケース

なし

実行

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

アクションの結果

エンティティ拡充

エンティティは、しきい値を超えると、不審としてマークされます。それ以外の場合は、False です。

拡充フィールド名 ロジック - 適用するタイミング
スコアが JSON の結果に存在する場合に返す
結果 JSON の結果に存在する場合に返す
tags JSON の結果に存在する場合に返す
分析情報

リスクスコアがしきい値を超えた場合は、警告の分析情報を追加して、不審としてマークします。

スクリプトの結果
スクリプトの結果名 値のオプション 例
is_risk 正しい / 誤り is_risk:False
JSON の結果
[
    {
        "EntityResult":
        {
            "associated":
            [{
                "url": "markossolomon.com",
                "cats": {},
                "score": null,
                "categoryDescriptions": {}
            }],
            "result":
            {
                "url": "markossolomon.com/f1q7qx.php",
                "cats":
                {
                    "Botnet Command and Control Server": true
                },
                "score": 10,
                "categoryDescriptions":
                {
                    "Botnet Command and Control Server": "This category contains Web sites or domains that host a botnet command and control server."
                }},
            "tags": []
        },
        "Entity": "HTTP://MARKOSSOLOMON.COM/F1Q7QX.PHP"
    }
]

Ping

説明

X-Force への接続性をテストします。

パラメータ

なし

ユースケース

なし

実行

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

アクションの結果

エンティティ拡充

なし

分析情報

なし

スクリプトの結果
スクリプトの結果名 値のオプション 例
is_connected True/False is_connected:False
JSON の結果
N/A

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