iT邦幫忙

2026 iThome 鐵人賽

DAY 25
0
佛心分享-IT 人職涯歷練

從 IT 工程師到資安領域系列 第 25 篇

Day 25|有 Firewall、EDR 還不夠嗎?從單點防禦到縱深防禦

  • 分享至 

  • xImage
  •  

前面幾天,我陸續談到了 Firewall、EDR、NDR、SIEM、Threat Intelligence、WAF,甚至 Deception。

如果把這些東西全部列出來,很容易產生一個問題:

企業真的需要這麼多資安設備嗎?

Firewall 已經可以阻擋不應該進來的流量,EDR 也可以監控端點上的異常行為,那為什麼還需要 NDR、SIEM,甚至其他偵測機制?

以前我可能會從每套產品的功能開始解釋。

但實際做 SOC 一段時間後,我覺得真正的問題並不是:

「企業到底需要多少資安產品?」

而是:

「如果其中一層沒有發現問題,還有沒有其他地方能夠看到?」

這也是我今天想談的 Defense in Depth(縱深防禦)。


什麼是 Defense in Depth?

https://ithelp.ithome.com.tw/upload/images/20260924/20183856Hv7p9H2FMi.png

Defense in Depth 中文通常稱為「縱深防禦」。

如果用比較簡單的方式理解,它並不是:

Firewall + EDR + WAF + NDR + SIEM = 安全

也不是資安產品買得越多,防禦能力就一定越好。

我比較傾向把它理解成:

在不同層次建立互補的防禦、偵測與應變能力。當其中一層沒有阻止或發現問題時,其他層仍有機會發現、限制或處理事件。

例如一個企業環境可能同時存在:

https://ithelp.ithome.com.tw/upload/images/20260924/20183856nuxY5djB4t.png

這些設備看到的事情並不完全相同。

Firewall 可以控制網路連線。

WAF 可以檢查送往網站或 API 的 HTTP/HTTPS 請求內容,依據規則偵測或阻擋常見的網頁攻擊。

EDR 可以觀察端點上的 Process、Command Line、File 等行為。

NDR 可以從網路流量觀察設備之間的通訊與異常行為。

SIEM 則把不同來源的 Log、Alert 與事件集中起來,讓 SOC 有機會找到它們之間的關聯。

所以真正的重點不是:

「哪一套最好?」

而是:

「當某一套沒有看到時,其他地方還能不能看到?」


如果其中一層沒看到呢?

假設今天有一台 Client 出現問題。

Firewall 沒有阻止最初的行為,而這台設備剛好也沒有安裝 EDR。

如果只依賴這兩層,我們可能就會失去一部分能見度。

但後來 NDR 發現:

Client
  ↓
大量掃描 Internal Network
  ↓
TCP 445
TCP 3389

這時候至少還有另外一個角度告訴 SOC:

這台設備的網路行為可能有問題。

但我要特別強調:

看到這個現象,並不能直接證明前面的 Firewall 或 EDR 已經「失效」。

因為我們還不知道事件真正發生的原因。

可是它至少代表:

前一層沒有阻止或沒有觀察到的行為,後面的偵測機制仍然有機會發現。

只要能及時看到,就還有機會進行後續調查與處置。

這也是我認為縱深防禦很重要的地方。


Firewall 顯示 Block,事情就結束了嗎?

再換另外一個情境。

假設 NDR 發現某台內部 Client 正在大量掃描 Server:

https://ithelp.ithome.com.tw/upload/images/20260924/201838568OZ1FAX0KD.png

那是不是代表:

「Firewall 已經擋掉了,所以沒事了?」

我不會這樣判斷。

因為 Block 解決的是這一次行為能不能執行成功的問題,但沒有回答為什麼這台 Client 會做這件事情。

如果一台平常正常使用的 Client,突然開始大量掃描 445、3389,我真正想知道的是:

它為什麼突然開始掃描?

可能是正常的弱點掃描。

可能是管理人員進行測試。

也可能是設備本身真的出現問題。

所以即使 Firewall 已經成功 Block,我還是會繼續調查。

這裡其實可以拆成幾個不同的資安概念。

Prevention(預防/阻擋)

讓不應該發生的行為無法繼續,例如 Firewall Block。

Detection(偵測)

發現環境裡正在發生值得注意的行為。

Investigation(調查)

進一步確認為什麼會發生,以及它跟其他事件有沒有關係。

三件事情彼此有關,但並不是同一件事。

阻擋成功,不代表造成這個行為的原因已經被處理。


某一層成功,不代表整體防禦成功

假設後來真的確認:

這台 Client 已經遭到入侵。

但是 Firewall 成功阻止它繼續連線 Server 區。

我會認為 Firewall 這一層成功發揮作用。

但我不會因此直接說:

「整個防禦成功了。」

因為攻擊者不一定只有一條路可以走。

例如今天攻擊者取得了一組 VPN 帳號。

如果這個帳號原本就具有合法的 VPN 存取權限,單純依賴外部來源的網路阻擋就可能不足。

這時候還要繼續看:

  • VPN 登入是否正常
  • MFA 是否存在
  • 登入時間是否異常
  • 登入後存取了哪些設備
  • 是否出現異常網路行為
  • 是否使用不合理的權限
  • EDR 是否看到異常 Process
  • SIEM 是否能把相關事件串起來

所以縱深防禦真正要考慮的並不是:

「第一層能不能永遠把攻擊擋住?」

而是:

「如果攻擊者真的越過第一層,後面還有什麼?」


這也是 Assume Breach 的概念

這裡還會碰到另外一個專有名詞:

Assume Breach(假設已遭入侵)

它不是說:

「反正一定會被駭,所以前面的防禦都不用做。」

而是在設計防禦時,不只思考:

「怎麼不讓攻擊者進來?」

還要多問一個問題:

「如果攻擊者已經進來了,我怎麼發現他?又怎麼限制他繼續移動?」

例如攻擊者已經進入某台 Client。

接下來可能開始探索內部網路。

這時候 Network Segmentation 可以限制它能直接接觸的範圍,Firewall 可以阻擋不允許的連線,NDR 可以觀察異常的網路行為,EDR 可以觀察端點上的程序活動。

最後再透過 SIEM,把不同地方看到的證據集中起來。

這時候每一層做的事情不同,但彼此可以互補。


有產品,不代表真的形成縱深防禦

但這裡還有另一個問題。

假設今天企業已經有:

Firewall
WAF
VPN
MFA
EDR
NDR
SIEM

是不是代表:

「我的縱深防禦已經做完了?」

我認為還不能這樣說。

因為設備存在,只代表基本的防護面可能已經建立。

如果每一套產品的資料都各自在自己的平台裡:

Firewall → Firewall Console

WAF → WAF Console

EDR → EDR Console

NDR → NDR Console

VPN → VPN Log

但是這些資訊沒有被整合,也沒有分析人員去找彼此之間的關係,最後很可能變成:

每一套產品都有看到一些東西,但沒有人看到完整的事情。

這也是 SIEM 與 SOC 很重要的價值之一。

把不同來源的資料集中只是第一步。

後面還要進行 Correlation(關聯分析),才能開始判斷:

這幾個 Alert 到底是不是同一件事情?


Coverage Gap 與 Detection Gap

這裡也可以順便帶到兩個在資安裡很常出現的概念:

Coverage Gap(涵蓋缺口)

代表某個區域、設備或資料來源沒有被安全控制涵蓋。

例如某台 Server 根本沒有部署 EDR。

Detection Gap(偵測缺口)

則是即使有監控能力,現有的 Rule、Use Case 或偵測方式仍沒有把某種行為辨識出來。

這兩個問題都可能造成:

攻擊真的發生了,但某一層沒有看到。

縱深防禦的價值之一,就是不要把整個偵測能力押在單一控制上。


人本身也是防禦的一部分

縱深防禦如果只談設備,我覺得還是不完整。

因為攻擊者不一定要突破 Firewall。

有時候,他只需要讓一個人相信他。

例如透過 Social Engineering 取得使用者的 VPN 帳號密碼。

甚至在某些情況下,攻擊者可能成功通過原本看起來合法的登入流程。

這時候要從系統上直接判斷:

「現在操作這個帳號的人,到底是不是本人?」

其實很困難。

SOC 能做的,可能是繼續觀察:

登入時間
   ↓
登入來源
   ↓
登入後存取哪些 Server
   ↓
有沒有突然掃描大量設備
   ↓
有沒有使用不合理的權限

也就是從後續的時間與行為尋找異常。

所以:

合法帳號成功登入,不代表後面的所有行為都應該被信任。

這其實也開始碰到 Zero Trust 與 Continuous Verification 的概念,不過這部分之後有機會再深入討論。


Technology 有了,People 與 Process 呢?

https://ithelp.ithome.com.tw/upload/images/20260924/20183856udes3EVjwC.png

做到這裡,我覺得縱深防禦可以再往上一層理解。

它不應該只有 Technology。

還要包含:

Technology

Firewall、WAF、EDR、NDR、SIEM、MFA 等不同安全控制,提供不同的防禦與觀察能力。

People

使用者需要有基本的資安意識。

SOC 分析人員也需要有能力判斷 Alert、Context 與不同證據之間的關係。

Process

真的發生事件時:

誰要處理?

誰要通知?

多久內要通知?

事件要怎麼 Escalation?

確認攻擊後要怎麼 Response?

這些事情都需要事先定義。


設備有告警,但沒有人處理呢?

這也是我實際做 SOC 時很重視的一件事情。

假設今天:

Firewall 有 Log。

EDR 有 Alert。

SIEM 也成功產生告警。

但是最後真的發生資安事件後才發現:

當時根本沒有人處理。

這時候問題可能已經不是:

「為什麼產品沒有偵測到?」

因為產品其實看到了。

真正需要回頭檢查的,反而可能是 SOC Process。

例如:

  • Alert 有沒有被大量噪音淹沒?
  • Triage 的優先順序有沒有問題?
  • 值班人員有沒有看到?
  • 通知流程有沒有正常運作?
  • Escalation 是否有明確定義?
  • 分析人員是否知道這種事件應該怎麼處理?

尤其 SOC 服務通常還會有 SLA(Service Level Agreement)。

也就是某些等級的事件,需要在規定時間內完成確認或通知。

如果設備已經成功偵測到事件,但 SOC 沒有在 SLA 規定時間內完成必要處理與通知,那就不能再把問題單純歸因於偵測設備。

技術設備負責讓我們看見問題,而人與流程負責讓看見的問題真正被處理。


我現在怎麼理解縱深防禦

如果以前看到:

Firewall
EDR
NDR
SIEM
MFA
Deception

很容易把它理解成一堆不同的資安產品。

但現在我會比較在意的是:

https://ithelp.ithome.com.tw/upload/images/20260924/20183856nZAuBWg851.png

真正的縱深防禦,不是產品越多越好。

而是當某一層失效時:

下一層能不能看到?

看到之後:

能不能把不同證據關聯起來?

確認有問題之後:

有沒有人在正確的時間內進行處理?

所以如果要用一句話整理我現在對 Defense in Depth 的理解:

縱深防禦不是把資安產品一層一層堆上去,而是讓人、流程與技術形成互補的防線;當其中一層沒有阻止或發現問題時,其他層仍有機會把事件接住。

SOC 並不是坐在螢幕前看一堆 Alert。

而是把原本分散在不同防禦層的訊號、證據與人員串起來,讓企業真的有能力從發現問題、判斷問題,到最後處理問題。


上一篇
Day 24|Alert 出現之後呢?SOC 分析人員怎麼判斷事件
下一篇
Day 26|POC 是什麼?POC 的重要性
系列文
從 IT 工程師到資安領域 共 30 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言