前幾天一直提到 SIEM 收集不同的 Log ,但是通常企業中的設備都很多,
每種設備提供的資訊都不太一樣。
最初接觸 SIEM 的時候並無多想這麼多,
只是知道基礎的像是,Firewall 可以送 Syslog、Switch 可以 Mirror Network
Traffic,其他像 Windows、EDR 等設備也都有自己的 Log 可以收。
但當你真的開始分析的時候,才會慢慢注意到一些事情:
同一個事件,如果只看一種資料來源,看到的可能只是其中一部分。
例如之前的經歷來說,今天 SIEM 告訴我,這個內部設備有跟一個外部 IP 連線,
且這個 IP 在 VirusTotal 上面顯示的是惡意的評分,那真的只是知道 Source IP、
Destination IP 就能夠作判別了嗎?這台真的就受到攻擊了?
其實不一定。
所以這篇是來聊聊我自己習慣的資料來源:
Firewall、Network Traffic 以及 EDR,另外也會簡單提一下 Proxy。
它們分別可以看到什麼?又可以幫助我們做什麼事情

Firewall(防火牆)應該算是企業裡面很常見的資安設備。
最基本的概念,就是在不同網路之間依照設定的 Policy,決定哪些流量可以通過、哪些流量需要被阻擋。
例如最常見的情況:

實際企業環境當然不會只有這麼簡單,也可能透過 Firewall 切分不同網路區域,但這邊先用最簡單的說明稍微理解就好。
Firewall 本身可以提供很多資訊,而在分析 Firewall Log 時,我自己比較常注意的包含:
不同廠牌以及不同功能所產生的 Log 欄位不一定相同,但至少可以先幫助我們回答幾個問題:
誰跟誰產生連線?
什麼時間連線?
使用什麼 Port 或 Service?
Firewall 最後是 Allow 還是 Deny?
現在的 Firewall 當然也不只是單純控制 IP 跟 Port,像是現在常見的 NGFW(Next-Generation Firewall)通常還可能包含 Application Control、IPS、URL Filtering、VPN、Threat Prevention 等功能,實際能使用哪些功能則會依產品以及 License 有所不同。
不過這邊有一個我覺得需要分清楚的地方:
Firewall 本身能做到的事情,跟 Firewall Log 送進 SIEM 後可以提供的資訊,不完全是同一件事情。
SIEM 收到的是 Firewall 所記錄下來的資訊,而 Firewall 本身則可以進一步執行阻擋、Policy Control 等動作。
這個差別在後面談到 SOAR 自動化時還會再碰到。
這也是我自己很常使用的資料來源。
前面有提到,我第一次接觸 Stellar Cyber 時,除了 Firewall Syslog 之外,第二個開始收的就是 Switch Mirror 過來的 Network Traffic。
概念大概像這樣:

透過 Switch Mirror、SPAN 或 TAP 等方式,可以將需要觀察的 Network Traffic 提供給 Sensor 或 NDR 類型的設備進行分析。
那 Network Traffic 跟 Firewall Log 有什麼不一樣?
Firewall Log 是 Firewall 自己記錄下來的事件與連線資訊,而 Network Traffic 則是從網路通訊本身去觀察。
依照取得的是 Packet、Flow,還是經過系統解析後的 Metadata,以及產品本身的解析能力,我們可能看到:
這也是 NDR(Network Detection and Response)主要關注的地方。
簡單來說,NDR 是從網路行為的角度去尋找可能的異常或威脅。
例如某台平常不太跟其他設備通訊的主機,突然開始跟大量內部設備建立連線;或者某台設備出現和平常不同的網路行為,這些都可能成為分析時值得注意的地方。
當然,現在很多網路流量都是加密的,所以並不是取得 Network Traffic 就代表什麼內容都看得到。
但即使 Payload 是加密的,依照產品能力以及實際取得的資料,仍可能從 IP、Port、Protocol、DNS、TLS Metadata、流量特徵等資訊去觀察網路行為。
這也是為什麼我自己在做事件分析的時候,很習慣把 Network Traffic 當成其中一個重要的資訊來源。
EDR(Endpoint Detection and Response)則是另外一個完全不同的角度。
如果 Firewall 和 Network Traffic 主要讓我看到:
「這台設備在網路上做了什麼?」
那 EDR 比較像是在回答:
「這台設備裡面發生了什麼?」
依照不同 EDR 產品提供的 Telemetry,常見可能包含:

所以原本從 Firewall 看到的可能只有:
192.168.1.100
↓
xxx.xxx.xxx.xxx:443
找到 Host 之後,透過 EDR 就有機會再繼續往下:
Host
↓
User
↓
Process
↓
Command Line / File
↓
Network Connection
甚至有時候 Process Tree 本身就可以提供非常多資訊。
例如:

這時候跟單純看到:
Internal IP → External IP
能夠取得的 Context 就差非常多。
而 EDR 本身通常也不只是拿來「看 Log」。
依產品能力不同,還可能提供 Host Isolation / Containment、Kill Process、File Quarantine、IOC Search、Threat Hunting 等功能。
所以當 SIEM 判斷某個 Endpoint 可能真的有問題時,EDR 除了提供調查需要的資訊之外,也可能成為後續 Response 的其中一個工具。
除了前面三種之外,Proxy 也是企業環境中可能會碰到的資料來源。
簡單來說,Proxy 可以存在 Client 與外部 Web Service 之間:

因此 Proxy / Secure Web Gateway 相關的 Log,依照不同產品與架構,可能可以提供:
這時候它看到的角度又不太一樣。
例如 Firewall 可能告訴我:
192.168.1.100 → 1.2.3.4:443
但在適合的 Proxy 架構與記錄條件下,可能進一步看到:

所以在調查 Web 相關事件時,Proxy Log 也可能提供非常重要的資訊。
Proxy / Secure Web Gateway 本身依產品不同,也可能具備 URL Filtering、Category Filtering、Web Access Control、Malware Inspection、User-based Policy 等功能。
不過 HTTPS、TLS Inspection、部署架構以及產品設定,都會影響實際能看到的資訊,所以並不是有 Proxy 就代表所有 HTTPS 內容都可以直接看到。
而我自己過去實際分析事件時,使用比較多的組合還是 Firewall + Network Traffic + EDR。
這邊就分享一個我自己實際碰過的情況。
當時是在 SIEM 上看到一些 Alert,其中有外部的來源 IP 看起來不太正常。
如果只是看這個 Alert,最直接的想法可能就是:
這個 IP 有問題,那是不是代表這台設備被攻擊了?
但就像前面幾天提過的,後來我不太會只靠 IP Reputation 就直接判斷事件,會去多方確認。
所以當時先往 Network Traffic 去看,確認相關的網路流量。
接著再查看 Firewall Log,確認連線發生的時間、使用的 Service,以及這筆連線到底是從哪一台 Host 產生的。
確認 Host 之後,再往 EDR 查看這台 Endpoint 上當時發生了什麼事情。
最後才找到,這是一台業務使用的設備,上面有一些廣告插件產生了相關連線,然後廣告插件會綁住他的首頁。
整個調查過程如果簡化,大概就是:

如果當時只停在第一步:
「這個 External IP 被標記成惡意。」
那得到的資訊其實非常有限。
但隨著 Network Traffic、Firewall、EDR 一層一層往下看,原本只有一個 IP 的 Alert,才慢慢變成一件可以理解的事情。
所以如果現在要我很簡單地說明這幾種資料來源的差別,我可能會這樣理解:
| 資料來源 | 主要觀察角度 | 常見能看到的資訊 | 產品可能具備的能力 |
|---|---|---|---|
| Firewall | 網路連線與控制 | IP、Port、Protocol、Action、Service、Rule | Access Control、IPS、Application Control、VPN 等 |
| Network Traffic / NDR | 網路通訊與行為 | Flow、Session、Protocol、DNS、TLS Metadata 等 | Network Behavior Analysis、Threat Detection 等 |
| EDR | Endpoint 行為 | Process、User、Command Line、File、Hash、Network Connection | Detection、Host Isolation、Process / File Response 等 |
| Proxy / SWG | Web 存取 | User、Domain、URL、Category、Action 等 | URL Filtering、Web Access Control、Web Threat Protection 等 |
當然,這張表只是用來簡單理解不同資料來源的差別,實際可以看到什麼、可以做到什麼,還是會受到產品、License、部署架構以及設定方式影響。
我自己一開始接觸 SIEM 的時候,會覺得 Firewall Log、Network Traffic、EDR Log 就只是「不同地方收進來的資料」。
但後來實際開始處理事件後,我才慢慢理解,它們其實是在不同的位置看同一個企業環境。
Firewall 看到網路連線與控制。
Network Traffic 看到網路上的通訊與行為。
EDR 讓我們進一步看到 Endpoint 裡面發生什麼事情。
Proxy 則可以補上 Web 存取的資訊。
當這些資料都進到 SIEM 之後,真正有價值的地方並不是單純「我今天收了四種 Log」,而是事件發生時,我能不能利用這些不同角度的資訊,把原本零散的線索慢慢拼起來。
而當資料都已經準備好了之後,接下來還有另外一個問題:
這些不同來源的資料,到底是怎麼進到 SIEM,又是怎麼被處理的?
明天會再接再厲。