架構
何謂零信任架構
過去兩三年,「零信任」這四個字大概已經出現在你看過的不只一份簡報裡。資訊主管提過,稽核提過,客戶寄來的供應商問卷上還特別有一欄。你點頭,但心裡也清楚:沒有人真的跟你解釋過那是什麼。
這篇文章想做的就是這件事。不談技術規格,也不列產品功能,只回答一個問題——公司每年花在資安上的錢不算少,為什麼現在所有人都說要「改成零信任」?這是換一個名詞,還是真的有東西變了。
先從一棟大樓說起
想像公司的資安架構就是一棟辦公大樓。
門口有警衛。訪客登記、刷卡、進門。刷完卡之後呢?他就在「裡面」了。他可以走去茶水間、走進會議室、搭電梯上財務部那一層。真正嚴格的檢查,從頭到尾只發生在門口那一次。
這聽起來很粗糙,但二十年前它完全合理。那時候員工每天九點進辦公室、伺服器就在地下室的機房、資料不會離開這棟樓。牆的位置很清楚,守住門就等於守住一切。
防火牆和 VPN,本質上都是這個模型的產物。它們就是那道門。
但現在,沒有人待在大樓裡了
問題不在於這道門不夠牢,而在於它守的那棟樓,人已經走光了。
員工在家裡、在客戶端、在高鐵上,用自己的手機收信。系統一半還在機房,一半在雲端,還有一堆是刷卡訂閱來的 SaaS——你的人資系統、你的 CRM,實體上根本不在你手上。委外的顧問、代理商、來保養設備的廠商,每一個都需要碰到公司裡的某些東西。
那牆該畫在哪裡?這個問題現在已經沒有好答案了。
- 舊模型的那道牆
- 要穿過牆才回得到公司的連線
- 完全不經過那道牆的連線
圖說文字版
並列比較邊界模型當初設計時的環境,與同一道牆今天實際面對的環境。
左側:以前,要保護的東西都在樓裡
- 一道牆圈住全部,牆上只有一個出入口:門禁或 VPN。
- 牆內是員工每天進辦公室、伺服器在地下室機房、資料不會離開這棟樓。
- 牆的位置很清楚,守住這道門就等於守住全部。
右側:現在,樓還在,人已經不在了
- 牆的位置沒有變,但牆內只剩下「還留在機房的系統」。
- 牆外散落著四種常態:在家工作的員工、出差中或在客戶端的人、委外顧問與維修廠商,以及雲端與 SaaS(人資、CRM)。
- 前三者的連線必須穿過那道牆才回得到公司。
- 第四種連線(人直接連上雲端與 SaaS)完全不經過那道牆。
- 結論:牆還在原地,要保護的東西已經不在牆裡了。
不過這還不是最麻煩的部分。
真正出事的方式,是有人借到了一張卡
你可以回想一下這幾年比較大的資安事件,幾乎沒有一件,是攻擊者硬把牆打穿的。
實際上通常長這樣:某個員工點了一封看起來很像會計部寄的信;或是某組密碼在別的網站外流,而他在公司剛好用同一組;或是有人半年前離職了,帳號一直沒停用;再不然,就是某家配合多年的小廠商先被入侵,攻擊者從那邊走進來。
這些情況的共同點是,攻擊者拿到的是合法的憑據。他是刷卡進來的。警衛沒有理由攔他,因為從門禁系統的角度看,他就是一個正常的員工。
那進門之後會發生什麼事?
在舊模型裡,他能走到哪裡,取決於網路是怎麼切的,而不是取決於這個帳號原本應該碰得到什麼。一個業務助理的帳號,本來只該看得到報價單;但因為人已經「在裡面」,他所在的那段網路連得到什麼,他就連得到什麼——包括那台沒人記得、系統五年沒更新的檔案伺服器。
資安界給這一段過程取了個名字,叫「橫向移動」。你可以把它想成:一個人進了大樓之後,開始一間一間試門把。
而幾乎所有上新聞的事件,損失都不是發生在他刷卡進門的那一刻,是發生在他開始試門把之後。
- 攻擊者拿著合法憑據走過的路徑
- 唯一一次真正的檢查
- 驗證通過(如設計般運作)
圖說文字版
一次典型的入侵過程:攻擊者取得合法憑據、正常通過門禁,然後在內部網路逐一嘗試每一台主機。
憑據從哪裡來(四個常見來源)
- 一封很像會計部寄的信。
- 在別的網站外流、而員工在公司也用同一組的密碼。
- 離職半年、帳號一直沒停用。
- 先被入侵的小廠商。
通過門禁
- 四個來源都指向同一件東西:一組合法的憑據。
- 門禁看到的是正常員工,因此驗證通過——這一步完全按照設計運作。
進入內部網路之後
- 攻擊者沿著走廊往下走,逐一嘗試兩側的主機:檔案伺服器、ERP、人事系統、客戶資料庫、備份主機,以及那台沒人記得的舊主機。
- 六台主機依序被觸及,沒有任何一步需要再次通過驗證。
- 進門之後沒有第二道判斷,他能走到哪取決於網路怎麼切。
- 損失不在他刷卡的那一刻,在他開始一間一間試門把之後。
零信任要處理的,就是這一段。
所以零信任到底改了什麼
它把「你在哪裡」這件事,從安全判斷裡拿掉了。
在零信任的架構下,「已經在公司網路裡面」不構成任何信任基礎。你每要碰一個系統,系統都會重新問一次:你是誰?你用的是哪台設備?那台設備現在的狀態安不安全?你此時此刻有沒有權限碰這個東西?
而且權限也不再是「可以進內網」這種等級。它綁在「某個人 + 某台設備 + 某個系統」這個組合上——這個人用這台筆電,可以存取這三套系統,其他的不行。
最後一點比較反直覺,但也是差別最大的地方:沒被授權的系統,對這個人來說是看不見的。
傳統做法是攻擊者看得到門,只是打不開,所以他可以慢慢試、慢慢找哪一扇的鎖壞了。零信任的做法是——那條走廊上根本沒有門。看不見的東西,沒辦法嘗試。
- 每一次存取都重跑的四個問題
- 這個身分被授權的唯一一條路
- 未授權:連探測都沒有回應
圖說文字版
零信任下的一次存取:同一個人每要碰一個系統,都被重新問四個問題,通過的只有被授權的那一個系統。
發起請求的人
- 同一個人——也可能是一組已經被盜的帳號。
每一次存取都重新問的四個問題
- 你是誰?
- 用的是哪一台設備?
- 那台設備現在安全嗎?
- 此刻有沒有權限碰這個?
結果
- 被授權的 ERP:連線建立。
- 客戶資料庫與財務系統:看不到,也連不到;探測得不到任何回應。
- 權限綁在「這個人 + 這台設備 + 這個系統」上,不是「可以進內網」。
- 沒被授權的系統,對他而言不是鎖著的,是不存在的。
這三件事加起來的結果是:一組帳號被盜,損失範圍就等於那組帳號原本被授權的範圍。它不會因為「人已經進到內網」而擴大。
順帶一提,這不是哪家廠商發明的行銷詞。美國國家標準暨技術研究院有一份 SP 800-207,是這套原則最常被引用的正式定義,各國政府和監管單位的相關要求,大多是以它為基礎寫的。
那對公司來說,值多少
這才是你真正關心的部分。我們把它拆成五件事,每一件都會實際反映在損益或風險上。
它把「出一次事」的規模壓下來
先講一個不太好聽、但必須先講的前提:資安事故沒辦法歸零。任何跟你說可以的,都不值得信。
真正能管理的,是單一事故的最大損失。
零信任改變的是事故的形狀。從「一個帳號被盜,全公司系統跟著曝險」,變成「一個帳號被盜,那個帳號本來能做的事曝險」。
- 這次事故實際波及的範圍
- 這個帳號原本被授權的範圍
圖說文字版
同一組被盜的帳號放在兩種架構下,比較單一事故的波及範圍。兩側都是同樣的十二套系統:檔案、ERP、客服、財務、人事、備份、郵件、客戶資料、監控、產線、報表、官網。
左側:舊模型,範圍由網路決定
- 事故從被盜帳號所在的那一套系統開始,向外一圈一圈擴散。
- 十二套系統全部被波及,擴散不會在任何地方停下來。
- 範圍取決於網路怎麼切,而不是取決於這個帳號原本的權限。
- 結果是一個估不出來的風險。
右側:零信任,範圍由授權決定
- 同樣的帳號、同樣的起點,但外圍畫著一條事先定義好的界線:這個帳號原本的授權範圍。
- 擴散在那條界線停住,只波及界線內的兩套系統,其餘十套未受影響。
- 可及範圍等於那個帳號本來就有的授權。
- 結果是一個估得出來、說得清楚、保得了險的風險。
對經營層來說,這是把一個估不出來的風險,換成一個估得出來的風險。而估得出來,才談得上投保、才談得上向董事會說明、才談得上寫進風險矩陣裡。
遠距、分公司、委外,不再是每次都要特批的例外
現在多數公司的做法是:誰需要遠端存取,就開一個 VPN 帳號給他。
但 VPN 給出去的是「進入內網」的權限。給一個外部顧問 VPN,實質上等於讓他站在你公司的網路裡面,然後你只能希望他不會亂走,或希望當年的防火牆規則有設對。
零信任的授權單位是單一系統,所以「這家廠商,三個月,只能碰這一套測試環境」是一個標準操作,不是一個需要特別開會評估的例外。新開分公司、併購之後兩邊系統要打通、臨時組一個跨公司的專案團隊——都是同一套邏輯、同一個流程。
這一項的價值其實不在資安,在速度。
稽核那些問題,會變得好回答很多
如果你們在金融、醫療,或是某條製造供應鏈上,應該對這幾個問題很熟:誰、在什麼時候、存取了什麼?這個權限是誰核准的?那個人離職之後多久被移除?
在舊架構下,答案散在防火牆規則、AD 群組、還有各系統自己的帳號表裡。要湊出一份能交出去的報告,通常要一個人花好幾天手動比對。
零信任因為每一次存取都會經過同一個授權判斷點,這些紀錄是架構自然產生的副產品,而不是事後生出來的報表。
這一項的效益常常被低估。它省下來的是資安人員跟稽核來回的時間——而那是很貴的時間。
你不必再賭「內部網路是乾淨的」
舊架構有一個沒寫出來的假設:牆裡面是安全的。
這個假設一旦破掉,就沒有第二道防線了。而它破掉的方式比想像中多——一台在家中毒的個人筆電接上辦公室 Wi-Fi、一台當年為了測試架起來、後來沒人記得的主機、廠商來維修時帶進來的那台工程筆電。
零信任從一開始就不假設裡面是乾淨的。所以上面這些狀況,不會直接演變成事故。
動不了的老系統,可以先保護起來
幾乎每間公司都有幾套碰不得的東西:產線上的控制主機、十幾年前導入的 ERP、原廠早就不支援的設備。
它們通常同時是最脆弱的一環,而且大家心裡都有數。問題是換掉的成本和停機風險太高,年年提、年年排不進去。
零信任的保護可以加在這些系統「前面」,不需要動系統本身。這件事的意義是:資安改善不必再跟汰換舊系統的預算綁在一起。
而那個綁定,通常就是資安專案真正卡住的地方。
幾個常聽到、但不太對的說法
「零信任是一個產品,買了就有了。」
它是一種架構原則,不是一個料號。而且落地方式有好幾種,效果差很多。市面上不少產品貼著零信任的標籤,但實作上仍然是把所有流量集中經過廠商自己的節點——那跟換一家 VPN 廠商的差別,比簡報上看起來小很多。
評估的時候問一句就夠了:我們的資料,實際上會經過誰?
「這是個大工程,要停機、要重做網路。」
如果廠商是這樣建議的,那值得多問幾句。
比較成熟的做法是分階段:先挑一兩個最敏感、或最常被外部存取的系統納進來,跑三到六個月,看實際狀況再擴大。第一階段通常不需要動現有的網路架構。
「我們公司沒那麼大,還用不到。」
規模小其實更脆弱。沒有專職的資安團隊、沒有二十四小時盯著螢幕的人、一次勒索事件就可能讓整間公司停擺兩個禮拜。
零信任的好處恰恰在於它降低對「有人在盯著」的依賴——把安全性放進架構裡,而不是放在某個人的責任心上。
如果你只有一次會議的時間
那就問這四個問題。它們很快就會問出你們現在真正的狀態:
- 如果今天有一組員工的帳號密碼外流,攻擊者最多能碰到哪些系統? 如果答案是「要看他從哪一段網路連進來」,那就是舊模型。
- 外部廠商現在怎麼存取我們的系統?權限到期之後怎麼收回? 如果收回靠的是有人記得,那就是風險。
- 從外面掃描我們公司,有哪些位址和連接埠會回應? 這份清單就是攻擊面。它應該要很短,最好是空的。
- 如果要證明某個離職的人,離職之後沒有再碰過任何系統,要花多久? 這一題的答案,直接就是你們的稽核成本。
最後
零信任不是一道更嚴格的門禁。它是決定不再用「門」來定義安全這件事。
當人、設備、系統早就都跑到牆外面去了,繼續加固那道牆的邊際效益只會愈來愈低。零信任做的,是把判斷依據從「你在哪裡」換成「你是誰、用什麼設備、要碰什麼」。
這是架構層次的改變,也是為什麼它值得經營層自己弄懂一次,而不是當成資訊部門的一個採購案。
說到底,你買的不是「不會出事」。你買的是——出事的時候,範圍是可以預期的。
在風險管理上,這是完全不同的兩件事。