分類
CISSP

容器化的安全原則(the security principles of containerization)

https://ithelp.ithome.com.tw/upload/images/20210625/20132160Q6Ws7TAFVV.jpg
-容器技術架構
容器映像是由開發人員創建和註冊的包,其中包含在容器中運行所需的所有文件,通常按層組織。映像通常包括層,例如最小操作系統核心(又名基礎層)、應用程序框架和自定義代碼。
儘管主機可以直接聯繫註冊中心獲取鏡像並將其部署到容器中,但協調器(例如Kubernetes(K8S)、Docker Swarm、Mesos等)可以自動執行部署過程,從註冊中心拉取鏡像,並將其部署到容器中,並管理容器運行時。

不變性和彈性(Immutability and Elasticity)
正如寵物中的雞、牛、雞和昆蟲類比,部署容器是為了彈性,具有自動“橫向擴展”和“縱向擴展”的能力。
我們很好地照顧我們的寵物,但殺死和吃掉像牛和雞這樣的動物而不會後悔。虛擬機和容器是可以隨時銷毀、替換和添加的工作負載。不變性和無狀態是容器實現彈性的兩個關鍵屬性。

不變性意味著“隨時間不變或無法改變”。(Google) 我們可以將容器視為只讀的;更新容器的唯一方法是用新容器替換它。無狀態意味著容器不會在其本地存儲中保留數據;但是,遠程存儲庫用於跨容器持久化和共享狀態。
大多數應用程序容器技術都實現了不變性的概念。換句話說,容器本身應該作為已部署但未更改的無狀態實體運行。當正在運行的容器需要升級或更改其內容時,它會被簡單地銷毀並替換為具有更新的新容器。
資料來源: NIST SP 800-192

覆蓋網絡(Overlay Networks)
覆蓋網絡通常用於隔離節點之間的流量。相反,可能會導致非容器感知防禦工具難以監控流量。

對容器進行分段和分組(Segmenting and Grouping Containers)
在某些情況下,適合將具有相同用途、敏感性和威脅態勢的容器分組在單個主機上。儘管如此,它並不適用於所有不具有相同安全要求的容器。
僅將具有相同用途、敏感性和威脅態勢的容器分組到單個主機操作系統內核上,以實現額外的縱深防禦。
按用途、敏感性和威脅態勢分割容器提供了額外的縱深防禦。這種分段可以通過使用多個物理服務器來提供,但現代虛擬機管理程序也提供了足夠強大的隔離來有效地降低這些風險。
資料來源: NIST SP 800-192

NIST 應用程序容器安全指南(NIST Application Container Security Guide)
NIST 建議組織應遵循以下建議,以幫助確保其容器技術實施和使用的安全性:

  1. 定制組織的運營文化和技術流程,以支持容器使開發、運行和支持應用程序成為可能的新方式。
  2. 使用特定於容器的主機操作系統而不是通用操作系統來減少攻擊面。
  3. 僅在單個主機操作系統內核上將具有相同目的、敏感性和威脅態勢的容器分組,以實現額外的縱深防禦。
  4. 為鏡像採用特定於容器的漏洞管理工具和流程,以防止受到損害。
  5. 考慮使用基於硬件的對策為可信計算提供基礎。
  6. 使用容器感知運行時防禦工具。

參考
什麼是容器安全?
NIST SP 800-192(應用容器安全指南)
容器安全指南——你需要知道的一切
寵物和牛的類比展示了無服務器如何融入軟件基礎設施領域
寵物與牛的歷史以及如何正確使用類比
彈性
自動化彈性

資料來源: Wentz Wu QOTD-20210408

PS:此文章經過作者同意刊登 並且授權可以翻譯成中文

分類
CISSP

零信任(Zero Trust)

零信任的概念早在 2003 年就出現了,當時去邊界化、移除物理網絡位置盛行。許多組織開始實施類似的概念。NIST 於 2020 年 8 月發布了專刊 800-207,統一了各種觀點,介紹了零信任概念和環境,並提出了零信任架構。
從不信任,始終驗證。零信任的基本概念是不依賴物理位置來隱式授權訪問(信任)。每次訪問都必須經過身份驗證、明確授權和記錄;數據流需要加密和記錄。應實施細粒度的動態機制來支持訪問控制。因此,我得出的結論是,零信任是一種用於訪問控製或訪問控制 2.0 的新網絡安全範式,具有以數據為中心、細粒度、動態和可見性的特點。
. 記帳和記錄網絡流量提供了可見性。
. 零信任與位置無關。使用 IPSec 加密 LAN 上的流量,就像 WAN 中發生的那樣。
. 端口敲門在端口級別應用身份驗證並支持動態策略。此外,我們還在應用程序級別使用網絡訪問控制(例如,802.1X)和用戶身份驗證。從不信任,始終驗證。
. 多層防火牆意味著安全性由物理網絡位置實施,例如外部、DMZ 和內部網絡。它不是零信任風格,它以數據或資產為中心,並使用邏輯邊界或軟件定義的邊界。
https://ithelp.ithome.com.tw/upload/images/20210625/201321608chxfFE2v4.jpg
-零信任概念的演變
https://ithelp.ithome.com.tw/upload/images/20210625/20132160zBrArbWLhT.jpg
-零信任網絡安全範式

參考
零信任創建者談論實施、誤解、戰略
敲端口

資料來源: Wentz Wu QOTD-20210407
PS:此文章經過作者同意刊登 並且授權可以翻譯成中文

分類
CISSP

常見的隧道協議(Common Tunneling Protocols)

常見的隧道協議
以下是常見的隧道協議:
. GRE(協議 47):通用路由封裝
. SSTP(TCP 端口 443):安全套接字隧道協議
. IPSec(協議 50/ESP和 51/AH):互聯網協議安全
. L2TP(協議 115):第 2 層隧道協議
. VXLAN(UDP 端口 4789):虛擬可擴展局域網
封裝安全負載 (ESP)
封裝安全負載 (ESP),IP 協議編號 50,是 IPsec 協議套件的成員。它可以在主機到主機傳輸模式以及站點到站點隧道模式中實現:
. 在傳輸模式下,只對IP數據包的有效載荷進行加密或認證,通常在使用其他隧道協議(如GRE、L2TP)先封裝IP數據包時使用,然後使用ESP保護隧道數據包。(Juniper
. 在隧道模式下,整個 IP 數據包都經過加密和認證。

第2層轉發協議 (L2F)
L2F 或第 2 層轉發是 Cisco Systems, Inc. 開發的隧道協議,用於在 Internet 上建立虛擬專用網絡連接。L2F 本身不提供加密或機密性;它依賴於被隧道傳輸的協議來提供隱私。L2F 專門設計用於隧道點對點協議 (PPP)流量。
資料來源:維基百科

點對點隧道協議 (PPTP)
由於許多眾所周知的安全問題,主要由Microsoft支持的點對點隧道協議 (PPTP)是一種過時的用於實現虛擬專用網絡 (VPN) 的方法。
. PPTP 使用 TCP 控制通道和通用路由封裝隧道來封裝點對點協議 (PPP)數據包。
. PPTP 規範不描述加密,Microsoft 點對點加密 (MPPE)支持加密。

VXLAN 問題陳述
目前的VLAN數量有限,為4094,無法滿足數據中心或云計算的需求,具有基於租戶隔離網絡的共同特點。例如,Azure 或 AWS 的客戶遠多於 4094。

VXLAN (RFC 7348) 旨在解決以下問題:

  1. 生成樹和 VLAN 範圍施加的限制
  2. 多租戶環境
  3. ToR(架頂式)交換機的表尺寸不足
    VXLAN 將傳統的 VLAN 幀封裝為 IP 負載或 MAC-over-IP,以支持主幹交換機和葉交換機之間的通信。Leaf-Spine架構採用葉子交換機和骨幹交換機組成的兩層網絡拓撲結構。

https://ithelp.ithome.com.tw/upload/images/20210623/20132160uIiJ8sl9Cf.png
底層網絡 或所謂的 物理網絡 ,傳統協議在其中發揮作用。底層網絡是物理基礎設施,在其上構建覆蓋網絡。它是負責跨網絡傳輸數據包的底層網絡。

  • 底層協議:BGP、OSPF、IS-IS、EIGRP

一個 覆蓋網絡 是一個 虛擬的網絡 ,其路由在底層網絡基礎設施之上,路由決定將發生在軟件的幫助。

  • 覆蓋協議:VXLAN、NVGRE、GRE、OTV、OMP、mVPN

覆蓋網絡是一種使用軟件創建網絡抽象層的方法,可用於在物理網絡之上運行多個獨立的、離散的虛擬化網絡層,通常提供新的應用程序或安全優勢。
來源:Underlay Network 和 Overlay Network

參考
隧道協議
第 2 層轉發協議 (L2F)
通用路由封裝 (GRE)
點對點隧道協議
虛擬可擴展局域網 (VXLAN)
VPN隧道解釋
什麼是 VPN 隧道?
什麼是 VPN 隧道及其工作原理
什麼是 IKEv2?
互聯網協議安全 (IPsec)

資料來源: Wentz Wu QOTD-20210405

分類
CISSP

IDS 的檢測閾值(The detection threshold of IDS)

混淆矩陣中的敏感性是評估 IDS 性能的常用方法。
. 一旦 IDS 發送警報,就應該對其進行調查和驗證,並且工作量會增加。減少誤報的數量減少了調查工作量。
. 然而,減少誤報警報可能會增加誤報案例,導致更多的零日漏洞利用,利用組織獲利害關西人未知的漏洞進行攻擊。
. “一般來說,提高入侵檢測系統的靈敏度會導致更高的誤報率,而降低靈敏度會降低誤報率。” ( Chapple ) 降低這裡的“敏感度”可能是指配置 IDS 以降低檢測的積極性和響應性並發送更少的警報。然而,IDS 系統的敏感度究竟是多少?二元分類中靈敏度的操作定義是TP/(TP+FN)。降低靈敏度意味著 FN(假陰性)增加。
. 選項 D 在二元分類器中有意義,如下圖所示。IDS的檢測閾值是影響靈敏度的實現參數,實現方式各不相同。基於異常的 IDS 可以採用二元或多標籤分類器/算法來對事件進行分類,例如 {Attack, Non-attack} 或 { Normal, Suspicious, Attack }。由於存在各種類型的基於異常的 IDS,因此在每種算法中可能會或可能不會使用閾值。此外,在不同算法中提高閾值可能會以不同方式影響靈敏度。
https://ithelp.ithome.com.tw/upload/images/20210624/20132160BYV7e3l2wX.png
-二元分類模型的分數分佈(來源:亞馬遜

S-IDS 和 A-IDS
入侵檢測系統按檢測方法可分為基於簽名(S-IDS)和基於異常(A-IDS)。S-IDS擅長檢測已知攻擊,而 A-IDS 擅長未知攻擊。異常,又名異常值、新奇、噪音、偏差和異常,是指“偏離標準、正常或預期的東西”。(谷歌)
下圖很好地總結了異常檢測方法。但是,請注意它有一個錯字(簽名IDS應該是“S-IDS”),大多數CISSP學習指南將基於知識的IDS(K-IDS)視為與簽名IDS(S-IDS)相同。
https://ithelp.ithome.com.tw/upload/images/20210624/20132160clD74SmQxk.jpg
-Laszka、Aron & Abbas、Waseem & Sastry、S & Vorobeychik、Yevgeniy & Koutsoukos、Xenofon。(2016)。入侵檢測系統的最佳閾值。10.1145/2898375.2898399。

分類(Classification)
如果事件或流量是使用二元分類器的攻擊,則 IDS 可以使用模型(分類器)來確定事件或流量,或者使用多標籤分類器對其進行分類,例如正常、可疑或攻擊。在分類過程中可以使用作為模型參數的閾值。
將預測概率或評分轉換為類別標籤的決策由稱為“決策閾值”、“判別閾值”或簡稱為“閾值”的參數控制。對於在 0 或 1 之間的範圍內的標準化預測概率或分數,閾值的默認值為 0.5。(Brownlee

ROC曲線(ROC Curve)
ROC 曲線(接收器操作特性曲線)是顯示分類模型在所有分類閾值下的性能的圖表。該曲線繪製了兩個參數:真陽性率和假陽性率。(谷歌)
https://ithelp.ithome.com.tw/upload/images/20210624/2013216061vIETP7gL.png
-資料來源:谷歌

混淆矩陣(Confusion Matrix)
混淆矩陣是一種評估 IDS 使用的模型性能的工具。它包含有關使用二元或多標籤分類器進行的實際和預測分類的信息,例如 {Attack, Non-attack} 或 { Normal, Suspicious, Attack }。
https://ithelp.ithome.com.tw/upload/images/20210624/2013216084RUoTPUFu.jpg
-混淆矩陣(圖片來源:數據科學和機器學習
https://ithelp.ithome.com.tw/upload/images/20210624/20132160KkA5nGTp0S.jpg
-混淆矩陣和決策樹(圖片來源:Judy Shamoun-Baranes

參考
準確率和召回率
敏感性和特異性
精確召回
入侵檢測系統的最佳閾值
入侵檢測系統 – IDS 性能調優 (YouTube)
網絡入侵檢測系統:機器學習和深度學習方法的系統研究
大數據環境下使用機器學習算法的入侵檢測模型
機器學習中的分類算法:它們是如何工作的
7種分類算法
統計異常檢測
異常檢測
靈敏度、特異性、準確性、相關置信區間和 ROC 分析與實用 SAS® 實施
評估和調整入侵檢測系統
什麼是入侵檢測系統?最新類型和工具
不平衡分類的評估指標之旅
不平衡分類的閾值移動簡介
多標籤分類的閾值選擇研究
分類:閾值(谷歌)
多標籤分類
多類分類(亞馬遜)
二元分類(亞馬遜)
在 scikit-learn 中微調分類器
機器學習:神經網絡

資料來源: Wentz Wu QOTD-20210406

分類
CISSP

ISO OSI 參考模型的數據鏈路層(Data Link layer)-邏輯鏈路控制(logic link control)

https://ithelp.ithome.com.tw/upload/images/20210622/201321606xSgGi0csg.png
-圖片來源:TelecomWorld 101
ISO OSI 參考模型的數據鏈路層從 IEEE 的角度可以分為兩個子層:邏輯鏈路控制(LLC)和媒體訪問控制(MAC)。

邏輯鏈路控制 (LLC)
LLC處理以下問題:
流量控制:例如,滑動窗口
錯誤控制
. 錯誤檢測:例如,循環冗餘校驗 (CRC)
. 糾錯:例如,重傳

媒體訪問控制 (MAC)
以下是三種眾所周知的媒體訪問機制:
. 令牌傳遞
. CSMA/CD
. CSMA/SA

參考
IEEE802.2 – 邏輯鏈路控制層 (LLC)
數據鏈路層的錯誤檢測和糾正
數據鏈路層的流量控制

資料來源: Wentz Wu QOTD-20210404

PS:此文章經過作者同意刊登 並且授權可以翻譯成中文

分類
CISSP

一次性密碼 (One-time pad:OTP)

一次性密碼(one-time pad)和一次性密碼(one-time passoword )的首字母縮寫詞都是 OTP。然而,它們是不同的,根本沒有關係。一次性密碼是一種對稱密碼,需要一個隨機密鑰,而一次性密碼是動態生成的密碼,僅對一個且僅特定的登錄會話有效。
. RSA 數字簽名算法生成強制不可否認性的數字簽名。
. 基於時間的一次性密碼 (Time-based One-Time Password :TOTP) 是一種一次性密碼,它依賴於時間作為生成算法的輸入參數之一。
. 基於散列的消息認證碼 (Hash-based Message Authentication Codes :HMAC) 依靠散列函數和共享密鑰來計算消息認證碼以驗證真實性。

參考
一次性密碼 (one-time pad :OTP)
一次性密碼(one-time passoword)

資料來源: Wentz Wu QOTD-20210403

PS:此文章經過作者同意刊登 並且授權可以翻譯成中文

分類
CISSP

強制存取控制(Mandatory access control)

強制存取控制是訪問控制策略或要求;這不是一個正式的模型。相反,它可以通過正式模型來實現。模型是一個詳細描述或實體的縮放表示; 一個正式的模型是應用數學為基礎的符號和語言制定了嚴格的模型。
. **有限狀態機(Finite state machine)**是一種常見的形式模型。
. **信息流模型(information flow model)**並不是真正的模型,而是泛指能夠控制信息流的形式模型。無干擾模型(non-interference model)也是如此。但是,大多數學習指南將它們視為“模型”。這個問題遵循這個觀點。
EAL 7 產品意味著它以正式設計為後盾。
https://ithelp.ithome.com.tw/upload/images/20210619/20132160Abx7dUYNFr.jpg
-通用標準 EAL

參考
模型
形式方法
可信計算機系統評估標準
貝爾-拉帕杜拉模型
認證產品清單 – 統計

資料來源: Wentz Wu QOTD-20210402

PS:此文章經過作者同意刊登 並且授權可以翻譯成中文

分類
CISSP

緩衝區溢出和記憶體洩漏(Buffer Overflow and Memory Leak)

https://ithelp.ithome.com.tw/upload/images/20210618/20132160vH7blOlAPj.jpg
-進程的記憶體佈局
**緩衝區(Buffer)**是指用於存儲特定大小數據的一段內存。如果數據大小大於緩衝區大小,它就會溢出。它通常會導致異常受特權提升或返回到堆棧中的代碼地址。如果正確安排輸入驗證和異常處理程序,可以有效地緩解緩衝區溢出。
**記憶體洩漏(Memory leak)**是一個常見的應用程序問題。應用程序或進程在由操作系統加載和啟動時被分配了有限的記憶體大小,也就是堆。該進程可能會請求記憶體段,但不會將它們返回給操作系統。可用內存最終用完了。性能越來越差,可能會導致進程崩潰。現代運行時框架,例如 .NET、JVM,提供垃圾收集或引用計數器來解決這個問題。

資料來源: Wentz Wu 網站

PS:此文章經過作者同意刊登 並且授權可以翻譯成中文

分類
CISSP

基於格的訪問控制模型(a lattice-based access control model)

“格是在有序理論和抽象代數的數學子學科中研究的抽象結構。它由一個偏序集合組成,其中每兩個元素都有一個唯一的上界(也稱為最小上界或連接)和唯一的下界(也稱為最大下界或相遇)。” (維基百科
安全格通常用於控制安全級別/類別或隔間之間的信息流。分類和標記是基於格的訪問控制的兩個主要特徵。
基於晶格的訪問控制(Lattice-based Access Control)
Ravi S. Sandhu 在這篇名為 Lattice-Based Access Control Models 的論文中回顧了三種基於格的訪問控制模型(Bell-LaPadula、Biba 和 Chinese Wall),該論文展示瞭如何在格框架中執行 Chinese Wall 策略,並表示:
開發了基於晶格的訪問控制模型來處理計算機系統中的信息流。信息流顯然是保密的核心。正如我們將看到的,它在某種程度上也適用於完整性。它與可用性的關係充其量是微不足道的。因此,這些模型主要關注機密性並且可以處理完整性的某些方面。

貝爾-拉帕杜拉模型(Bell-LaPadula Model)
https://ithelp.ithome.com.tw/upload/images/20210617/201321609mcxyq6hoP.jpg
-貝爾-拉帕杜拉模型

比巴模型(Biba Model)
https://ithelp.ithome.com.tw/upload/images/20210617/201321605F48VHrzVI.jpg
-比巴模型

布魯爾和納什模型(Brewer and Nash model)
Brewer 和 Nash 模型將數據集分類為利益衝突類並標記它們以根據主體的訪問歷史(也稱為基於歷史)動態應用訪問控制。
https://ithelp.ithome.com.tw/upload/images/20210617/201321604tCMZksBGL.jpg
-布魯爾和納什模型(中國牆)

克拉克-威爾遜模型(Clark-Wilson Model)
Clark-Wilson 模型有兩個特點:格式良好的交易和職責分離。它依靠“程序”來強制執行完整性,而不是為了保密而控制信息流。
David D. Clark 和 David R. Wilson 在他們的論文《商業和軍事計算機安全政策的比較》中說:
本文提出了一種基於商業數據處理實踐的數據完整性策略,並將該策略所需的機制與強制執行信息安全點陣模型所需的機制進行了比較。我們認為格模型
不足以表徵完整性策略,需要不同的機制來控制披露和提供完整性……
首先,通過這些完整性控制,數據項不一定與特定的安全級別相關聯,而是與一組允許對其進行操作的程序相關聯。其次,用戶沒有被授予讀取或寫入某些數據項的權限,但可以對某些數據項執行某些程序……
https://ithelp.ithome.com.tw/upload/images/20210617/20132160ovia2WiOeK.png
-Clark-Wilson 誠信模型(圖片來源:Ronald Paans
參考
可信計算機系統評估標準
貝爾-拉帕杜拉模型

資料來源: Wentz Wu QOTD-20210401

PS:此文章經過作者同意刊登 並且授權可以翻譯成中文

分類
CISSP

單元測試&整合測試&迴歸測試

單元測試(Unit Testing)
單元測試既是一種測試工具,也是一種開發工具。現代軟件開發人員通常在完成功能代碼之前開發單元測試,也就是測試驅動開發 (TDD) 方法。換句話說,每個軟件功能都帶有一組單元測試,以確保其正常運行。
https://ithelp.ithome.com.tw/upload/images/20210615/201321600lKIJvGvtH.jpg
-示例單元測試

整合測試(Integration Testing)
如今,軟件開發人員正在本地代碼存儲庫所在的桌上型電腦或筆記本電腦上編寫代碼。他們首先將代碼“提交”或“簽入”到本地代碼存儲庫中。如果本地代碼構建和測試沒有問題,它們將被推送到遠程中央代碼存儲庫進行集成。持續集成 (CI) 意味著一旦滿足 CI 標準,遠程服務器就會自動啟動服務器構建,例如,每當簽入新代碼或定期開始構建(例如,每晚構建)。如果服務器構建成功,它會自動開始(集成)測試。單元測試和 UI 測試可以在沒有用戶干預的情況下完成,例如,使用 Selenium 來支持自動化的端到端 (e2e) Web UI 測試。

回歸測試(Regression Testing)
如果服務器構建失敗,遠程代碼存儲庫的中央服務器將通知開發人員錯誤。開發人員製造錯誤或破壞構建必須修復它們並重複該過程直到沒有錯誤發生。這是一個回歸測試的過程。

參考
回歸測試
回歸測試和整合測試有什麼區別?
單元測試?整合測試?回歸測試?驗收測試?
代碼庫的安全性

資料來源: Wentz Wu QOTD-20210330

PS:此文章經過作者同意刊登 並且授權可以翻譯成中文