收集 Alcatel 交換器記錄
支援以下發布途徑:
Google secops
Siem
本文說明如何使用 Bindplane 代理程式,將 Alcatel 交換器記錄匯入 Google 安全作業。剖析器會根據不同的記錄格式,使用一系列 grok
模式擷取欄位。接著,系統會將擷取的欄位對應至統一資料模型 (UDM) 中的對應欄位,並透過供應商和事件類型等中繼資料豐富資料。
事前準備
- 確認您有 Google SecOps 執行個體。
- 請確認您使用的是 Windows 2016 或更新版本,或是支援
systemd
的 Linux 主機。 - 如果在 Proxy 後方執行,請確認防火牆通訊埠已開啟。
- 確認您具備 Alcatel 交換器的特殊權限憑證。
取得 Google SecOps 擷取驗證檔案
- 登入 Google SecOps 控制台。
- 依序前往「SIEM 設定」>「收集代理程式」。
- 下載擷取驗證檔案。請在將要安裝 Bindplane 的系統上,安全地儲存檔案。
取得 Google SecOps 客戶 ID
- 登入 Google SecOps 控制台。
- 依序前往「SIEM 設定」>「設定檔」。
- 複製並儲存「機構詳細資料」部分中的客戶 ID。
安裝 Bindplane 代理程式
Windows 安裝
- 以系統管理員身分開啟命令提示字元或 PowerShell。
執行下列指令:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Linux 安裝
- 開啟具有 root 或 sudo 權限的終端機。
執行下列指令:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
其他安裝資源
- 如需其他安裝選項,請參閱這份安裝指南。
設定 Bindplane 代理程式,以便擷取系統記錄檔並傳送至 Google SecOps
存取設定檔:
- 找出
config.yaml
檔案。通常位於 Linux 的/etc/bindplane-agent/
目錄或 Windows 的安裝目錄。 - 使用文字編輯器 (例如
nano
、vi
或記事本) 開啟檔案。
- 找出
按照下列方式編輯
config.yaml
檔案:receivers: udplog: # Replace the port and IP address as required listen_address: "0.0.0.0:514" exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the path to the credentials file you downloaded in Step 1 creds: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: <customer_id> endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization ingestion_labels: log_type: ALCATEL_SWITCH raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels
視基礎架構需求替換通訊埠和 IP 位址。
將
<customer_id>
替換為實際的客戶 ID。在「取得 Google SecOps 攝入驗證檔案」部分,將
/path/to/ingestion-authentication-file.json
更新為驗證檔案的儲存路徑。
重新啟動 Bindplane 代理程式以套用變更
如要在 Linux 中重新啟動 Bindplane 代理程式,請執行下列指令:
sudo systemctl restart bindplane-agent
如要在 Windows 中重新啟動 Bindplane 代理程式,您可以使用「Services」主控台,或輸入下列指令:
net stop BindPlaneAgent && net start BindPlaneAgent
設定 Alcatel 交換器 Syslog 匯出功能
- 使用 SSH 或主控台連線至交換器。
- 使用管理員憑證登入。
進入全域設定模式:
enable configure terminal
設定 Bindplane (syslog) 伺服器 IP 位址:
swlog output socket <syslog-server-ip>
- 將
<syslog-server-ip>
替換為 Bindplane 代理程式 IP 位址。
- 將
啟用記錄至 syslog 伺服器的功能:
swlog remote enable
設定記錄層級:
swlog console level info
啟用指令記錄功能:
command-log enable
儲存對啟動設定所做的變更:
write memory
UDM 對應表
記錄欄位 | UDM 對應 | 邏輯 |
---|---|---|
1.1.1.1 |
principal.ip principal.asset.ip |
從記錄訊息中擷取。 |
1.1.1.2 |
target.ip target.asset.ip |
擷取自記錄訊息。 |
1.1.2.7 |
target.ip target.asset.ip |
從記錄訊息中擷取。 |
1035 |
target.port | 從記錄訊息中擷取。 |
2266 |
additional.fields.value.string_value | 從記錄訊息中擷取,並對應為 vlan 。 |
3036 |
principal.port | 從記錄訊息中擷取。 |
59300 |
target.port | 從記錄訊息中擷取。 |
60588 |
target.port | 從記錄訊息中擷取。 |
997 |
principal.resource.attribute.labels.value | 從記錄訊息中擷取,並對應為 limit 。 |
A6450-L2-K4B-01 |
principal.application | 從記錄訊息中擷取。 |
A6450-L2-X1B-02-01 |
principal.application | 從記錄訊息中擷取。 |
A6450-L2-X2A-01-01 |
principal.application | 從記錄訊息中擷取。 |
A6450-L2-X4B-02-01 |
principal.application | 從記錄訊息中擷取。 |
A6900-L3-LTX0A |
principal.application | 從記錄訊息中擷取。 |
Accepted keyboard-interactive/pam |
security_result.summary | 已擷取的「sec_summary 」欄位部分。 |
b8:53:ac:6e:c9:bc |
principal.mac | 從記錄訊息中擷取。 |
BRIDGE(10) |
additional.fields.value.string_value | 從記錄訊息中擷取,並對應為 id_protocol 。 |
CLI log, |
security_result.summary | 已擷取的「sec_summary 」欄位部分。 |
cmd: show configuration snapshot all, |
security_result.detection_fields.value | 從記錄訊息中擷取,並對應為 cmd 。 |
Connection reset by 1.1.2.7 port 60505 |
security_result.summary | 從記錄訊息中擷取。 |
Dec 7 14:28:40 |
metadata.event_timestamp.seconds metadata.event_timestamp.nanos |
從 ts 欄位剖析而來。 |
Dec 8 04:21:22 |
metadata.event_timestamp.seconds metadata.event_timestamp.nanos |
從 ts 欄位剖析而來。 |
Dec 9 20:08:29 |
metadata.event_timestamp.seconds metadata.event_timestamp.nanos |
從 ts 欄位剖析而來。 |
Dec 9 20:51:34 |
metadata.event_timestamp.seconds metadata.event_timestamp.nanos |
從 ts 欄位剖析而來。 |
Dec 11 10:18:30 |
metadata.event_timestamp.seconds metadata.event_timestamp.nanos |
從 ts 欄位剖析而來。 |
Dec 17 02:14:22 |
metadata.event_timestamp.seconds metadata.event_timestamp.nanos |
從 ts 欄位剖析而來。 |
Dec 19 10:27:33 |
metadata.event_timestamp.seconds metadata.event_timestamp.nanos |
從 ts 欄位剖析而來。 |
Did not receive identification string from 1.1.2.7 port 60588 |
security_result.summary | 從記錄訊息中擷取。 |
esmSetRateLimit: Txing |
additional.fields.value.string_value | 從記錄訊息中擷取,並對應為 esm_set_rate_limit 。 |
Feb 15 16:29:29 |
metadata.event_timestamp.seconds metadata.event_timestamp.nanos |
從 ts 欄位剖析而來。 |
Feb 16 11:08:45 |
metadata.event_timestamp.seconds metadata.event_timestamp.nanos |
從 ts 欄位剖析而來。 |
Feb 16 11:08:49 |
metadata.event_timestamp.seconds metadata.event_timestamp.nanos |
從 ts 欄位剖析而來。 |
flashManager FlashMgr Main info(5) flashMgrValidateImage_exec: valid |
security_result.summary | 擷取自記錄訊息。 |
for ncmadmin from 1.1.1.2 port 59300 ssh2 |
security_result.summary | 已擷取的「sec_summary 」欄位部分。 |
from port 3036 to port 1035 |
security_result.summary | 已擷取的「sec_summary 」欄位部分。 |
IVDELCSW03 |
principal.hostname principal.asset.hostname |
當 principal_ip 不是 IP 位址時,從記錄訊息中擷取。 |
IP-HELPER(22) |
additional.fields.value.string_value | 從記錄訊息中擷取,並對應為 id_protocol 。 |
Jan 16 02:14:13 |
metadata.event_timestamp.seconds metadata.event_timestamp.nanos |
從 ts 欄位剖析而來。 |
LLDP(42) |
additional.fields.value.string_value | 從記錄訊息中擷取,並對應為 id_protocol 。 |
limit=997, |
principal.resource.attribute.labels.value | 從記錄訊息中擷取,並對應為 limit 。 |
limitType=1 |
principal.resource.attribute.labels.value | 從記錄訊息中擷取,並對應為 limitType 。 |
lldpProcessLocationIdTLV: Error, LLDP-MED Civic Address LCI len 39 invalid, tlvL |
security_result.summary | 擷取自記錄訊息。 |
Mac Movement for MacAddr: a0:29:19:c0:55:18 |
security_result.summary | 從記錄訊息中擷取。 |
MacAddr: a0:29:19:c0:55:18 |
principal.mac | 從記錄訊息中擷取。 |
ncmadmin |
principal.user.userid | 從記錄訊息中擷取。 |
OS6360 |
principal.hostname principal.asset.hostname |
當 principal_ip 不是 IP 位址時,從記錄訊息中擷取。 |
result: SUCCESS |
security_result.detection_fields.value | 從記錄訊息中擷取,並對應為 result 。 |
SES CMD info(5) |
security_result.summary | 已擷取的「sec_summary 」欄位部分。 |
STACK-MANAGER |
principal.application | 從記錄訊息中擷取。 |
Stack Port A MAC Frames TX/RX Enabled |
security_result.summary | 從記錄訊息中擷取。 |
STP(11) |
additional.fields.value.string_value | 從記錄訊息中擷取,並對應為 id_protocol 。 |
SWCONSOLE-L2-K0A-01 |
target.hostname target.asset.hostname |
從記錄訊息中擷取。 |
trafficType=2, |
principal.resource.attribute.labels.value | 從記錄訊息中擷取,並對應為 trafficType 。 |
user: ncmadmin |
security_result.summary | 已擷取的「sec_summary 」欄位部分。 |
zslot=0, |
principal.resource.attribute.labels.value | 從記錄訊息中擷取,並對應為 zslot 。 |
- | additional.fields.key | 硬式編碼值:id_protocol |
- | additional.fields.key | 硬式編碼值:esm_set_rate_limit |
- | additional.fields.key | 硬式編碼值:vlan |
- | metadata.event_type | 如果沒有其他類型符合,請設為 GENERIC_EVENT 。 |
- | metadata.product_name | 硬式編碼值:Alcatel Switch |
- | metadata.vendor_name | 硬式編碼值:ALCATEL SWITCH |
- | network.application_protocol | 當 id_protocol 與 ssh 相符時,請設為 SSH (不區分大小寫)。 |
- | principal.resource.attribute.labels.key | 硬式編碼值:limit |
- | principal.resource.attribute.labels.key | 硬式編碼值:trafficType |
- | principal.resource.attribute.labels.key | 硬式編碼值:limitType |
- | principal.resource.attribute.labels.key | 硬式編碼值:zslot |
- | security_result.detection_fields.key | 硬式編碼值:cmd |
- | security_result.detection_fields.key | 硬式編碼值:result |
- | security_result.severity | 當 prod_severity 與 info 相符時,請設為 INFORMATIONAL (不區分大小寫)。 |
異動
2024-03-11
改善項目:
- 新增 Grok 模式,以便剖析新的 syslog 記錄格式。
- 已將
severity
對應至security_result.severity
和security_result.detection_fields
。 - 如果
id_protocol
幾乎等於ssh
,請將network.application_protocol
設為SSH
。 - 新增 Grok 模式,以便剖析
sec_summary
的新格式。
2024-01-16
- 新建的剖析器。
還有其他問題嗎?向社群成員和 Google SecOps 專家尋求解答。