網路映射為圖
網路拓樸是幾何圖
每個電腦網路都有一個拓樸:節點(裝置)和邊(連接)的幾何排列。拓樸決定了故障容差、頻寬和安全特性。
五種基礎拓樸:
- 星形:一個中央集線器,所有節點連接到它。簡單、便宜。單點故障:如果集線器故障,一切都會故障。N 個節點 N-1 條邊。
- 環形:節點形成一個圓,每個節點連接到兩個鄰居。單個斷裂分割網路。N 個節點 N 條邊。
- 匯流排:所有節點共享單個主幹纜線。便宜但容易發生衝突。一個主幹故障導致一切故障。
- 網狀:每個節點連接到其他每個節點。最大冗餘。具有 N 個節點的完全網狀網路有 N(N-1)/2 條邊:即 O(N²) 連接。昂貴但高度容錯。
- 樹形:階層式分支。N-1 條邊(最小連接圖)。根故障分割子樹。
實際網路是混合的:具有星形拓樸訪問層、樹形路由層次結構和關鍵節點處環形拓樸冗餘的網狀核心。
拓樸和故障容差
一個資料中心有 20 台伺服器。運營團隊正在討論內部網路的完全網狀拓樸和星形拓樸之間的選擇。
暴露的幾何
攻擊面 = 幾何邊界
在網路安全中,攻擊面是攻擊者可以與系統互動的所有點的總集合。從幾何角度考慮:您的系統是一個形狀,其邊界上的每個點都是潛在的進入點。
攻擊面的組成部分:
- 網路面:每個公共 IP 地址上的每個開放埠。一個有 5 個開放埠的伺服器在其網路邊界上有 5 個點。
- 應用程式面:每個 API 端點、每個 URL 路由、每個表單輸入。一個有 200 個路由的網路應用程式有 200 個應用程式層邊界點。
- 人類面:每個擁有認證的員工、每個網路釣魚目標。社會工程攻擊針對人類邊界。
- 物理面:每個伺服器室門、每個 USB 埠、每個網路插孔。
幾何原理:安全性通過最小化信任區域和不信任區域之間的邊界來改善。防火牆定義一個幾何邊界:內部流量是信任的,外部流量不是。該邊界上的洞越少,攻擊面越小。
這解釋了為什麼最小權限原則是幾何的:給每個組件它運作所需的最小邊界曝露。
減少攻擊面
一家公司運營一個具有以下曝露的網路應用程式:12 個公共 API 端點、所有 50 台伺服器上的 SSH 開放(埠 22)、一個具有公共 IP 的資料庫,以及可從網際網路存取的管理員面板。
攻擊圖和威脅樹
威脅建模使用圖論
安全專業人員將威脅建模為有向圖。這些圖的結構揭示了攻擊路徑、高價值目標和防禦優先級。
攻擊圖:節點代表系統狀態(或個別系統)。有向邊代表可能的轉換:漏洞利用、橫向移動、權限提升。攻擊路徑是通過此圖從外部節點到目標節點的遍歷。
威脅樹:一種特化的圖結構。根節點是攻擊者的目標(例如,'竊取資料庫')。子節點是實現父目標的方法。葉子是具體的攻擊行為。AND 節點要求所有子節點都成功;OR 節點只需要一個成功。
圖中心性識別高價值目標:
- 介數中心性:許多最短路徑通過的節點。在網路中,這是瓶頸:控制它,您就控制了流量流。防火牆或域控制器通常具有高介數中心性。
- 度中心性:有許多連接的節點。在攻擊圖中,可從許多其他節點到達的節點是高價值橫向移動目標。
最短路徑 = 最可能的攻擊向量:攻擊者針對最少步數進行優化。從網際網路到資料庫的攻擊圖中的最短路徑是最可能的攻擊路由。防禦意味著使該最短路徑更長:添加攻擊者必須遍歷的節點(安全控制)。
攻擊圖分析
考慮一個具有以下結構的網路:網際網路 → 網路伺服器 → 應用程式伺服器 → 資料庫。網路伺服器還連接到檔案伺服器。應用程式伺服器連接到備份伺服器。攻擊者的目標是資料庫。
橢圓曲線密碼學使用幾何
橢圓曲線:幾何變成加密的地方
橢圓曲線密碼學 (ECC) 是罕見的地方之一,其中安全性字面上建立在幾何運算之上。
橢圓曲線是滿足以下方程式的點 (x, y) 的集合:y² = x³ + ax + b(加上特殊的'無窮遠點')。在實數上,這看起來像一條光滑、對稱的曲線。
點加法:使密碼學發揮作用的幾何運算:
1. 在曲線上取兩個點 P 和 Q。
2. 通過 P 和 Q 畫一條直線。
3. 該直線正好與曲線相交於一個其他點 R'。
4. 跨 x 軸反射 R' 以獲得 R = P + Q。
此'加法'運算形成一個數學群:它是結合的,有一個恆等元素(無窮遠點),每個點都有一個逆元素。
標量乘法:將點 P 添加到自身 k 次得到 kP。向前進行(在給定 k 和 P 時計算 kP)很快:使用倍增相加的 O(log k) 運算。向後進行(在給定 P 和 kP 時查找 k)是橢圓曲線離散對數問題 (ECDLP):對於大型曲線,認為在計算上是不可行的。
這種不對稱性是現代 TLS 安全基礎。您的瀏覽器的 HTTPS 連接可能使用 ECDHE(橢圓曲線 Diffie-Hellman 臨時):雙方通過在橢圓曲線上交換點來同意共享密鑰,任何竊聽者都無法在不解決 ECDLP 的情況下恢復密鑰。
為什麼幾何造就好的密碼學
ECC 以比 RSA 小得多的密鑰大小提供相同的安全性。256 位 ECC 密鑰提供大約與 3072 位 RSA 密鑰相同的安全性。