Fortinet FortiSIEM

本文說明如何將 Fortinet FortiSIEM 與 Google Security Operations 整合。

在 Google Security Operations 中設定 Fortinet FortiSIEM 整合

如要瞭解如何在 Google SecOps 中設定整合功能,請參閱「設定整合功能」一文。

整合參數

請使用下列參數設定整合:

參數顯示名稱 類型 預設值 為必填項目 說明
API 根層級 字串 https://x.x.x.x:port 是 指定目標 FortiSIEM 安裝作業的 API 根目錄。
使用者名稱 字串 不適用 是 指定要用於目標 FortiSIEM 安裝作業的使用者名稱。
密碼 密碼 不適用 是 指定要用於目標 FortiSIEM 安裝作業的密碼。
驗證 SSL 核取方塊 已勾選 否 如果啟用,Google SecOps 伺服器會檢查憑證是否已設為 API 根。

產品用途

  1. 將 SIEM 的警告擷取至 Google SecOps。
  2. 使用 SIEM 資料,強化 Google SecOps 警告。
  3. 將 Google SecOps 快訊的處理狀態同步回 SIEM 端。

動作

乒乓

說明

在 Google SecOps Content Hub 的整合設定頁面,使用提供的參數測試與 FortiSIEM 的連線。

參數

不適用

執行日期

這項動作不會對實體執行,也沒有必要輸入參數。

動作執行結果

指令碼執行結果
指令碼執行結果名稱 值選項 範例
is_success True/False is_success=False
JSON 結果
N/A
實體資料充實

不適用

深入分析

不適用

案件總覽
結果類型 值/說明 類型
輸出訊息*

動作不應失敗,也不應停止執行應對手冊:

如果成功:「已成功使用提供的連線參數連線至 FortiSIEM 安裝作業!」

動作應失敗並停止執行應對手冊:

>如果未成功:「無法連線至 FortiSIEM 安裝!Error is {0}".format(exception.stacktrace)"

一般

充實實體

說明

使用 Fortinet FortiSIEM CMDB 的資訊擴充實體。支援的實體:主機名稱、IP 位址。

參數

參數顯示名稱 類型 預設值 為必填項目 說明
目標組織 字串 不適用 否 指定選用的目標組織名稱,僅在這個組織中尋找擴充資訊。

執行日期

這項動作會對下列實體執行:

  • 主機名稱
  • IP 位址

動作執行結果

指令碼執行結果
指令碼執行結果名稱 值選項 範例
is_success True/False is_success=False
JSON 結果
[
  {
    "Entity": "centos-xxx",
    "EntityResult": {
      "device": {
        "organization": {
          "@id": "1xx",
          "@name": "Super"
        },
        "accessIp": "172.30.xxx.xxx",
        "approved": "true",
        "components": null,
        "creationMethod": "LOG",
        "deviceType": {
          "accessProtocols": "TELNET,SSH",
          "jobWeight": "10",
          "model": "Unix",
          "vendor": "Generic",
          "version": "ANY"
        },
        "discoverMethod": "LOG",
        "discoverTime": "1640008485000",
        "eventParserList": null,
        "interfaces": null,
        "ipToHostNames": null,
        "luns": null,
        "name": "centos-xxx",
        "naturalId": "centos%2dxxx",
        "processors": null,
        "properties": {
          "customproperty": [
            {
              "matched": "false",
              "propertyDef": {
                "displayInCMDB": "false",
                "displayName": "Importance",
                "groupKey": "false",
                "propertyName": "importance",
                "subValueType": "STRING",
                "valueType": "STRING"
              },
              "propertyName": "importance",
              "propertyValue": "Normal",
              "updated": "false"
            },
            {
              "matched": "false",
              "propertyDef": {
                "displayInCMDB": "false",
                "displayName": "Location Name",
                "groupKey": "false",
                "propertyName": "locationName",
                "subValueType": "STRING",
                "valueType": "STRING"
              },
              "propertyName": "locationName",
              "updated": "false"
            }
          ]
        },
        "raidGroups": null,
        "sanControllerPorts": null,
        "softwarePatches": null,
        "softwareServices": null,
        "status": "2",
        "storageGroups": null,
        "storages": null,
        "unmanaged": "false",
        "updateMethod": "LOG",
        "version": "ANY",
        "winMachineGuid": null
      }
    }
  },
  {
    "Entity": "172.30.xxx.xxx",
    "EntityResult": {
      "device": {
        "organization": {
          "@id": "1xx",
          "@name": "Super"
        },
        "accessIp": "172.30.xxx.xxx",
        "applications": null,
        "approved": "true",
        "components": null,
        "creationMethod": "LOG",
        "deviceType": {
          "accessProtocols": "TELNET,SSH",
          "jobWeight": "10",
          "model": "Unix",
          "vendor": "Generic",
          "version": "ANY"
        },
        "discoverMethod": "LOG",
        "discoverTime": "1640070721000",
        "eventParserList": {
          "eventparser": {
            "deviceType": {
              "category": "Appliance",
              "jobWeight": "10",
              "model": "Generic",
              "vendor": "Generic",
              "version": "ANY"
            },
            "enabled": "true",
            "name": "SyslogNGParser",
            "parserXml": "<patternDefinitions><pattern>..."
          }
        },
        "interfaces": null,
        "ipToHostNames": null,
        "luns": null,
        "name": "centos-xxx",
        "naturalId": "centos",
        "primaryContactUser": "0",
        "processors": null,
        "properties": {
          "customproperty": [
            {
              "matched": "false",
              "propertyDef": {
                "displayInCMDB": "false",
                "displayName": "Importance",
                "groupKey": "false",
                "propertyName": "importance",
                "subValueType": "STRING",
                "valueType": "STRING"
              },
              "propertyName": "importance",
              "propertyValue": "Mission Critical",
              "updated": "false"
            },
            {
              "matched": "false",
              "propertyDef": {
                "displayInCMDB": "false",
                "displayName": "Location Name",
                "groupKey": "false",
                "propertyName": "locationName",
                "subValueType": "STRING",
                "valueType": "STRING"
              },
              "propertyName": "locationName",
              "updated": "false"
            }
          ]
        },
        "raidGroups": null,
        "sanControllerPorts": null,
        "secondaryContactUser": "0",
        "softwarePatches": null,
        "softwareServices": null,
        "status": "2",
        "storageGroups": null,
        "storages": null,
        "unmanaged": "false",
        "updateMethod": "MANUAL",
        "version": "ANY",
        "winMachineGuid": null
      }
    }
  }
]
實體資料充實
補充資料欄位名稱 來源 (JSON 金鑰) 邏輯 - 應用時機
accessIp accessIp XML 中有提供時
名稱 名稱 XML 格式 (如有)
應用程式 「applications/name」的 CSV XML 格式 (如有)
creationMethod creationMethod XML 格式 (如有)
deviceType_model deviceType_model XML 格式 (如有)

deviceType_accessProtocols

deviceType_vendor

deviceType_accessProtocols

deviceType_vendor

XML 中有提供時
discoverMethod discoverMethod XML 中有提供時
discoverTime discoverTime XML 中有提供時
深入分析

不適用

案件總覽
結果類型 值/說明 類型
輸出訊息*

動作不應失敗,也不應停止執行應對手冊:

如果一個實體有資料 (is_success=true):「已成功使用 FortiSIEM 的資訊擴充下列實體:{entity.identifier}。」

如果無法取得某個實體的資料 (is_success=true):「動作無法使用 FortiSIEM 的資訊充實下列實體:{entity.identifier}。」

如果所有實體都沒有資料 (is_success=false):「提供的實體都沒有擴充資料。」

動作應失敗並停止執行應對手冊:

如果發生嚴重錯誤 (例如憑證錯誤、無法連線至伺服器等),系統會回報:「執行『擴充實體』動作時發生錯誤。原因:{0}''.format(error.Stacktrace)

一般
案件總覽表格

表格標題:{entity.identifier}

表格欄:

  • 鍵
  • 值
實體

執行簡易查詢

說明

根據提供的參數執行 FortiSIEM 事件查詢。

參數

參數顯示名稱 類型 預設值 為必填項目 說明
事件類型 CSV 不適用 否

指定查詢應擷取的事件類型。

參數接受多個值,請以半形逗號分隔。

要擷取的最低嚴重性 整數 不適用 否

請以數字指定要擷取至 Google SecOps 的事件嚴重性下限。

範例:5 或 7

事件類別 CSV 不適用 否

指定查詢應擷取的事件類別。

參數接受多個值,請以半形逗號分隔。

事件 ID CSV 不適用 否

指定查詢應擷取的確切事件 ID (選用)。

參數接受多個值,請以半形逗號分隔。

要傳回的欄位 CSV 不適用 否

指定要傳回的欄位。

如未提供,動作會傳回所有欄位。

排序欄位 字串 phRecvTime 否 指定要用於排序的參數。
排列順序 DDL

遞減

可能的值:

  • 遞增
  • 遞減
否 指定排序順序。
時間範圍 DDL

過去 1 小時

可能的值:

  • 過去 1 小時
  • 過去 6 小時
  • 最近 24 小時
  • 上週
  • 上個月
  • 自訂
否

指定結果的時間範圍。

如果選取「自訂」,則必須提供「開始時間」參數。

開始時間 字串 不適用 否

指定結果的開始時間。

如果「Time Frame」參數選取「Custom」,則必須提供這項參數。

格式:ISO 8601

例如:2021-04-23T12:38Z

結束時間 字串 不適用 否

指定結果的結束時間。

如果未提供任何值,且「Time Frame」參數選取「Custom」,則這個參數會使用目前時間。

格式:ISO 8601

要傳回的結果數量上限 整數 50 否 指定要傳回的結果數量。

執行日期

這項動作不會對實體執行。

動作執行結果

指令碼執行結果
指令碼執行結果名稱 值選項 範例
is_success True/False is_success=False
JSON 結果
[
  {
    "custId": "1",
    "attributes": {
      "eventType": "Unknown_EventType",
      "eventSeverity": "3",
      "eventAction": "0 (Permit)",
      "phRecvTime": "Wed Dec 29 00:36:55 IST 2021",
      "relayDevIpAddr": "172.30.20xxx",
      "reptDevIpAddr": "172.30.20xxx",
      "destIpAddr": "172.30.20xxx",
      "destName": "HOST-172.30.20xxx",
      "reptDevName": "centos-xxx",
      "reptVendor": "Unknown",
      "customer": "Super",
      "reptModel": "Unknown",
      "rawEventMsg": "<27>Dec 29 00:36:47 centos-xxx aella_flow[5074]: 1902195|aos_afix_json|ERR|Failed to send message: Couldn't connect to server/7",
      "collectorId": "1",
      "eventId": "4242813061460978xxx",
      "phEventCategory": "0 (External)",
      "count": "1",
      "eventName": "Unknown event type",
      "eventParsedOk": "0",
      "parserName": "SyslogNGParser"
    },
    "dataStr": null,
    "eventType": "Unknown_EventType",
    "id": "4242813061460978xxx",
    "index": "0",
    "nid": "4242813061460978xxx",
    "receiveTime": "2021-12-29T00:36:55+02:00"
  }
]
實體資料充實

不適用

深入分析

不適用

案件總覽
結果類型 值/說明 類型
輸出訊息*

動作不應失敗,也不應停止執行應對手冊:

如果至少找到部分資料 (is_success=true):「已成功在 FortiSIEM 擷取建構查詢『{query}』的結果。」

如果找不到結果 (is_success=false):「在 FortiSIEM 中找不到與建構查詢『{Query}』相符的結果。」

動作應失敗並停止執行應對手冊:

如果發生嚴重錯誤,例如憑證錯誤、無法連線至伺服器等,系統會回報:「Error executing action "Simple Query". 原因:{0}''.format(error.Stacktrace)

如果「開始時間」參數空白,且「Time Frame」參數設為「Custom」(失敗):「Error executing action "". Reason: "Start Time" should be provided, when "Custom" is selected in the "Time Frame" parameter.」

如果「開始時間」的值大於「結束時間」參數的值 (失敗):「執行動作時發生錯誤。原因:『結束時間』必須晚於『開始時間』。」

一般
資料表

資料表名稱:簡單查詢結果

表格欄:回覆中的所有欄

一般

執行自訂查詢

說明

在 FortiSIEM 中執行自訂查詢。

參數

參數顯示名稱 類型 預設值 為必填項目 說明
查詢 字串多行輸入欄位 (屬性 = 值 OR 值) AND (屬性 = 值 OR 值) 是

指定查詢,用於擷取事件相關資訊。

範例:(relayDevIpAddr = 172.30.202.1 OR 172.30.202.2) AND (reptDevName = HOST1)

要傳回的欄位 CSV 否

指定要傳回的欄位。

如未提供,動作會傳回所有欄位。

排序欄位 字串 phRecvTime 否 指定要用於排序的參數。
排列順序 DDL

遞減

可能的值:

  • 遞增
  • 遞減
否 指定排序順序。
時間範圍 DDL

過去 1 小時

可能的值:

  • 過去 1 小時
  • 過去 6 小時
  • 最近 24 小時
  • 上週
  • 上個月
  • 自訂
否

指定結果的時間範圍。

如果選取「自訂」,則必須提供「開始時間」參數。

開始時間 字串 不適用 否

指定結果的開始時間。

如果「Time Frame」參數選取「Custom」,則必須提供這項參數。

格式:ISO 8601

例如:2021-04-23T12:38Z

結束時間 字串 不適用 否

指定結果的結束時間。

如果未提供任何值,且「Time Frame」參數選取「Custom」,則這個參數會使用目前時間。

要傳回的結果數量上限 整數 50 否 指定要傳回的結果數量。

執行日期

這項動作不會對實體執行。

動作執行結果

指令碼執行結果
指令碼執行結果名稱 值選項 範例
is_success True/False is_success=False
JSON 結果
[
  {
    "custId": "1",
    "attributes": {
      "eventType": "Unknown_EventType",
      "eventSeverity": "3",
      "eventAction": "0 (Permit)",
      "phRecvTime": "Wed Dec 29 00:36:55 IST 2021",
      "relayDevIpAddr": "172.30.20xxx",
      "reptDevIpAddr": "172.30.20xxx",
      "destIpAddr": "172.30.20xxx",
      "destName": "HOST-172.30.20xxx",
      "reptDevName": "centos-xxx",
      "reptVendor": "Unknown",
      "customer": "Super",
      "reptModel": "Unknown",
      "rawEventMsg": "<27>Dec 29 00:36:47 centos-xxx aella_flow[5074]: 1902195|aos_afix_json|ERR|Failed to send message: Couldn't connect to server/7",
      "collectorId": "1",
      "eventId": "4242813061460978xxx",
      "phEventCategory": "0 (External)",
      "count": "1",
      "eventName": "Unknown event type",
      "eventParsedOk": "0",
      "parserName": "SyslogNGParser"
    },
    "dataStr": null,
    "eventType": "Unknown_EventType",
    "id": "4242813061460978xxx",
    "index": "0",
    "nid": "4242813061460978xxx",
    "receiveTime": "2021-12-29T00:36:55+02:00"
  }
]
實體資料充實

不適用

深入分析

不適用

案件總覽
結果類型 值/說明 類型
輸出訊息*

動作不應失敗,也不應停止執行應對手冊:

如果找到至少部分資料 (is_success=true):「已成功在 FortiSIEM 中擷取所提供查詢『{query}』的結果。」

如果找不到結果 (is_success=false):「在 FortiSIEM 中找不到與所提供查詢『{Query}』相符的結果。」

動作應失敗並停止執行應對手冊:

如果發生嚴重錯誤,例如憑證錯誤、無法連線至伺服器等,系統會回報:「Error executing action "Simple Query". 原因:{0}''.format(error.Stacktrace)

如果「開始時間」參數空白,且「Time Frame」參數設為「Custom」(失敗):「Error executing action "". Reason: "Start Time" should be provided, when "Custom" is selected in the "Time Frame" parameter.」

如果「開始時間」的值大於「結束時間」參數的值 (失敗):「執行動作時發生錯誤。原因:『結束時間』必須晚於『開始時間』。」

一般
資料表

資料表名稱:自訂查詢結果

表格欄:回覆中的所有欄

一般

連接器

FortiSIEM 事件連接器

連接器說明

連接器可用於擷取 FortiSIEM 事件。連接器許可清單可用於根據事件的「eventType」屬性值,僅擷取特定類型的事件。連接器的 SourceGroupIdentifier 可用於根據事件 ID 將 Google SecOps 警示分組。連接器需要 FortiSIEM 6.3 以上版本。

連接器參數

參數顯示名稱 類型 預設值 為必填項目 說明
產品欄位名稱 字串 deviceProduct 是 輸入來源欄位名稱,擷取產品欄位名稱。
事件欄位名稱 字串 eventType 是 輸入來源欄位名稱,擷取事件欄位名稱。
環境欄位名稱 字串 否

說明儲存環境名稱的欄位名稱。

如果找不到環境欄位,則環境為預設環境。

環境規則運算式模式 字串 .* 否

要對「環境欄位名稱」欄位中的值執行的規則運算式模式。

預設值為 .*,可擷取所有值並傳回未變更的值。

用於允許使用者透過規則運算式邏輯操控環境欄位。

如果規則運算式模式為空值或空白,或環境值為空值,則最終環境結果為預設環境。

指令碼逾時 整數 300 是 指定連接器執行的逾時時間。
API 根層級 字串 https:/x.x.x.x:port 是 指定目標 FortiSIEM 安裝作業的 API 根目錄。
使用者名稱 字串 不適用 是 指定要用於目標 FortiSIEM 安裝作業的使用者名稱。
密碼 密碼 不適用 是 指定要用於目標 FortiSIEM 安裝作業的密碼。
驗證 SSL 核取方塊 已勾選 否 如果啟用,Google SecOps 伺服器會檢查為 API 根目錄設定的憑證。
目標組織 CSV 不適用 否

指定連接器應擷取哪些組織的事件。

參數接受多個值,請以半形逗號分隔。

往回調整時數上限 整數 24 是 指定時間範圍,擷取過去 X 小時內的事件。
每個週期事件數量上限 整數 10 是 指定連接器執行一次時應處理的事件數量。
每項事件的事件數量上限 整數 100 是

指定連接器應追蹤的事件數量上限。

達到上限後,系統就不會將新事件新增至 Google SecOps。

要擷取的事件狀態 CSV 0 否

指定要擷取至 Google SecOps 的事件狀態。

參數接受多個值,請以半形逗號分隔。

0 代表未解決的事件。

要擷取的最低嚴重性 整數 不適用 否 指定要擷取至 Google SecOps 的最低事件嚴重性,請以數字表示,例如 5 或 7。
將許可清單當做黑名單使用 核取方塊 已取消勾選 是 如果啟用,許可清單會做為黑名單使用。
追蹤已擷取事件中新增的事件 核取方塊 已勾選 是 如果啟用,當新事件新增至已擷取的 FortiSIEM 事件時,Google SecOps 會建立含有這些新事件的新快訊。
追蹤新事件門檻 (小時) 整數 24 是

如果勾選「追蹤新增至已擷取事件的新事件」核取方塊,請指定連接器應追蹤已擷取事件的新事件時數上限。

達到上限後,系統就不會將新事件新增至 Google SecOps。

Proxy 伺服器位址 字串 不適用 否 指定要使用的 Proxy 伺服器位址。
Proxy 使用者名稱 字串 不適用 否 指定要用於驗證的 Proxy 使用者名稱。
Proxy 密碼 密碼 不適用 否 指定用於驗證的 Proxy 密碼。

連接器規則

Proxy 支援

連接器支援 Proxy。

還有其他問題嗎?向社群成員和 Google SecOps 專家尋求解答。