未來已來,只是不均衡地分佈在當下
大家好,我是菜農,歡迎來到我的頻道。
本文共 6471字,預計閱讀 20 分鐘
信任是一個很奢侈的東西,無論人與人,亦或是網路之間。在網路監控無處不在的時代,誰值得信任反而成為了最大的難題。那麼既然無跡可尋,何不放棄信任,走向零信任?
在本篇中我們將掌握零信任的基本概念 與 技術構成。零信任是一種全新的安全架構,但其核心元件是基於身份與訪問管理技術、終端裝置環境風險評估技術、基於屬性的訪問控制模型、基於機器學習的身份分析技術等構建。字面上看來沒什麼值得激動人心的技術,但卻步步引人深入,因此這篇權當入門,重在解決 "是什麼" 的問題。
一、基本認識
1)由來
零信任也可稱為 零信任網路、 零信任模型等,這個概念最早是由 Join Kinddervag 於 2010 年提出的,他當時是 Forrester 的分析師。Join Kinddervag 發現傳統的基於邊界的網路完全架構存在缺陷,通常被認為 可信 的內部網路充滿了威脅,信任
被過度濫用。因此他創造出了零信任的概念,從不信任,始終在校驗 便是零信任的核心思想。
2)VPN
在講零信任之前,我們先從 VPN 進行過渡。在你的認知範圍內什麼是 VPN ?
通常來說,VPN 是作為企業遠端辦公的常用工具,我們常常深夜在家辦公的時候,首先要做的便是連線上 VPN,只有當連線上 VPN 那一刻起,你才化身最樸實無華的打工人!
VPN 好用嗎?好用。它為無數個打工人提供了在家辦公的便捷,實現了無數人在家加班的 “追求”。當然,受益的不只是我們,VPN 對於駭客來說也十分好用,它為駭客突破層層邊界防禦提供了捷徑。怎麼理解?請看下圖!
正常來說,我們要訪問內部應用只有在內網的情況下才能正常進行,因為有個防火牆防護著外部流量
那 VPN 在其中就相當於是個後門通道
因此說有了這個通道,方便了員工,也方便了駭客。VPN更加註重加密傳輸和遠端接入等方面,更適合於遠端辦公和跨地區訪問等應用場景。雖然VPN可以對使用者進行身份認證,但是其內部網路仍然是一個信任網路,可能會受到內部攻擊。
無可厚非,VPN也並非如此不堪,它的特點也同樣矚目:
- 加密傳輸: VPN可以將資料進行加密,確保傳輸的隱私安全,避免被惡意攻擊者竊取或篡改。
- 隧道化傳輸: VPN透過在公共網路上建立虛擬通道來傳輸資料,提高了資料傳輸的效率和穩定性,並防止資料被嗅探。
- 遠端接入: VPN可以使使用者在不同的地方遠端接入公司的內部網路,從而實現遠端辦公。
- 身份認證: VPN可以對使用者進行身份認證,保證只有授權的使用者可以接入網路。
3)相比傳統
在傳統的網路安全架構中是基於網路邊界防護的。企業構建網路安全體系時,首先把網路劃分為 外網、內網 和 DMZ區 等不同的安全區域,然後在網路邊界上透過部署防火牆、WAF和IPS等網路安全技術手段進行重重防護。
那麼這種架構的最大特點便是:認為內網比外網更安全,預設了對內網中的人、裝置、系統和應用的所有信任,從而忽視對內網安全措施的加強,因此當駭客攻破內外網間的防護後,就如入無人之地,透過 回連 的方式,一步步試探最高許可權的機器進行內部系統的攻破。
在美國 Verizon 公司的《2017年資料洩露調查報告》中便明確提出,造成企業資料洩露的原因主要有兩個:一是外部攻擊,二是內部威脅 。
在此之前,我們簡單瞭解下傳統安全網路架構(如防火牆、入侵檢測系統等)存在的幾個弊端:
- 單一防禦模式:傳統安全網路架構採用單一的防禦模式,只能檢測已知的攻擊模式,無法有效應對未知的攻擊行為。
- 侷限性:傳統安全網路架構只能保護內部網路,無法保護移動裝置和外部網路。
- 難以管理:傳統安全網路架構需要對每個網路裝置進行管理和維護,增加了管理難度和成本。
- 無法應對高階威脅:傳統安全網路架構無法應對複雜的高階威脅,如APT攻擊、零日漏洞等。
- 難以擴充套件:傳統安全網路架構難以適應企業快速擴張和變化的需求,無法實現快速部署和升級。
零信任網路便是對網路安全架構進行了正規化上的顛覆,引導安全體系架構 從網路中心化走向身份中心化
這是一個很重大的改變,零信任所依賴的身份認證與訪問控制能力通常由身份與訪問管理系統(IAM)提供,現代身份管理技術是零信任的技術根基,因此從技術上看,零信任本質上就是利用現代身份管理技術實現對人、裝置、系統和應用的全面、動態、智慧的訪問控制。
零信任架構引導人們更加關注"保護面"而不是"攻擊面
4)架構模型
何為零信任?它是建立在以下5個基本假定之上:
- 網路無時無刻不處於危險的環境中
- 網路中自始至終存在外部或內部威脅
- 網路的位置不足以決定網路的可信程度
- 所有的裝置、使用者和網路流量都應當經過認證和授權
安全策略必須是動態的,並基於儘可能多的資料來源計算而來
傳統網路安全結構的結構圖如下
我們可以清楚地看到在結構圖中將不同的網路劃分成了不同的區域,不同區域之間使用防火牆進行隔離。每個區域都被授予某種程度的信任,它決定了哪些網路資源允許被訪問。這種結構的特點是它具備了強大的縱深的防禦能力。而如果突破了某個邊界的防火牆,那麼在某個特定區域便如魚得水。
我們一開始就介紹了,零信任模式是完全打破傳統的安全架構,那麼也就是說 基於網路位置劃分割槽域消失了 。 既然劃分割槽域不存在了,那麼VPN的作用自然而然也不存在。VPN 的作用就是對使用者進行身份認證並分配IP地址,然後建立加密的傳輸隧道。使用者的訪問流量透過隧道傳輸到遠端網路,然後進行資料包的解封裝和路由。
零信任結構模型
在圖中可以看出零信任架構是由兩部分組成,控制平面 和 資料平面。控制平面
其中零信任架構的支撐系統稱為控制平面。訪問受保護資源的請求首先會經過控制平面處理,包括裝置和使用者的身份認證和授權。細粒度的控制策略也在這一層進行,控制平面可以基於組織中的角色、時間或裝置型別進行授權。如果使用者需要訪問安全登記更高的資源,那麼就需要執行更高強度的認證。
只有當控制平面完成檢查,確認請求具備合法的授權,它就會動態配置資料平面,接收 來自該客戶端(且僅限該客戶端) 的訪問流量。資料平面
資料平面的作用是轉發網路流量,它需要高速處理資料包,因此其處理邏輯相對簡單,通常使用專用硬體。控制平面可以看作是網路裝置的大腦,系統管理員用它來配置管理網路裝置,因此控制平面會隨著策略的變化而變化。
控制平面能夠影響資料平面的變化,這種機制非常重要。因為資料平面的系統通常是攻擊者進入網路的入口,所以資料平面與控制平面之間的介面必須非常清晰,確保資料平面中的系統不會因為被攻陷而導致在網路內橫向移動。資料平面和控制平面系統之間的互動請求必須使用私有PKI系統進行身份認證和加密,以確保接收方的可信度。控制平面和資料平面之間的介面應當類似於作業系統核心空間和使用者空間之間的介面,為了防止提權攻擊,兩個系統之間的互動需要進行高度隔離。
二、核心概念
1)信任管理
既然零信任模型認為一切都是不可信的。那麼該如何建立信任?因此信任管理就是零信任網路的一個重要功能。從不信任中建立信任,聽起來是那麼的矛盾
在某些情況下,人們甚至可能連自己都無法完全信任,但是至少可以確信所採取的行動的確是自己所為。因此,零信任網路中的信任往往源自於系統管理員。
如果一個公司是數十人的規模,那麼每次訪問搜權都經由系統管理員審批,這看起來並不是很繁瑣。但如果使用者劇增,成千上百人,乃至上萬的體量,這個時候信任管理的工作量就會非常大,而系統管理員的角色崗位總會是那麼幾個,不會與之配比,那麼再讓系統管理員進行日常的許可權信任多少有點胡來。
那麼就由此出現了 信任委託
。
(管理員信任某個特定的系統,這個系統又可以信任另一個系統,從而形成信任鏈)
信任委託 非常重要,藉助信任委託,人們可以構建自動化系統,在無須人為干預的情況下,以安全可信的方式管理大規模增長的零信任網路。
返回給系統管理員的這一串信任通常被稱為 信任鏈(Trust Chain)
系統管理員被稱為 信任錨(Trust Anchor)
- 威脅模型
在設計安全架構中的第一步便是 定義威脅模型, 威脅模型是用來描述潛在的攻擊者及其能力、資源以及意圖攻擊的目標。威脅模型通常會明確攻擊者的範圍,並按照攻擊者的能力高低進行排序,以便於人們按照從易到難的順序,合理部署相應的攻擊緩解措施。 威脅模型 作為一種機制,可以幫助我們聚焦於某個具體的威脅,並仔細思考緩解該威脅的具體措施。
網路安全領域中有多種威脅建模的方法,以下這幾種都是流行的建模工具
- STRIDE
- DREAD
- PASTA
- Trike
- VAST
一般情況下,零信任網路遵循網際網路威脅模型來描述安全態勢,規劃緩解威脅的措施。因為零信任網路需要控制網路中的斷點裝置,所以它對網際網路威脅模型進行了擴充套件,充分考慮了端點裝置被攻陷的情形。
零信任網路中的威脅模型主要包括以下幾種: - 內部威脅:指企業內部員工、合作伙伴或供應商等人員對企業的機密資訊或系統資源進行攻擊或洩密的威脅。這種威脅模型在零信任網路中尤為重要,因為零信任網路假設所有使用者都是不可信的,包括內部使用者。
- 外部威脅:指來自外部網路的攻擊或入侵,如駭客攻擊、惡意軟體、網路釣魚等。這種威脅模型在零信任網路中同樣需要考慮,因為任何人都可以透過網際網路訪問企業的系統和資料。
- 區域性網路威脅:指在區域性網路內的攻擊或入侵,如ARP欺騙、DNS汙染等。這種威脅模型在零信任網路中同樣需要考慮,因為區域性網路內的攻擊可以導致整個網路的癱瘓。
- 物理威脅:指物理裝置被盜、損壞或篡改等威脅。在零信任網路中,物理裝置的安全同樣重要,因為物理裝置的安全問題可能導致整個網路的癱瘓。
社會工程學攻擊:指攻擊者透過欺騙、詐騙、偽裝等手段獲取使用者的密碼、賬號等資訊的威脅。在零信任網路中,社會工程學攻擊同樣需要被防範,因為攻擊者可能透過偽造身份或欺騙使用者獲取訪問企業系統的許可權。
面對這麼多威脅,零信任模型僅需要保證用於認證和授權操作的資訊的機密性,如儲存在磁碟上的憑據的機密性。至於對端點系統安全性的進一步要求,如全盤加密等,是其他安全策略需要考慮的問題。- 可變信任
信任管理是網路安全管理中非常困難的工作。確定網路中的人員和裝置應該如何搜權是相當耗費時間,並且人員和裝置又在不斷變化,這會直接影響網路的安全態勢。
定義信任策略這項工作通常由安全工程師手工完成,系統管理員可以根據使用者在組織中的職責為其分配相應的許可權。但是這種基於角色的策略系統導致管理員不得不製造出許多信任池,從而削弱了網路的整體安全態勢
因此信任池問題凸顯了傳統網路信任管理的根本性缺陷:安全策略動態性不足,無法應對日益變化的網路安全威脅。 因此這種信任管理需要是動態可變的,也就是 可變信任。
在零信任網路中,可變的信任是指在任何時刻,網路中的任何裝置、使用者或應用程式都不應被預設信任。相反,每個實體都必須經過身份驗證和授權,以確定其是否有權訪問特定資源或執行特定操作。這種信任是根據實時評估和監控不同實體的行為和活動而建立的,因此可以隨時改變。
例如,如果一個使用者的行為開始表現出異常或可疑的活動,他的信任級別可能會下降,從而限制他對資源的訪問。因此,在零信任網路中,信任是基於行為和上下文評估的,而不是基於預設的信任級別或身份。
當然了,凡事沒有絕對性,這種模式也不是沒有缺點的。其中一個問題是,單一的評分值是否足以保護所有的敏感資源。使用者的信任評分能夠基於歷史行為而降低,同樣也可以基於歷史的可信行為而增加。那麼,攻擊者是否有可能透過在系統中慢慢建立信任,從而獲得更高的訪問許可權呢?
2)網路代理
網路代理是指在網路請求中用於描述請求發起者的資訊集合,一般包括使用者、應用程式和裝置這三類實體資訊。在傳統網路架構中,一般是對這些實體進行單獨授權。但是在零信任網路中,策略是基於這3類實體資訊的組合整體進行制定。使用者、應用程式和裝置資訊是訪問請求密不可分的上下文,將其作為整體進行授權,可以有效地應對憑證竊取等安全威脅。
網路代理屬於授權範疇,它參與授權決策,不屬於認證範疇,但認證的結果和狀態會在網路代理的資料中有所體現。控制平面基於網路代理對訪問請求進行授權,這些系統是零信任網路中授權的首要執行者。在某些場景中,要實現細粒度的授權,需要把網路代理的部分資訊從控制平面傳遞給資料平面,本章也探討了在暴露網路代理資訊的時候如何保證資料的隱私安全。
代理可以作為一種安全閘道器,位於網路邊界上,過濾和檢查所有進出企業網路的流量。以下是零信任網路中使用網路代理的一些示例:
- 訪問控制:網路代理可以根據使用者身份、裝置健康狀況、訪問的應用程式等因素,限制使用者對特定資源的訪問。
- 資料保護:代理可以加密和解密資料,以便在資料在網路上傳輸時保護資料的隱私和完整性。
- 應用程式保護:代理可以檢查應用程式的行為和活動,以確保它們符合企業的安全策略和規則。
- 威脅檢測:代理可以監測所有進出企業網路的流量,檢測並阻止潛在的安全威脅。
安全審計:代理可以記錄所有進出企業網路的流量,並生成詳細的安全審計報告,幫助企業瞭解網路活動和事件。
3)授權
全篇都圍繞著 授權 兩個關鍵詞,由此可知 搜權 是零信任網路中當仁不讓的核心機制和流程。
零信任授權體系架構包括 4 個核心元件- 策略執行元件
- 策略引擎
- 信任引擎
資料儲存系統
- 策略執行元件
在邏輯上處於授權資訊流的第一道關口,負責攔截訪問請求並透過呼叫策略引擎完成授權決策。
策略執行元件有兩大職責:- 和策略引擎互動完成授權決策,比如:負載均衡器收到一個請求時需要透過授權並獲悉此請求是否被允許
授權決策結果的強制執行。
策略執行元件的位置非常重要,作為零信任網路在資料平面的實際控制點,它也可以被稱為策略執行點,需要確保其部署位置儘量靠近終端,否則信任“收縮”到策略執行元件之後,零信任的安全性可能會受到影響。實際實現中,策略執行點可以作為客戶端元件在系統中大量部署,這一點和其他元件不同,其他元件大多數是作為服務元件進行部署。- 策略引擎
策略引擎是零信任授權模型中進行授權決策的元件,它接收來自策略執行元件的授權請求,並和預先制定好的策略進行比較,決定請求是否被允許,並將決策結果返回策略執行元件進行強制執行。
在策略引擎和策略執行元件之間繼續進行程式級隔離還是必須的。
這邊我們需要了解的是零信任模型和傳統網路安全在策略上的差異點主要體現在用於定義策略的控制機制不同。 零信任策略不基於網路具體資訊(如IP地址或網段),而是基於網路中的邏輯元件來執行策略,這些邏輯元件可能包括以下幾種:- 網路服務
- 裝置終端分類
使用者角色
- 信任引擎
在零信任網路裡,信任引擎是對特定的網路請求或活動進行風險分析的系統元件,其職責是對網路請求及活動的風險進行數值評估,策略引擎基於這個風險評估進行進一步的授權決策,以確定是否允許此次訪問請求。
信任引擎透過分析請求者的身份,行為和上下文來評估安全風險。它使用多種技術,如身份驗證,行為分析,威脅情報和上下文分析來進行評估。如果請求者的安全風險被評估為高,則信任引擎可以拒絕該請求或者對其進行限制。
信任引擎的目的是提高網路安全性,防止未經授權的訪問和攻擊,同時也不影響合法使用者的網路使用。它是零信任網路安全策略的核心部分,並且是實現零信任網路的關鍵。- 資料儲存系統
資料儲存系統負責儲存關鍵資訊,如請求者的身份資訊,行為資訊,上下文資訊等。主要功能包括:
- 資料儲存:儲存網路中的資料,以便隨時可以使用。
- 資料管理:管理網路中的資料,以保證資料的完整性和一致性。
- 資料安全:透過加密,訪問控制等技術來保護儲存的資料不被未經授權的訪問。
- 資料分析:分析儲存的資料,以識別潛在的安全威脅和風險。
資料儲存系統是零信任網路中的重要組成部分,它提供了一個安全的儲存環境,以確保網路資料的安全性。它的安全性非常重要,因為它儲存的資料可用於評估請求者的安全風險,並決定是否允許該請求。
零信任網路一般具備多類按照功能劃分的資料庫,其中主要分為兩大類:清單庫 和 歷史庫 。 清單庫是記錄資源當前狀態的權威資料來源,使用者清單庫存放所有的使用者資訊,裝置清單庫則記錄公司所有在冊的裝置的最新資訊。
三、來個小結
零信任網路(Zero Trust Network)的核心概念包括:
- 零信任原則:在零信任網路中,不信任任何網路上的任何人或裝置,無論它們是否位於內部網路。
- 身份驗證:識別請求者的身份是零信任網路的關鍵組成部分。透過對請求者的身份進行驗證,可以確保請求者是合法使用者。
- 行為分析:透過分析請求者的行為,可以識別潛在的攻擊行為。
- 威脅情報:透過分析威脅情報,可以識別潛在的威脅。
- 上下文分析:透過分析請求者的上下文,可以識別潛在的安全風險。
- 多重認證:使用多重認證,可以確保請求者的身份是真實的。
- 動態訪問控制:透過動態訪問控制,可以根據請求者的安全風險評估結果來決定是否允許該請求。
實時監控:透過實時監控,可以及時發現潛在的安全威脅,並對其進行響應。
當然了,本篇僅僅是為讀者起個開頭,繼續往下深究的話我們可以瞭解如何建立使用者信任、如何建立應用信任以及如何建立流量信任等,這些都是值得探索的。零信任網路名詞很新,不過核心技術卻是日常經常接觸的。
以上便是本篇的所有內容,如果覺得對你有幫助的小夥伴不妨點個關注做個伴,便是對小菜最大的支援。不要空談,不要貪懶,和小菜一起做個吹著牛X做架構
的程式猿吧~ 我們們下文再見!今天的你多努力一點,明天的你就能少說一句求人的話!
我是小菜,一個和你一起變強的男人。?
微信公眾號已開啟,菜農曰,沒關注的同學們記得關注哦!