MSSQL

本文提供相關指引,說明如何整合 Microsoft SQL Server 與 Google Security Operations SOAR。

整合版本:14.0

事前準備

本節說明如何設定 Google SecOps 遠端代理程式 (RHEL、CentOS 或 Docker),以便透過 Kerberos 驗證使用 SQL Server。

設定 Google SecOps 遠端代理程式 (RHEL 或 CentOS)

如要設定 Google SecOps 遠端代理程式 (RHEL 或 CentOS) 以搭配 SQL Server 使用,請在遠端代理程式 Linux 殼層中完成下列步驟:

  1. 將 DNS 伺服器新增至 /etc/resol.conf 檔案:#vi /etc/resolv.conf

  2. 安裝 CentOS 7 的 krb5 套件:#yum install krb5-workstation

  3. 開啟 /etc/krb5.conf 檔案,並以大寫形式將網域新增為 default_realm#vi etc/krb5.conf

  4. 測試與 Active Directory 的連線。使用有權存取 SQL Server 資料庫的使用者:#kinit sql_user

  5. 輸入使用者密碼。

  6. 出示取得的票券:#klist

  7. 選用:移除 Kerberos 票證:#kdestroy -A

如要進一步瞭解如何使用 Microsoft SQL 整合功能,在 CentOS 上建立遠端代理程式,請參閱「Create agent with installer for CentOS」(使用 CentOS 安裝程式建立代理程式)。

設定 Google SecOps 遠端代理程式 (Docker)

如要設定 Google SecOps 遠端代理程式 (Docker) 與 SQL Server 搭配運作,請在遠端代理程式 Linux 殼層中完成下列步驟:

  1. 在 Docker 容器中執行殼層:docker exec -it siemplify /bin/bash

  2. 將網域 DNS 伺服器新增至 /etc/resol.conf 檔案: #vi /etc/resolv.conf

  3. 安裝 CentOS 7 的 krb5 套件:#yum install krb5-workstation

  4. 開啟 /etc/krb5.conf 檔案,並以大寫形式將網域新增為 default_realm#vi etc/krb5.conf

  5. 取得 Kerberos 票證。使用有權存取 SQL Server 資料庫的使用者:#kinit sql_user

  6. 輸入使用者密碼。

  7. 出示取得的票券:#klist

  8. 選用:移除 Kerberos 票證:#kdestroy -A

如要進一步瞭解如何在 Docker 上建立遠端代理程式,請參閱「使用 Docker 建立代理程式」。

選用:安裝 SQL Server 工具以進行偵錯

如要安裝 SQL Server 工具進行偵錯,請在遠端代理程式 Linux 殼層中完成下列步驟:

  1. 新增 Microsoft 存放區:# curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/msprod.repo

  2. 安裝 SQL Server 工具:# yum install mssql-tools unixODBC-devel

    二進位檔會安裝在以下目錄:/opt/mssql-tools/bin

  3. 測試與 SQL Server 的連線:#kinit sql_user

  4. 執行下列指令:/opt/mssql-tools/bin/sqlcmd -S sqlserver.yourdomain.com -E

整合 MSSQL 與 Google SecOps

整合作業需要下列參數:

參數 說明
Server Address 必要

SQL Server 執行個體的位址。

預設值為 sqlserver.DOMAIN.com

Username 選用

SQL Server 執行個體的使用者名稱。

Password 選用

使用者密碼。

Port 選用

整合功能中使用的通訊埠。

Windows Authentication 選用

如果選取這個選項,整合服務會使用 Windows 驗證進行驗證。

預設為未選取。

Use Kerberos Authentication 選用

如果選取這個選項,整合服務會使用 Kerberos 驗證進行驗證。

預設為未選取。

Kerberos Realm 選用

Kerberos 領域值。

Kerberos Username 選用

用於 Kerberos 驗證的使用者名稱。

Kerberos Password 選用

Kerberos 驗證的密碼。

Verify SSL 選用

如果選取這個選項,整合服務會驗證連線至 SQL Server 的 SSL 憑證是否有效。

(此為預設選項)。

這個參數僅適用於 Microsoft ODBC 驅動程式 (適用於 SQL Server 18 版)。如果 Google SecOps 伺服器主機執行較舊的 ODBC 驅動程式版本,整合功能會忽略這個參數。

如需在 Google SecOps 中設定整合功能的操作說明,請參閱「設定整合功能」。

如有需要,您可以在稍後階段進行變更。設定整合執行個體後,您就可以在劇本中使用該執行個體。如要進一步瞭解如何設定及支援多個執行個體,請參閱「支援多個執行個體」。

動作

SQL Server 整合功能包含下列動作:

乒乓

使用「Ping」動作測試與 SQL Server 的連線。

這項操作會對所有實體執行。

動作輸入內容

動作輸出內容

「Ping」動作會提供下列輸出內容:

動作輸出類型 可用性
案件總覽附件 無法使用
案件總覽連結 無法使用
案件訊息牆表格 無法使用
補充資訊表格 無法使用
JSON 結果 無法使用
輸出訊息 無法使用
指令碼結果 可用
指令碼結果

下表說明使用 Ping 動作時,指令碼結果輸出的值:

指令碼結果名稱
is_success TrueFalse

執行 SQL 查詢

使用「執行 SQL 查詢」動作執行 SQL 查詢。

這項操作會對所有實體執行。

動作輸入內容

「執行 SQL 查詢」動作需要下列參數:

參數 說明
Database Name 必要

要執行查詢的資料庫名稱。

必要

要執行的查詢。

預設值為 SELECT * FROM <>

動作輸出內容

「執行 SQL 查詢」動作會提供下列輸出內容:

動作輸出類型 可用性
案件總覽附件 無法使用
案件總覽連結 無法使用
案件訊息牆表格 無法使用
補充資訊表格 無法使用
JSON 結果 可用
輸出訊息 無法使用
指令碼結果 可用
JSON 結果

以下範例顯示使用「執行 SQL 查詢」動作時收到的 JSON 結果輸出內容:

[
    {
        "Name": "Actions Monitor System",
        "Creator": "System",
        "Integration": "Example",
        "VersionId": "VERSION_ID",
        "ModificationTimenixTimeInMs": 1558278307098,
        "Description": "Notifies of all the actions, that have individually failed at least 3 times, in the last 3 hours"
    },{
        "Name": "Jobs Monitor System",
        "Creator": "System",
        "Integration": "Example",
        "VersionId": "VERSION_ID",
        "ModificationTimenixTimeInMs": 1558278307098,
        "Description": "Notifies of all the jobs, that have individually failed at least 3 times, in the last 3 hours"
    }
]
指令碼結果

下表說明使用「執行 SQL 查詢」動作時,指令碼結果輸出的值:

指令碼結果名稱
is_blocked TrueFalse

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