收集 Trellix Email Security (舊稱 FireEye eMPS) 記錄檔

剖析器版本:16.0

支援的國家/地區:

本文說明如何使用 Bindplane,將 Trellix Email Security (舊稱 FireEye eMPS) 記錄檔擷取至 Google Security Operations。

Trellix Email Security 是一種電子郵件安全裝置,可即時分析電子郵件內容和附件,保護機構免受魚叉式網路釣魚、惡意軟體和目標性攻擊等進階電子郵件威脅。

事前準備

請確認您已完成下列事前準備事項:

  • Google SecOps 執行個體
  • Windows Server 2016 以上版本,或搭載 systemd 的 Linux 主機
  • Bindplane 代理程式與 FireEye eMPS 裝置之間的網路連線
  • 如果透過 Proxy 執行,請確保防火牆通訊埠已根據 Bindplane 代理程式需求開啟
  • FireEye eMPS 裝置 CLI 的特殊存取權 (管理員或操作人員角色)
  • 具備 Syslog 通知功能的 FireEye eMPS 裝置

取得 Google SecOps 擷取驗證檔案

  1. 登入 Google SecOps 控制台。
  2. 依序前往「SIEM 設定」>「收集代理程式」
  3. 按一下「下載」,下載「擷取驗證檔案」
  4. 將檔案安全地儲存在要安裝 Bindplane 代理程式的系統中。

取得 Google SecOps 客戶 ID

  1. 登入 Google SecOps 控制台。
  2. 依序前往「SIEM 設定」>「設定檔」
  3. 複製並儲存「機構詳細資料」部分中的客戶 ID

安裝 Bindplane 代理程式

請按照下列操作說明,在 Windows 或 Linux 作業系統上安裝 Bindplane 代理程式。

Windows 安裝

  1. 以管理員身分開啟「命令提示字元」或「PowerShell」
  2. 執行下列指令:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    
  3. 等待安裝完成。

  4. 執行下列指令,確認安裝成功:

    sc query observiq-otel-collector
    

服務應顯示為「RUNNING」

Linux 安裝

  1. 開啟具有根層級或 sudo 權限的終端機。
  2. 執行下列指令:

    sudo sh -c "$(curl -fsSlL [https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh](https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh))" install_unix.sh
    
  3. 等待安裝完成。

  4. 執行下列指令,確認安裝成功:

    sudo systemctl status observiq-otel-collector
    

服務應顯示為有效 (執行中)

其他安裝資源

如需其他安裝選項和疑難排解資訊,請參閱 Bindplane 代理程式安裝指南

設定 Bindplane 代理程式,擷取系統記錄檔並傳送至 Google SecOps

找出設定檔

  • Linux: /opt/observiq-otel-collector/config.yaml
  • Windows: C:\Program Files\observIQ OpenTelemetry Collector\config.yaml

編輯設定檔

  • config.yaml 的所有內容替換為下列設定:

    receivers:
      udplog:
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/fireeye_emps:
        compression: gzip
        creds_file_path: '/etc/bindplane-agent/ingestion-auth.json'
        customer_id: 'YOUR_CUSTOMER_ID'
        endpoint: malachiteingestion-pa.googleapis.com
        log_type: FIREEYE_EMPS
        raw_log_field: body
        ingestion_labels:
          env: production
    
    service:
      pipelines:
        logs/fireeye_to_chronicle:
          receivers:
            - udplog
          exporters:
            - chronicle/fireeye_emps
    

設定參數

替換下列預留位置:

  • 接收器設定:

    • 接收器已設定為透過通訊埠 514 傳送 UDP 系統記錄檔。
    • 如要在 Linux 上使用非專屬通訊埠,請將 514 變更為 1514 以上版本。
    • 如要使用 TCP 而非 UDP,請將 udplog 改成 tcplog
  • 匯出工具設定:

    • creds_file_path:擷取驗證檔案的完整路徑。
    • YOUR_CUSTOMER_ID:請替換為實際的客戶 ID。
    • endpoint:區域端點網址 (例如 malachiteingestion-pa.googleapis.com)。
    • log_type:必須為 FIREEYE_EMPS
    • ingestion_labels:YAML 格式的選用標籤。

重新啟動 Bindplane 代理程式,以套用變更

如要在 Linux 中重新啟動 Bindplane 代理程式,請執行下列步驟:

  1. 執行下列指令:

    sudo systemctl restart observiq-otel-collector
    
  2. 確認服務正在執行:

    sudo systemctl status observiq-otel-collector
    
  3. 檢查記錄中是否有錯誤:

    sudo journalctl -u observiq-otel-collector -f
    

如要在 Windows 中重新啟動 Bindplane 代理程式,請按照下列步驟操作:

  1. 您可以選擇下列其中一個選項:

    • 以管理員身分開啟命令提示字元或 PowerShell:
    net stop observiq-otel-collector && net start observiq-otel-collector
    
    • 服務控制台:
      1. 按下 Win+R,輸入 services.msc,然後按下 Enter 鍵。
      2. 找出 observIQ OpenTelemetry Collector
      3. 按一下滑鼠右鍵,然後選取「重新啟動」
  2. 確認服務正在執行:

    sc query observiq-otel-collector
    
  3. 檢查記錄中是否有錯誤:

    type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
    

設定 FireEye eMPS 系統記錄檔轉送

存取 FireEye eMPS CLI

  1. 透過 SSH 或控制台連線至 FireEye eMPS 設備。
  2. 登入並進入啟用模式:hostname> enable
  3. 進入設定模式:hostname# configure terminal

設定系統記錄伺服器

  1. 將 Bindplane 代理程式新增為 Syslog 陷阱接收器: hostname(config)# fenotify rsyslog trap-sink chronicle address <BINDPLANE_IP_ADDRESS>
  2. 將系統記錄格式設為 CEF: hostname(config)# fenotify rsyslog trap-sink chronicle prefer message format cef
  3. 將系統記錄設施設為 local4 (建議): hostname(config)# fenotify rsyslog default facility local4
  4. 設定放送模式: hostname(config)# fenotify rsyslog trap-sink chronicle message delivery per-event
  5. 設定快訊嚴重程度: hostname(config)# fenotify rsyslog trap-sink chronicle prefer message send-as alert
  6. 設定通訊協定: hostname(config)# fenotify rsyslog trap-sink chronicle protocol udp
  7. 設定通訊埠: hostname(config)# fenotify rsyslog trap-sink chronicle port 514

啟用系統記錄通知

  1. 全域啟用 rsyslog 通知:hostname(config)# fenotify rsyslog enable
  2. 啟用全域通知:hostname(config)# fenotify enable
  3. 啟用特定快訊類型:

    hostname(config)# fenotify rsyslog alert malware-object enable
    hostname(config)# fenotify rsyslog alert malware-callback enable
    hostname(config)# fenotify rsyslog alert infection-match enable
    hostname(config)# fenotify rsyslog alert domain-match enable
    
  4. 驗證設定:hostname(config)# show fenotify alerts

  5. 儲存並結束:

    hostname(config)# write memory
    hostname(config)# exit
    hostname# exit
    

UDM 對應表

記錄欄位 UDM 對應 邏輯
about.asset.asset_id 由 device_vendor、device_product 和 deviceExternalId 串連而成
關於 關於 從 about_token 合併
about.file.full_path about.file.full_path 直接複製值
about.file.sha256 about.file.sha256 直接複製值
about.file.size about.file.size 直接複製值
about.hostname about.hostname 直接複製值
about.ip about.ip 從 ips 陣列合併
about.mac about.mac 如果 MAC 有效,則為 dvcmac 的值,否則為 mac_address 的值
about.nat_ip about.nat_ip 直接從 deviceTranslatedAddress 複製的值
about.process.command_line about.process.command_line 如果「主旨」不為空值,則為「主旨」的值;否則為「Emne」的值;否則為「路徑」的值
about.process.file.full_path about.process.file.full_path 直接複製值
about.process.pid about.process.pid 直接複製值
about.resource.attribute.permissions about.resource.attribute.permissions 直接從權限複製值
其他 其他 直接重新命名
additional_cfp1 additional.fields 併入其他欄位
additional_cfp2 additional.fields 併入其他欄位
additional_cfp3 additional.fields 併入其他欄位
additional_cfp4 additional.fields 併入其他欄位
additional_cn1 additional.fields 併入其他欄位
additional_cn2 additional.fields 併入其他欄位
additional_cn3 additional.fields 併入其他欄位
additional_cs1 additional.fields 併入其他欄位
additional_cs2 additional.fields 併入其他欄位
additional_cs3 additional.fields 併入其他欄位
additional_cs4 additional.fields 併入其他欄位
additional_cs5 additional.fields 併入其他欄位
additional_cs6 additional.fields 併入其他欄位
additional_cs7 additional.fields 併入其他欄位
additional_devicePayloadId additional.fields 併入其他欄位
additional_eventId additional.fields 併入其他欄位
additional_fname additional.fields 併入其他欄位
additional_flexString1 additional.fields 併入其他欄位
additional_flexString2 additional.fields 併入其他欄位
app_protocol_output network.application_protocol 直接複製值
cs1Label、cs1 additional.fields cs1Label 中的鍵,cs1 中的值
cs2Label、cs2 additional.fields cs2Label 中的鍵,cs2 中的值
cs3Label、cs3 additional.fields cs3Label 中的鍵,cs3 中的值
cs4Label、cs4 additional.fields cs4Label 中的鍵,cs4 中的值
cs5Label、cs5 additional.fields cs5Label 中的鍵,cs5 中的值
cs6Label、cs6 additional.fields cs6Label 中的鍵,cs6 中的值
cs7Label、cs7 additional.fields cs7Label 中的鍵,cs7 中的值
cfp1Label、cfp1 additional.fields cfp1Label 中的鍵,cfp1 中的值
cfp2Label、cfp2 additional.fields cfp2Label 中的鍵,cfp2 中的值
cfp3Label、cfp3 additional.fields cfp3Label 中的鍵,cfp3 中的值
cfp4Label、cfp4 additional.fields cfp4Label 中的鍵,cfp4 中的值
cn1Label、cn1 additional.fields cn1Label 的鍵,cn1 的值
cn2Label、cn2 additional.fields cn2Label 中的鍵,cn2 中的值
cn3Label、cn3 additional.fields cn3Label 中的鍵,cn3 中的值
customer_label security_result.detection_fields 已併入偵測欄位
destination_translated_address target.nat_ip 直接複製值
device_name_not_present, Enhetsnavn principal.hostname 如果 Device_name 不為空白,則為該值,否則為 Enhetsnavn
deviceExternalId about.asset.asset_id 串連的一部分
devicePayloadId additional.fields 以 devicePayloadId 做為鍵,並複製值
deviceTranslatedAddress about.nat_ip 直接複製值
device_vendor about.asset.asset_id 串連的一部分
device_product about.asset.asset_id 串連的一部分
device_version metadata.product_version 直接複製值
device_event_class_id、event_name metadata.product_event_type 如果兩者皆存在,則串連為 [%{device_event_class_id}] - %{event_name},否則為 device_event_class_id 或 event_name
device_process_name about.process.command_line 直接複製值
device_vendor metadata.vendor_name 直接複製值
device_product metadata.product_name 直接複製值
dhost target.hostname 直接複製值
dmac target.mac 直接複製值
dntdom target.administrative_domain 直接複製值
dpid target.process.pid 直接複製值
dproc target.process.command_line 直接複製值
dst target.asset.ip 直接複製值
dst_ip target.ip 直接複製值
duid target.user.userid 擷取 grok 後的 temp_duid 值
duser target.user.user_display_name 直接複製值
dvchost about.hostname 直接複製值
deviceNtDomain about.administrative_domain 直接複製值
dvcmac about.mac 如果 MAC 有效,則為 dvcmac 的值
dvc_mac about.mac 如果 MAC 有效,則為 dvc_mac 的值
eventId additional.fields 鍵為 eventId,已複製值
eventid additional.fields 鍵為 eventId,值來自 eventid
externalId metadata.product_log_id 直接複製值
externalID_value metadata.product_log_id 直接複製值
file_full_path metadata.event_type 如果 file_full_path 不為空白,則設為 PROCESS_UNCATEGORIZED
fileHash about.file.sha256 如果不是雜湊,則直接複製值;否則為 about.file.full_path
filePath about.file.full_path 直接複製值
fileType about.file.mime_type 直接複製值
flexString1Label、flexString1 additional.fields flexString1Label 的鍵,flexString1 的值
flexString2Label、flexString2 additional.fields flexString2Label 中的鍵,flexString2 中的值
fname additional.fields 鍵為 fname,值已複製
已產生 metadata.event_timestamp 已使用日期比對 yyyy-MM-ddTHH:mm:ss 轉換
Generert metadata.event_timestamp 已使用日期比對 yyyy-MM-ddTHH:mm:ss 轉換
Group_name principal.group.group_display_name 直接複製值
Gruppenavn principal.group.group_display_name 如果 Group_name 為空,則值來自 Gruppenavn
infection_channel_label security_result.detection_fields 已併入偵測欄位
network.received_bytes 如果不是 0,則轉換為 uinteger
IPv6_Address target.ip 如果不是「-」,則合併
ipv6 target.ip 如果不是「-」,則合併
mac principal.mac 直接複製值
mac_address target.mac 直接複製值
mac_address about.mac mac_address 的值
中繼資料 中繼資料 直接重新命名
msg metadata.description 直接複製值
msg_data_2 security_result.description 直接複製值
mottatt_not_present、Mottatt metadata.collected_timestamp 已使用日期比對 yyyy-MM-ddTHH:mm:ss 轉換
網路 網路 直接重新命名
oldFilePath src.file.full_path 直接複製值
oldFileSize src.file.size 已轉換為 uinteger
old_permissions src.resource.attribute.permissions 直接複製值
operasjon_label security_result.detection_fields 已併入偵測欄位
operation_label security_result.detection_fields 已併入偵測欄位
out network.sent_bytes 如果不是 0,則轉換為 uinteger
permission_label security_result.detection_fields 已併入偵測欄位
權限 about.resource.attribute.permissions 直接複製值
主體 主體 直接重新命名
principal_ip principal.ip 直接複製值
principal_role principal.user.attribute.roles 已併入角色
protocol_number_src network.ip_protocol 直接複製值
已接收 metadata.collected_timestamp 已使用日期比對 yyyy-MM-ddTHH:mm:ss 轉換
原因 security_result.summary 直接複製值
要求 target.url 直接複製值
requestClientApplication network.http.user_agent 直接複製值
requestMethod network.http.method 直接複製值
resource_Type_label target.resource.attribute.labels 已合併到標籤
rt @timestamp 使用各種日期格式和時區調整項轉換
security_result security_result 直接合併
security_result_token security_result 直接合併
嚴重性 security_result.severity 如果值介於 [0,1,2,3,LOW],請設為 LOW;如果值介於 [4,5,6,MEDIUM,SUBSTANTIAL,INFO],請設為 MEDIUM;如果值介於 [7,8,HIGH,SEVERE],請設為 HIGH;如果值介於 [9,10,VERY-HIGH,CRITICAL],請設為 CRITICAL
shost principal.hostname 如果不是 IP,則直接複製值,否則為 principal.ip
shost principal.ip 如果是 IP,則直接複製值
shost_present principal.machine_id_present 設為 true
smac principal.mac 格式化後直接複製的值
sntdom principal.administrative_domain 直接複製值
sourceDnsDomain target.asset.hostname、target.hostname 透過 grok 從 sourceDnsDomain 取得的值,並傳送至 tar_host
sourceServiceName principal.application 直接複製值
sourceTranslatedAddress principal.nat_ip 直接複製值
sourceTranslatedPort principal.nat_port 已轉換為整數
spid principal.process.pid 直接複製值
sproc principal.process.command_line 直接複製值
spt principal.port 如果不是 0 或 {srcPort},則會轉換為整數
src principal.asset.ip 直接複製值
src_ip principal.ip 直接複製值
srcaddr principal.ip 直接複製值
spyware_Grayware_Type_label security_result.detection_fields 已併入偵測欄位
suser principal.user.user_display_name 如果不是以 { 開頭,則直接複製值
suid principal.user.userid 直接複製值
目標 目標 直接重新命名
target_ip target.ip 直接複製值
target_role target.user.attribute.roles 已併入角色
temp_data 用於 grok 模式
temp_dhost target.hostname 直接複製值
temp_duser target.user.user_display_name 直接複製值
temp_duid target.user.userid grok 後 temp_duid 的值
threat_probability_label security_result.detection_fields 已併入偵測欄位
tillatelse_label security_result.detection_fields 已併入偵測欄位
type_label security_result.detection_fields 已併入偵測欄位
使用者 target.user.userid 直接複製值
Bruker target.user.userid 如果使用者為空白,則使用 Bruker 的值
使用者名稱 principal.user.userid 直接複製值
Virus_Malware_Name security_result.threat_name 如果 Spyware 為空,則使用 Virus_Malware_Name 的值
間諜軟體 security_result.threat_name 直接複製值
Unknown_Threat security_result.threat_name 如果 Virus_Malware_Name 為空,則值來自 Unknown_Threat
_hash about.file.sha256 直接複製值
__message security_result.description 如果值有效,則直接複製
_metadata.customer security_result.detection_fields 金鑰為「客戶」,已複製值
_metadata.proxy.address principal.hostname、principal.asset.hostname 直接複製值
_metadata.source.address principal.hostname、principal.asset.hostname 直接複製值
_metadata.source.port principal.port 已轉換為整數
_metadata.source.type security_result.detection_fields 以型別做為鍵,值已複製
_metadata.timestamp.producer_process metadata.event_timestamp 已使用日期比對 yyyy-MM-ddTHH:mm:ss.SSSZ 轉換
act security_result.action_details 直接複製值
act security_result.action 如果 act 位於 [accept, notified] 或 outcome 為 REDIRECTED_USER_MAY_PROCEED 或 categoryOutcome 為 Success 或 cs2 為 Allow,則設為 ALLOW;如果 act 為 deny/blocked 或 outcome 為 BLOCKED 或 categoryOutcome 為 Failure 或 cs2 為 Denied,則設為 BLOCK;如果 outcome 為 Failure,則設為 FAIL
動作 security_result.action 直接複製值
應用程式 app_protocol_src 直接複製值
app_protocol_src network.application_protocol 將 app_protocol_src 轉換為大寫並對應後的值
categoryOutcome security_result.action 動作的條件式部分
cs2 security_result.action 動作的條件式部分
cs5 additional.fields cs5Label 中的鍵,cs5 中的值
cs7 additional.fields cs7Label 中的鍵,cs7 中的值
destinationTranslatedAddress target.nat_ip 直接複製值
destinationTranslatedPort target.nat_port 已轉換為整數
deviceDirection network.direction 設為 0 代表「INBOUND」,設為 1 代表「OUTBOUND」
device_event_class_id metadata.product_event_type 串連的一部分
duid target.user.userid grok 後 temp_duid 的值
dvcmac about.mac 格式化後 dvcmac 的值
event_name metadata.product_event_type 串連的一部分
event_name metadata.event_type 如果位於 [LogSpyware, LogPredictiveMachineLearning],請設為 SCAN_UNCATEGORIZED
fileHash about.file.sha256 如果為雜湊,則直接複製值,否則為 about.file.full_path
Mottatt metadata.collected_timestamp 已使用日期比對 yyyy-MM-ddTHH:mm:ss 轉換
結果 security_result.action 動作的條件式部分
通訊埠 principal.port 已轉換為整數
protocol_number_src network.ip_protocol 對應後 protocol_number_src 的值
proto protocol_number_src 直接複製值
嚴重性 security_result.severity 根據值範圍對應
shost principal.hostname 如果不是 IP,則直接複製值
act security_result.action 根據條件式邏輯設定
app_protocol_src network.application_protocol 從 app_protocol_src 對應
protocol_number_src network.ip_protocol 從 protocol_number_src 對應
Virus_Malware_Name security_result.threat_name 如果 Virus_Malware_Name 的值為
flexString2 event.idm.read_only_udm.network.email.subject 從變更記錄對應
version event.idm.read_only_udm.additional.fields 從變更記錄對應
device_product event.idm.read_only_udm.additional.fields 從變更記錄對應
cs1 event.idm.read_only_udm.security_result.rule_name 從變更記錄對應
cs4 event.idm.read_only_udm.metadata.url_back_to_product 從變更記錄對應
suser event.idm.read_only_udm.network.email.from 從變更記錄對應
duser event.idm.read_only_udm.network.email.to 從變更記錄對應
fname event.idm.read_only_udm.target.file.names 從變更記錄對應
fileHash event.idm.read_only_udm.target.file.md5 從變更記錄對應
flexString1 event.idm.read_only_udm.about.file.sha256 從變更記錄對應
observer_application event.idm.read_only_udm.observer.application 從變更記錄對應
syslog_severity_label event.idm.read_only_udm.additional.fields 從變更記錄對應
start event.idm.read_only_udm.security_result.first_discovered_time 從變更記錄對應

變更記錄

查看這個剖析器的變更記錄

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