自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

虛擬機VS容器 安全比拼誰更勝一籌?

安全
虛擬機(VM)和容器到底誰更安全?在我個人看來,VM比容器提供更好的安全性,但我們必須認真看待虛擬機的安全性。

我們經(jīng)常說,“HTTPS很安全”或者“HTTP不安全”,但其實我們的意思是“HTTPS很難被窺探,中間人攻擊很難執(zhí)行”。

然而,HTTPS已經(jīng)被黑客入侵,在某些情況下,HTTP足夠安全。此外,如果我們在支持HTTPS的常見部署中發(fā)現(xiàn)可利用的漏洞,HTTPS可成為黑客網(wǎng)關,直到漏洞被修復。

HTTP和HTTPS是在IETF RFCs 7230-7237和2828中定義的協(xié)議。HTTPS被設計為安全的HTTP,但HTTPS安全HTTP不安全的說法隱藏著重要的例外情況。

虛擬機(VM)和容器沒有嚴格的定義,也沒有故意設計成對方更安全。

為什么我認為VM比容器更安全

在戰(zhàn)爭和軟件中,分治法是勝利策略。當架構將單一復雜的難以解決的安全問題分解成更容易的問題時,在大多數(shù)情況下,結果會比解決所有問題的單一解決方案更加好。

容器是分治法應用于應用程序的示例。通過將每個應用程序鎖定在自身,一個應用程序的漏洞將不會影響其他容器中的應用程序。虛擬機也是采用分治法,但它們在隔離方面走的更遠。

虛擬機

在隔離應用程序中的漏洞不會直接影響其他應用程序,但隔離的應用程序可能會破壞與其他容器共享的單個操作系統(tǒng),并影響所有容器。當使用共享操作系統(tǒng)時,應用程序、容器和操作系統(tǒng)部署堆棧中任何點的缺陷都會使整個堆棧的安全性失效,并危及物理機器。

虛擬化這樣的分層架構可分離每個應用程序的執(zhí)行堆棧,一直到硬件,這可消除應用程序相互干擾的可能性。此外,每個應用程序堆棧之間的接口被定義和限制,以防止被濫用。這可保護應用程序免受其他應用的影響。

虛擬機將控制用戶活動的操作系統(tǒng)與控制訪客操作系統(tǒng)及硬件之間交互的虛擬管理程序分隔。VM訪客操作系統(tǒng)控制用戶活動,但不會控制硬件交互。應用程序或訪客操作系統(tǒng)中的漏洞不可能會影響物理硬件或者其他虛擬機。當虛擬機訪客操作系統(tǒng)和支持容器的操作系統(tǒng)相同時(通常都是這種情況),相同的漏洞將會影響運行該操作系統(tǒng)的所有其他容器,但不會危及其他虛擬機。因此,虛擬機水平將應用程序分離,并垂直分離操作系統(tǒng)與硬件。

VM開銷

VM的額外安全性是需要成本的。在計算系統(tǒng)中,控制轉移總是很昂貴,無論是在處理器周期還是其他資源中。執(zhí)行堆棧存儲和重置,外部操作可能需要暫?;蛘弑辉试S完成等。

訪客操作系統(tǒng)和虛擬管理程序之間的轉換費用很高,并且需要經(jīng)常發(fā)生。即使是特殊控制指令植入到處理器芯片中,控制轉移開銷會降低VM的整體效率。這種降低是否很顯著?這很難說。通過管理控制轉移,應用程序可調整為降低開銷,并且,大多數(shù)服務器處理器現(xiàn)在被設計為簡化控制轉移。換句話說,這種降低程度取決于應用程序和服務器,但開銷永遠不能完全消除,只會減輕。

虛擬管理程序漏洞

讓問題進一步復雜化,在VM架構中分隔層會帶來另一個問題:虛擬管理程序漏洞。虛擬管理程序漏洞是單點故障,可能帶來潛在巨大后果,特別是在公共云中??上攵?,單個黑客可在虛擬機中啟動代碼,控制其他公共云消費者擁有的應用程序,從而入侵整個公共云。

任何堅固的架構都可能存在缺陷,虛擬管理程序也不例外。

雖然目前并沒有任何重大虛擬管理程序攻擊事故,但從常見漏洞和披露(CVE)數(shù)據(jù)庫來看,研究人員確實發(fā)現(xiàn)一些虛擬管理程序缺陷。管理程序開發(fā)人員和供應商已經(jīng)很快修復漏洞,在2017年3月,微軟發(fā)布安全公告MS17-008,其中涉及Hyper-V管理程序中7個已修復的漏洞,都被標記為嚴重。

筆者仍然認為VM比容器提供更好的安全性,但我們必須認真看待虛擬機的安全性。

責任編輯:趙寧寧 來源: IT168
相關推薦

2024-07-31 09:39:33

2014-03-06 15:07:41

青橙小米

2022-07-20 08:16:54

Lombokjava工具

2020-01-18 14:55:03

架構運維技術

2020-03-06 09:21:28

PWA原生應用Web

2010-05-28 11:21:17

2024-07-19 08:33:56

2018-06-12 10:09:41

編程語言PythonJava

2020-02-02 15:42:22

PythonC++編程語言

2025-01-16 10:34:18

2013-03-19 10:27:43

服務器選型x86小型機

2017-01-11 14:38:39

編程語言Java

2022-08-24 08:00:00

Node.isJavaScriptDeno

2018-08-15 08:33:33

編程Go語言開發(fā)

2017-11-13 15:38:03

VMwareOpenStack混合云

2023-08-09 18:08:35

ChatGPTStackOverflow

2018-10-12 13:54:26

2019-01-04 09:59:14

KafkaRabbitMQMQ

2025-01-03 09:27:14

2010-05-21 16:36:09

GoogleCode
點贊
收藏

51CTO技術棧公眾號