99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何保證它們?nèi)萜鬟\行時的安全?

無線深海 ? 來源:無線深海 ? 2023-11-03 15:24 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

容器徹底改變了我們開發(fā)和部署應(yīng)用程序的方式,提供了封裝應(yīng)用程序及其依賴項的輕量級和可移植環(huán)境。但我們?nèi)绾伪WC它們的安全呢?

需要解決的關(guān)鍵之一是容器運行時 - 負(fù)責(zé)啟動和管理容器的軟件。

雖然Docker和Containerd等容器運行時被廣泛使用,但它們與主機(jī)操作系統(tǒng)的緊密耦合可能會帶來風(fēng)險。

在本文中,我們將深入探討容器運行時的工作原理、為什么緊密耦合的運行時會在攻擊者逃離容器時導(dǎo)致主機(jī)接管,以及使用gVisor和Kata Containers等安全容器運行時的重要性。

了解容器運行時

容器運行時編排容器、管理其生命周期并將其與主機(jī)和其他容器隔離。通過利用命名空間和cgroup等Linux內(nèi)核功能,運行時圍繞容器創(chuàng)建安全邊界。

然而,傳統(tǒng)的運行時與主機(jī)的內(nèi)核緊密相關(guān),這存在潛在的安全漏洞。如果攻擊者設(shè)法逃離容器,該攻擊者就可獲取對底層主機(jī)操作系統(tǒng)的未經(jīng)授權(quán)的訪問,從而危及整個系統(tǒng)的安全。

緊密耦合的容器運行時繼承了主機(jī)操作系統(tǒng)的安全態(tài)勢和攻擊面。運行時或主機(jī)內(nèi)核中的任何漏洞及其利用都會成為攻擊者的潛在切入點。

在多租戶環(huán)境或運行不受信任的工作負(fù)載時,這種風(fēng)險尤其嚴(yán)重。為了減輕這種威脅,使用安全的容器運行時(例如gVisor和Kata Containers)至關(guān)重要。

這類安全容器運行時提供了額外的隔離和安全層,采用創(chuàng)新技術(shù)來增強容器化工作負(fù)載的安全性。例如,gVisor使用用戶空間內(nèi)核實現(xiàn),而Kata Containers則通過輕量級虛擬機(jī)實現(xiàn)。這些安全運行時將容器與主機(jī)操作系統(tǒng)隔離,防止攻擊者未經(jīng)授權(quán)訪問底層基礎(chǔ)設(shè)施,并降低主機(jī)接管的風(fēng)險。

當(dāng)下主流的一些容器運行時介紹

容器運行時提供了創(chuàng)建、部署和執(zhí)行容器運行所需的工具和庫。這些容器運行時處理諸如創(chuàng)建和管理容器映像、容器的啟動和停止、資源隔離、網(wǎng)絡(luò)和安全性等任務(wù)。它們構(gòu)成了容器化技術(shù)的基礎(chǔ),對于跨不同計算環(huán)境一致運行應(yīng)用程序至關(guān)重要。以下是一些最流行的容器運行時。

Docker

Docker是一種廣泛使用的容器運行時,可為構(gòu)建、打包和運行容器提供完整的生態(tài)系統(tǒng)。它包括管理容器生命周期的Docker引擎和提供與容器交互的命令行界面的Docker CLI。

在底層,Docker使用runC作為默認(rèn)的底層容器運行時。runC基于開放容器計劃(OCI)運行時規(guī)范生成和管理容器。

Containerd

Containerd是由Docker開發(fā)的開源容器運行時,側(cè)重于提供穩(wěn)定、高性能和可移植的強大運行時。Ccontainerd旨在作為容器編排系統(tǒng)的核心組件,可以與Kubernetes等更上層的編排平臺集成。

與Docker類似,Containerd使用runC作為默認(rèn)的底層容器運行時來創(chuàng)建和管理容器。

runC

runC由OCI開發(fā),是一個符合OCI運行時規(guī)范的輕量級底層運行時,通過在隔離的沙箱中啟動容器來提供基本的容器執(zhí)行環(huán)境。Docker和Containerd都利用runC的功能來處理容器生命周期管理、進(jìn)程隔離、文件系統(tǒng)掛載和其他底層容器操作。

CRI-O

CRI-O是專為Kubernetes設(shè)計的輕量級容器運行時。它實現(xiàn)了Kubernetes容器運行時接口(CRI),并為Kubernetes與容器交互提供了接口。CRI-O在底層使用runc和Containerd等技術(shù)。

安全容器運行時:gVisorKata Containers

gVisor是Google開發(fā)的開源容器運行時,使用輕量級用戶空間內(nèi)核“Sandbox”為容器提供安全的執(zhí)行環(huán)境。

gVisor不是直接在主機(jī)內(nèi)核上運行容器,而是在隔離的沙箱中運行容器,增加了額外的安全和隔離層。沙箱攔截來自容器的系統(tǒng)調(diào)用,并應(yīng)用自身的類內(nèi)核實現(xiàn),提供針對內(nèi)核級漏洞的防御機(jī)制。

Kata Containers開源項目將輕量級虛擬機(jī)(VM)與容器運行時相結(jié)合,采用硬件虛擬化技術(shù)為每個容器進(jìn)程啟動單獨的VM,提供容器之間的強隔離。

每個虛擬機(jī)都運行一個極簡的輕量級客戶操作系統(tǒng),例如精簡版Linux內(nèi)核。Kata Containers旨在保證容器的性能優(yōu)勢,同時提升虛擬機(jī)的安全性和工作負(fù)載隔離。

gVisor和Kata Containers都解決了與傳統(tǒng)容器運行時相關(guān)的某些安全問題,有助于降低容器逃逸攻擊的風(fēng)險,在某些情形下,攻擊者可利用容器運行時或內(nèi)核中的漏洞獲得對主機(jī)系統(tǒng)的未經(jīng)授權(quán)的訪問。通過添加額外的隔離和安全控制層,這些運行時強化了對容器化工作負(fù)載提供的保護(hù)。

gVisor和Kata Containers并不相互排斥;事實上,它們可以一起使用,Kata Containers可使用gVisor作為其運行時,這種組合通過將虛擬機(jī)層面的隔離優(yōu)勢與gVisor所提供的額外安全措施相結(jié)合,進(jìn)一步增強了安全性和隔離性。

這些安全容器運行時在運行不受信任或潛在易受攻擊的工作負(fù)載的情況下特別有用,例如在多租戶環(huán)境中或處理不受信任的第三方代碼時。

在安全運行時中運行容器

使用gVisor和Kata Containers等安全運行時可以顯著增強對主機(jī)系統(tǒng)的保護(hù)。主要安全優(yōu)勢如下:

增強隔離:gVisor和Kata Containers在容器和主機(jī)系統(tǒng)之間提供了額外的隔離層。這種隔離有助于防止容器逃逸攻擊并限制容器內(nèi)安全漏洞的影響。

內(nèi)核級保護(hù):gVisor和Kata Containers都可以防御內(nèi)核級漏洞。gVisor自身已實現(xiàn)類內(nèi)核接口,可攔截來自容器的系統(tǒng)調(diào)用并執(zhí)行安全策略。Kata Containers采用硬件虛擬化技術(shù)可在具有內(nèi)核實例的獨立虛擬機(jī)中運行容器,將這些獨立虛擬機(jī)與主機(jī)內(nèi)核隔離。

縱深防御:通過將這些運行時的安全機(jī)制與其他最佳安全實踐(例如強大的訪問控制、網(wǎng)絡(luò)分段和圖像掃描等)相結(jié)合,可提升容器部署的安全性。

兼容性和互操作性:gVisor和Kata Containers都可與Kubernetes等容器編排平臺配合使用,用戶借助這些技術(shù)的安全優(yōu)勢,無需對現(xiàn)有容器化應(yīng)用程序或部署流程進(jìn)行重大更改。

請注意,雖然gVisor和Kata Constianers提升了安全性,但由于額外的隔離層,它們可能會帶來一些性能開銷。因此,實際部署時仍需要對特定用例和性能要求進(jìn)行評估,以確定所提供的安全優(yōu)勢是否超過任何潛在的性能影響。

在安全容器運行時中運行微服務(wù)

微服務(wù)架構(gòu)通常涉及在同一基礎(chǔ)設(shè)施上運行的多個獨立服務(wù)。通過在安全容器運行時中運行每個微服務(wù),可以確保它們彼此隔離。

這有助于防止容器逃逸、權(quán)限升級和內(nèi)核級漏洞。一旦發(fā)生安全漏洞或故障,安全容器運行時還可幫助限制安全危機(jī)的擴(kuò)散,防止事態(tài)進(jìn)一步升級。

用戶還可通過容器運行時為每個微服務(wù)分配特定的資源(例如CPU、內(nèi)存和存儲),確保資源的公平分配。這可以防止資源爭用問題,否則惡意行為者可能會利用資源爭用問題來降低其他微服務(wù)的性能或穩(wěn)定性。

要在安全容器運行時中運行微服務(wù),需要執(zhí)行以下步驟:

擇安全容器運行時 評估不同的安全容器運行時(例如gVisor和Kata Containers),并選擇最能滿足需求的一種??紤]安全功能、性能影響、與現(xiàn)有基礎(chǔ)設(shè)施的兼容性以及社區(qū)支持等因素。

安全構(gòu)建容器鏡像 使用受信任的基礎(chǔ)鏡像,定期更新依賴項并掃描鏡像是否存在漏洞。實施安全的鏡像注冊并強制執(zhí)行鏡像簽名以驗證鏡像的真實性。

安全配置 以適當(dāng)?shù)陌踩O(shè)置配置容器運行時,可能包括啟用隔離功能、應(yīng)用資源限制、設(shè)置容器網(wǎng)絡(luò)策略和控制對主機(jī)系統(tǒng)資源的訪問等。遵循容器運行時文檔提供的安全準(zhǔn)則。

實施嚴(yán)格的訪問控制 為容器化微服務(wù)實施強大的訪問控制。這包括限制容器權(quán)限、對容器編排平臺采用基于角色的訪問控制(RBAC)以及保護(hù)容器運行時API。

持續(xù)監(jiān)控和記錄 實施監(jiān)控和日志記錄解決方案來跟蹤容器化微服務(wù)的行為。監(jiān)控可疑活動、異常行為和潛在的安全事件。集中式日志記錄和分析有助于高效地檢測和響應(yīng)安全事件。

定期更新和打補丁 通過應(yīng)用安全補丁和更新來使容器運行時保持最新,確保擁有最新的安全改進(jìn)和錯誤修復(fù)。

運行安全測試 對容器化微服務(wù)定期進(jìn)行安全評估和滲透測試,這有助于識別容器運行時配置和應(yīng)用程序代碼中的漏洞和潛在弱點。

編輯:黃飛

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 操作系統(tǒng)
    +關(guān)注

    關(guān)注

    37

    文章

    7154

    瀏覽量

    125648
  • 容器
    +關(guān)注

    關(guān)注

    0

    文章

    511

    瀏覽量

    22465
  • 虛擬機(jī)
    +關(guān)注

    關(guān)注

    1

    文章

    966

    瀏覽量

    29385
  • 主機(jī)系統(tǒng)
    +關(guān)注

    關(guān)注

    0

    文章

    9

    瀏覽量

    7022

原文標(biāo)題:容器安全和安全運行時的重要性(一)

文章出處:【微信號:wuxian_shenhai,微信公眾號:無線深?!繗g迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    如何縮短Vivado的運行時

    在Vivado Implementation階段,有時是有必要分析一下什么原因?qū)е?b class='flag-5'>運行時間(runtime)過長,從而找到一些方法來縮短運行時間。
    的頭像 發(fā)表于 05-29 14:37 ?1.5w次閱讀
    如何縮短Vivado的<b class='flag-5'>運行時</b>間

    各種容器運行的作用是什么

    容器技術(shù)中,容器運行時可以分為三種類型:低級運行時、高級運行時以及沙盒或虛擬化運行時。
    發(fā)表于 09-20 11:42 ?1423次閱讀
    各種<b class='flag-5'>容器</b><b class='flag-5'>運行</b>的作用是什么

    ATC'22頂會論文RunD:高密高并發(fā)的輕量級 Serverless 安全容器運行時 | 龍蜥技術(shù)

    輕量級安全容器運行時,提出了 host-to-guest 的全棧優(yōu)化方案來解決上述問題。本文整理自[龍蜥大講堂第 38 期],精彩分享視頻回放已上傳至龍蜥官網(wǎng)(首頁-動態(tài)-視頻),歡迎查看!摘要
    發(fā)表于 09-05 15:18

    鍋爐低負(fù)荷運行時注意事項

    鍋爐低負(fù)荷運行時注意事項 為了滿足機(jī)組調(diào)峰,運行工況變動的需要,保證鍋爐安全、經(jīng)濟(jì)運行,特制訂本措施。1、當(dāng)鍋爐在低負(fù)
    發(fā)表于 11-13 18:22 ?3113次閱讀

    紫金橋組態(tài)軟件新的功能_運行時組態(tài)

    運行時組態(tài)是組態(tài)軟件新近提出的新的概念。運行時組態(tài)是在運行環(huán)境下對已有工程進(jìn)行修改,添加新的功能。它不同于在線組態(tài),在線組態(tài)是在工程運行的同時,進(jìn)入組態(tài)環(huán)境,在組態(tài)環(huán)境中對工程進(jìn)行修改
    發(fā)表于 10-13 16:17 ?2次下載
    紫金橋組態(tài)軟件新的功能_<b class='flag-5'>運行時</b>組態(tài)

    k8s容器運行時演進(jìn)歷史

    運行時接口(Container Runtime Interface),這一步中,Kubelet 可以視作一個簡單的 CRI Client,而 dockershim 就是接收請求的 Server。目前 dockershim 的代碼其實是內(nèi)嵌在 Kubele
    的頭像 發(fā)表于 02-02 13:50 ?2192次閱讀
    k8s<b class='flag-5'>容器</b><b class='flag-5'>運行時</b>演進(jìn)歷史

    Go運行時:4年之后

    自 2018 年以來,Go GC,以及更廣泛的 Go 運行時,一直在穩(wěn)步改進(jìn)。近日,Go 社區(qū)總結(jié)了 4 年來 Go 運行時的一些重要變化。
    的頭像 發(fā)表于 11-30 16:21 ?1067次閱讀

    什么是Kubernetes容器運行時CRI

    起初,Docker是事實上的容器技術(shù)標(biāo)準(zhǔn),Kubernetes v1.5之前的代碼中直接調(diào)用Docker API,實現(xiàn)容器運行時的相關(guān)操作。
    的頭像 發(fā)表于 02-20 16:22 ?2026次閱讀
    什么是Kubernetes<b class='flag-5'>容器</b><b class='flag-5'>運行時</b>CRI

    正常運行時間保護(hù)底線

    本教程探討了增加正常運行時間的各種注意事項以及它們如何影響底線。這些包括工業(yè)設(shè)施的維護(hù)方法,例如工廠、商業(yè)設(shè)施、發(fā)電廠或其他安裝,在這些設(shè)施中,適當(dāng)?shù)木S護(hù)方法可以防止災(zāi)難性故障。但是,保持底線需要更多。還必須考慮可靠性、安全性、
    的頭像 發(fā)表于 04-06 11:10 ?1415次閱讀
    正常<b class='flag-5'>運行時</b>間保護(hù)底線

    怎樣避免電力電容器運行時漏油

    電力電容器運行中,會因為各種因素出現(xiàn)故障。在電力電容器運行時遇到的故障中,出現(xiàn)滲油和漏油的概率非常大。那么如何避免電力電容器
    的頭像 發(fā)表于 04-07 16:01 ?1328次閱讀

    iSulad+Kuasar:管理面資源消耗銳減99%的新一代統(tǒng)一容器運行時解決方案

    容器引擎(Container Engine)主要負(fù)責(zé)容器運行環(huán)境的創(chuàng)建、容器資源的配置和容器生命周期的管理,北向接收來自于 Kubernet
    的頭像 發(fā)表于 04-27 15:00 ?1582次閱讀
    iSulad+Kuasar:管理面資源消耗銳減99%的新一代統(tǒng)一<b class='flag-5'>容器</b><b class='flag-5'>運行時</b>解決方案

    如何在AUTOSAR OS系統(tǒng)運行時使用事件Event呢?

    在AUTOSAR OS系統(tǒng)中,事件用于向任務(wù)發(fā)送信號信息。本節(jié)解釋事件是什么,如何配置它們以及如何在運行時使用它們。
    發(fā)表于 05-22 10:04 ?3242次閱讀
    如何在AUTOSAR OS系統(tǒng)<b class='flag-5'>運行時</b>使用事件Event呢?

    ch32v307記錄程序運行時

    ch32v307記錄程序運行時間 在程序開發(fā)中,很重要的一項任務(wù)就是對程序的運行時間進(jìn)行評估。對于大型的程序系統(tǒng)來說,它們通常需要處理大量的數(shù)據(jù)或進(jìn)行復(fù)雜的計算操作。因此,如果程序的運行時
    的頭像 發(fā)表于 08-22 15:53 ?1292次閱讀

    Xilinx運行時(XRT)發(fā)行說明

    電子發(fā)燒友網(wǎng)站提供《Xilinx運行時(XRT)發(fā)行說明.pdf》資料免費下載
    發(fā)表于 09-14 10:01 ?0次下載
    Xilinx<b class='flag-5'>運行時</b>(XRT)發(fā)行說明

    jvm運行時內(nèi)存區(qū)域劃分

    JVM是Java Virtual Machine(Java虛擬機(jī))的縮寫,它是Java編程語言的運行環(huán)境。JVM的主要功能是將Java源代碼轉(zhuǎn)換為機(jī)器代碼,并且在運行時管理Java程序的內(nèi)存。JVM
    的頭像 發(fā)表于 12-05 14:08 ?750次閱讀