iT邦幫忙

2026 iThome 鐵人賽

DAY 22
0

看到 Malcolm 的 Components 頁面,第一個容易產生的誤解是:

「Malcolm 是不是把很多開源工具全部塞在 Docker 裡?」

從官方列出的元件來看,確實包含大量不同工具,但它們並不是單純堆在一起,而是分別承擔「資料取得、分析、儲存、偵測、資產管理、身分驗證、部署」等不同工作。Malcolm 的價值就在於把這些元件串成一個可以實際使用的 Network Traffic Analysis 平台。Malcolm


一、流量與封包分析:先搞清楚「網路發生了什麼」

Malcolm 的第一層,是負責取得與分析網路流量。

其中最重要的三個元件是 Arkime、Zeek 與 Suricata。

元件 主要工作 白話理解
Arkime PCAP 處理、Session 搜尋、分析、匯出 深入看「這條連線發生了什麼」
Zeek 網路流量分析、產生大量網路 Logs 描述「網路上發生了什麼」
Suricata IDS、Threat Detection 判斷「這裡是不是可能有威脅」

Arkime 又分成 capture 與 viewer:前者負責流量擷取及離線 PCAP 解析,後者提供瀏覽器介面進行視覺化與 Payload 分析。Zeek 則負責將網路活動轉成可分析的 Logs;Suricata 負責 IDS 與威脅偵測。Malcolm

因此這三者不是在做同一件事情。

比較容易理解成:

Zeek 負責「看懂網路行為」
Suricata 負責「發現可疑行為」
Arkime 負責「回頭深入調查連線與封包」

這也是 Malcolm 第一個核心。


二、資料儲存與分析:把「流量資料」變成可以搜尋的證據

光把流量分析出來還不夠,下一個問題是:

「分析完之後,資料放在哪裡?」

這就是 OpenSearch 的角色。

官方將 OpenSearch 定義為網路流量 Session Metadata 的索引、搜尋與分析引擎;OpenSearch Dashboards 則提供視覺化、Dashboard、報表與額外分析功能。Malcolm 也使用 OpenSearch 的 Anomaly Detection、Alerting,以及 ML Commons 等能力。Malcolm

所以這一層可以理解成:

Zeek / Suricata / Arkime 產生資料

↓

OpenSearch 儲存與建立索引

↓

OpenSearch Dashboards / Arkime Viewer 提供分析介面

這裡有一個很重要的觀念:

Malcolm 並不是把所有 PCAP 都丟進搜尋引擎。

真正大量被搜尋與分析的,主要是網路 Session Metadata;完整 PCAP 則由 Arkime 等元件處理。官方的元件定位就是把不同類型資料與分析介面串起來。Malcolm

因此從架構角度看:

PCAP 是證據

Metadata 是搜尋線索

OpenSearch 是搜尋與分析基礎


三、資料處理、威脅偵測與情資:從「看到資料」進一步變成「知道哪裡值得注意」

Malcolm 並不只是收資料,它還負責資料處理、威脅偵測與額外資訊補強。

其中包括:

Logstash 與 Filebeat:負責 Zeek Logs 的資料接收、解析、Enrichment 與索引。Malcolm

Strelka:針對 Zeek 擷取出的檔案進行即時、容器化的檔案掃描;並可利用 YARA、Capa、ClamAV 做檔案分析。Malcolm

Threat Intelligence:可從 MISP、TAXII、Google、Mandiant 等來源取得 IOC,提供 Zeek Intelligence Framework 使用。Malcolm

另外 Malcolm 還整合了:

  • YARA Rules
  • MITRE ATT&CK-based Analytics
  • JA4+ Fingerprinting
  • ICS Protocol Analyzers
  • DNS entropy 等分析工具

這代表 Malcolm 的工作邏輯已經不只是:

「把網路資料收進來。」

而是逐漸形成:

收集 → 解析 → 補充 → 偵測 → 關聯 → 調查

所以當一個可疑流量出現時,分析師不只看到 IP 和 Port,還可以利用 Threat Intelligence、Fingerprint、檔案掃描與既有偵測邏輯增加判斷依據。Malcolm


四、資產管理與平台安全:讓「IP」變成「企業設備」

這一層很容易被忽略,但對企業環境非常重要。

Malcolm 使用 NetBox 來補充 Network Asset Information。官方說明 NetBox 用於以 Asset Inventory 資訊 Enrich 網路 Log Data。Malcolm

這意味著:

原本看到:

10.10.20.15

可能只是一個 IP。

加入資產資訊之後,可以進一步知道:

10.10.20.15 = ERP Server

這對 SOC 與 Incident Response 很重要。

因為資安事件判斷不能只看:

「這個 IP 有沒有異常?」

而要看:

「這是哪一種設備?」

「它的重要性是什麼?」

「它屬於哪個網段?」

「它是不是核心系統?」

除了 NetBox,Malcolm 還使用 PostgreSQL、Valkey、Keycloak、OpenResty 等平台元件:

元件 主要用途
NetBox 網路與資產資訊
PostgreSQL 設定與狀態資料
Valkey 記憶體快取與 Session 資訊
Keycloak 身分與存取管理
OpenResty HTTPS、Reverse Proxy
nginx-auth-ldap LDAP 驗證
Fluent Bit Network Sensor Metrics Forwarding

這說明一件事:

Malcolm 並不是「一個分析程式」,而是一個有身分驗證、Web、安全與資料服務的完整平台。Malcolm


五、部署與架構:為什麼 Malcolm 可以從單機做到大型環境?

Malcolm 官方目前把 Container 作為重要部署方式。

可以使用 Docker 或 Podman;若是分散式或 Cloud / On-Prem Kubernetes 環境,也可以使用 Kubernetes 與 Helm Chart。Malcolm

這裡要注意一個細節:

Malcolm 並不是「所有元件一定要裝在同一台機器」。

官方整體架構允許:

Network Sensor

↓

Zeek / Suricata / PCAP

↓

Malcolm

也可以讓 Malcolm 接收外部 Sensor 傳來的 Metadata。

因此可以形成不同規模:

小型環境

單機 Malcolm:

PCAP / Zeek Logs
↓
Malcolm
↓
OpenSearch / Arkime

中大型企業

Network Sensor
↓
Zeek / Suricata / PCAP
↓
Malcolm Cluster / Central Platform
↓
OpenSearch / Arkime
↓
SOC

而官方也指出,若使用 Rootless Podman,Malcolm 無法直接在本機網路介面進行流量擷取,但仍可接收 Network Sensor 傳送過來的 Metadata。Malcolm

所以部署選擇不是單純「Docker 還是 Podman」的問題,還會牽涉:

流量在哪裡抓?

分析在哪裡做?

資料在哪裡存?

規模是否需要拆開?


六、擴充能力:Malcolm 真正的價值其實在「整合」

如果只看前五層,很容易認為 Malcolm 是一套固定產品。

但從 Components 頁面可以看出,Malcolm 還整合了大量外部套件、Zeek Packages、Threat Intelligence 與分析框架,例如 MITRE ATT&CK、ICS Protocol Analyzer、JA4+、YARA Rules、CAPEv2 相關規則等。Malcolm

所以 Malcolm 的真正特色不是:

「自己發明了一個很大的引擎。」

而是:

把許多成熟的資安開源能力,整合成一套可以直接部署與操作的平台。

官方自己對 Malcolm 的描述也很直接:這些開源工具本身都已經存在,而 Malcolm 提供的是它們之間的互通與整合框架,讓整體能力大於單一工具的總和。Malcolm


這 6 大項可以怎麼記?

如果要把 components.html 最後濃縮成一張企業簡報可以使用的表格,我會整理成:

大項 核心問題 主要元件
1. 流量分析 網路發生了什麼? Zeek、Suricata、Arkime
2. 儲存與搜尋 資料怎麼保存、搜尋? OpenSearch、OpenSearch Dashboards
3. 偵測與情資 哪些活動值得注意? Strelka、YARA、Capa、Threat Intelligence、JA4+
4. 資產與安全 這個 IP 到底是哪台設備? NetBox、Keycloak、PostgreSQL、Valkey、OpenResty
5. 部署與運作 這些元件怎麼組成平台? Docker、Podman、Kubernetes、Fluent Bit
6. 擴充與整合 怎麼持續增加偵測能力? Zeek Packages、MITRE ATT&CK、ICS、YARA Rules、外部情資

這 6 項其實就可以取代官方 Components 頁面上一長串的元件名稱。


這件事該怎麼看?

Malcolm Components 頁面真正想表達的,不是「我們用了多少開源工具」。

更值得注意的是它的分工:

第一層:取得與理解流量

第二層:儲存與搜尋資料

第三層:做偵測與威脅分析

第四層:補充資產與身分資訊

第五層:負責平台部署與運作

第六層:持續擴充情資與分析能力

因此,如果要把 Malcolm 當成企業資安架構的一部分來看,比較準確的定位是:

Network Traffic Analysis + Network Security Monitoring + Network Forensics 的整合平台。

它不是單純的 Zeek、Suricata、PCAP Viewer,也不是傳統意義上的 SIEM;它更像是把「網路可視性」與「網路事件調查」串在一起的工作平台。這個定位與 Malcolm 官方對自身功能與元件的描述是一致的。Malcolm


上一篇
[Day 22 ] Malcolm Documentation 架構總覽
下一篇
[Day 23 ] Container Images & Installer ISO 兩種安裝方式到底差在哪裡
系列文
從情資收集到資安鑑識:30 天建構自動化威脅情資與鑑識平台 共 35 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言