零信任三大技術之SDP

SDP概述

SDP Software Defined Perimeter(軟體定義邊界),2013 年由雲安全聯盟 CSA提出。

 

SDP 設計基本原則

1、資訊隱身:隱藏伺服器地址、埠,使之不被掃描發現

2、預認證:在連接伺服器之前,先認證用戶和設備的合法性

3、預授權:用戶只能看到被授權訪問的應用(最小許可權原則)

4、應用級的訪問准入:用戶只有應用層的訪問許可權,無網路級的准入

5、擴展性:基於標準協議,可以方便與其他安全系統集成

 

SDP三大組件

SDP控制器:SDP的大腦,主要進行主機認證和策略下發,還可以用於認證和授權SDP連接發起主機、配置到SDP連接接受主機的連接。

SDP連接發起主機:終端用戶設備或者可以被稱為SDP客戶端

SDP連接接受主機:SDP網關或者邊界

 

註:為了文章可讀以及比較容易理解,後面的SDP連接發起主機(IH)我將採用SDP客戶端來代替,使用SDP網關來代替SDP連接接受主機(AH)

 

1、SDP 控制器確定哪些SDP客戶端和SDP網關可以相互通訊。SDP控制器可以將資訊中繼到外部認證服務,例如認證地理位置和/或身份伺服器。

2、SDP客戶端與SDP控制器通訊用來請求它們可以連接哪些SDP網關列表。在提供資訊之前SDP控制器可以向 SDP客戶端請求硬體或軟體之類的資訊。

3、默認情況下SDP網關拒絕來自SDP控制器以外的所有主機的所有通訊。只有在SDP控制器下髮指令後,SDP網關才接受來自SDP客戶端的連接。

 

SDP 主要功能

基礎設施隱藏:終端用戶設備在通過身份驗證授權之前,SDP控制器和SDP網關不會響應任何連接請求。

減少Dos攻擊:面向互聯網的服務都處於SDP網關的後面,可以抵擋DOS攻擊,SPA可以保護SDP網關免受DOS攻擊。

檢測錯誤包:從任何其他主機到SDP客戶端的第一個數據包是SPA 數據包(或類似的安全構造)。如果SDP網關收到任何其他數據包,則將其視為攻擊。

防止越權訪問網路:設備只能訪問策略允許的特定主機和服務,不能越權訪問網段和子網。

應用程式和服務訪問控制:SDP 控制允許哪些設備和應用程式可訪問特定服務例如應用程式和系統服務。

 

註:SPA:單包授權,使未授權的用戶和設備無法感知或訪問。

 

SDP架構圖

 

 

 

SDP工作流程

1、一個或多個 SDP 控制器上線並連接到身份驗證和授權服務,例如 AM、 PKI 服務、設備驗證、地理位置、SAML、 OpenID、OAuth、LDAP、Kerberos、多因子身份驗證、身份聯盟和其他類似的服務。
2、一個或者多個SDP網關上線。它們以安全的方式連接SDP控制器並進行驗證。SDP網關不響應來自任何其他主機的通訊,也不會響應任何未許可的請求。
3、每個SDP客戶端會與SDP 控制器連接並進行身份驗證。(單包第一次)
4、SDP客戶端被驗證之後,SDP 控制器確定終端用戶設備被授權可以連接的SDP網關列表。(可以連哪些SDP網關)
5、SDP 控制器告知SDP網關接受來自SDP客戶端的通訊,並啟動加密通訊所需的任何可選策略。
6、SDP 控制器給SDP客戶端提供SDP網關列表,以及加密通訊所需的任何可選策略。
7、SDP客戶端向每個授權的SDP網關發起SPA,然後SDP客戶端和這些SDP網關創建雙向加密連接(雙向TLS認證)。(單包第二次)
8、SDP客戶端通過SDP網關並使用雙向加密的數據信道與資源通訊。

 

雙向TLS認證

       通常 TLS 為單向認證,通常都是 client 來校驗server的合法性,server端無法校驗client的合法性,這樣就會存在非法客戶端訪問的情況,無法保證終端設備針對伺服器端的可信,因此,在 SDP 協議中明確提出需要在通訊開始前使用雙向認證,即相互校驗,server需要校驗每個client,client也需要校驗server。

 

SDP網關-SDP控制器協議及其交互過程

 

 

 

SDP客戶端-SDP控制器協議及其交互過程

 

 

 

SDP客戶端與SDP網關建立連接並且交互數據過程

 

 

Tags: