人人書

雜誌

保存到桌面 | 簡體人人書 | 手機版
傳記回憶文學理論偵探推理驚悚懸疑詩歌戲曲雜文隨筆小故事書評雜誌
人人書 > 雜誌 > 為什麼保護容器和微服務是一種挑戰

為什麼保護容器和微服務是一種挑戰

時間:2024-10-31 09:14:20

容器能夠跨不同計算環境部署和運行軟件,具有小型化、快捷和易于設置的優點。通過控制庫、二進制文件和配置文件等應用運行環境,平台和基礎設施被抽象化,允許應用在任何地方運行。像本地數據中心和混合雲一樣,所有主要的雲提供商都提供了容器。此外,它們還能夠為公司節省大量的資金。

通過容器,開發者能夠創建“微服務”。這些微服務實質上是應用的小型化可重複使用組件。由于能夠重複使用,所以微服務能夠節省開發者的時間。同時它們能夠跨不同平台部署。

得益于這些優點,容器被廣泛采用也就一點也不奇怪了。不幸的是,安全部門仍在研究它們是如何工作的,以及如何以最佳方式确保它們的安全。據邁克菲公司近期對全球1500名IT專業人員進行的調查顯示,在員工數量超過500人的公司中,約80%的公司目前正在使用容器,但僅66%的公司針對容器制定了安全策略。據CyberEdge公司對1200名IT決策者的調查顯示,容器如今實際上已經與移動設備緊密相連,而後者是公司最大的安全挑戰。

安全為什麼是容器領域内的一項挑戰有着多重原因。第一個原因是容器的部署速度;第二個原因是容器通常需要将應用拆解為更小的服務,從而導緻數據流量增加和訪問控制規則複雜化;最後一個原因是容器往往運行在帶有新型安全控制的雲環境中,如亞馬遜等。

雲安全廠商StackRox的聯合創始人兼首席技術官AliGolshan認為,容器安全工具的生态環境還不成熟。“這與虛拟機和雲的早期階段很象。為了讓它們工作,公司需要創建專用工具和基礎設施,同時要實現這些還需要許多資源。目前還沒有現成的解決方案,也沒有足夠多的解決方案涵蓋所有的使用情況。”

容器的壽命很短且管理不善

傳統的軟件開發流程為創建、測試和部署,而在容器時代這一流程迅速被抛棄。實際上,開發者常常會從公共倉庫中找出一個随時可用的鏡像,然後将它們放到雲端。

EastwindNetworks公司首席安全與戰略官RobertHuber稱:“在信任度上存在着模糊地帶,即可能被批準也可能不被批準。”他指出,容器鏡像為一套方便的且已經準備就緒的代碼,但是提供商可能沒有時間或是沒有興趣監控其中的安全問題或是發布版本說明。

Huber稱:“理想情況下會有一套檢測版本的流程,但是我從未看到有任何公司這麼做過。公司應當持續檢測正在使用的容器是否有最新版本,代碼是否已經被修補以及是否更新至最新。然而目前這些工作都壓在了開發者身上并且是人工檢測。我相信公司會轉而使用自動化程度更高的流程,但是目前這裡出現了缺口。它們像導彈那樣發射後就不管了。你拉來一個容器并運行它們,然後就完事了。”

在開發者創建自己的容器時情況也好不到哪裡去。開發速度意味着沒有時間進行質量控制或安全測試。當有人通知說容器好了,這些容器就已經完成了自己的工作并且生命周期也已結束了。KudelskiSecurity公司的方案架構主管BoLane稱:“當安全團隊介入時,容器的生命周期可能已經結束了。這是一種挑戰,需要有一種新的安全思維模式。”

他指出,安全意識需要在早期就植入到開發流程中,并盡可能地實現自動化。例如,如果開發者從外部源下載了鏡像,那麼在容器啟用前需要掃描漏洞、未修補的代碼和其他潛在問題。他問道:“一旦啟用,那麼如何維護和監控它們,尤其是生命周期特别短的容器的安全狀态以及與其他組件的交互。”

雲安全廠商SkyhighNetworks聯合創始人SekharSarukkai以其公司為例進行了說明。他稱,他們有自己的雲服務方案,所以他們要應對所有這些挑戰。

Sarukkai稱:“我們正在部署最新的架構堆棧,我們也有微服務。實際上,我們一天可以多次向生産環境中部署。根據慣例,你需要進行安全測試或滲透測試,而這些測試是不能在DevOps環境中實施的。”

他指出,企業必須要找到讓許多功能實現自動化的辦法。這意味着要有能力識别已部署的所有容器并确保它們的組件都是安全的,然後通過應用控制和應用白名單将它們部署在一個安全的環境中,最後對它們進行持續監控。

在4月份召開的RSA大會上,邁克菲推出了一款具有該功能的産品,即邁克菲雲工作負載安全(McAfeeCloudWorkloadSecurity)平台。Sarukkai稱:“它們能夠保護在公有雲和私有雲環境中的Docker容器和這些容器上的工作負載。這些環境包括AWS、Azure和VMWare。我認為這是首款能夠隔離受感染的工作負載和容器的雲工作負載解決方案。”

該産品還能夠通過檢查不必要的管理員權限、未處理的加密要求等措施降低配置風險。他稱:“産品還提升了修複速度。通過與客戶合作的研究顯示,速度提升了90%。”

他還指出,迄今為止他看到的幾乎所有容器安全問題都是因為未能正确配置所導緻的。“我認為這裡隐藏着最大的風險。”

龐大的服務網

雖然配置管理和補丁管理非常困難并且很容易被攻擊者利用,但是它們是可以解決的問題。應用拆散為相互聯通的小型服務所帶來的複雜性則是一項更為艱巨的挑戰。

傳統的完整應用隻會有一個服務和幾個端口。Eggplant公司首席技術官AntonyEdwards稱:“你可以準确知道不法分子将企圖從什麼地方入侵,這會讓确保安全變得容易些。但是在微服務中,你會有許多服務并且常常會有許多端口,這意味着需要保護許多入口的安全。此外,每個入口都缺乏相關信息,這導緻識别哪些人是不法分子變得十分困難。”

這些重擔将會落到确保單個服務的安全上,單個服務的安全将變得極為小心謹慎,如最低權限、嚴密的訪問控制、隔離和審核等等。Edwards稱:“這些措施自上世紀七十年代就已經有了,如今我們需要嚴格落實它們。”

說起來總是比做起來容易。ShiftLeft公司聯合創始人兼首席執行官ManishGupta稱:“公司将他們的應用拆得越零散,數據流就會變得越複雜,也就越難以識别每個微服務都做了什麼。”

如果有洩露出來的硬編碼訪問證書或是認證令牌,那麼整個系統将很容易被攻擊。Gupta稱:“這真的是一個大問題,而人們并沒有意識到這個問題到底有多嚴重。”

随着越來越多的關鍵系統改用軟件即服務的交付模式,問題會變得越發嚴重。他說:“這意味着你正在将大量的數據彙集到自己的應用中,Equifax和優步公司數據洩露事件就是典型的例子。目前這些非常敏感的重要數據正在微服務之間流動,而幾乎沒有人對此擁有良好的可見性。”

洩露的容器會産生漏洞

另一個潛在的安全挑戰來自容器。它們運行在一個共享的環境中,客戶不知道自己的鄰居是誰;如果這個環境是公有雲,則會讓人更為不安。事實上,在前幾年就已經發現Docker和Kubernetes容器管理系統中存在漏洞。

在公有雲上運行容器的公司已經開始意識到這個問題。紅帽公司OpenShift容器平台的高級産品經理KirstenNewcomer稱:“在和我交流的客戶中,大多數客戶都會直接詢問能夠将主機與容器隔離以及能夠将容器彼此隔離的工具有哪些。”

據Portworx公司關于2017年容器部署的調查報告顯示,70%以上的受訪者将他們的容器運行在Linux上。Newcomer稱,在确保容器被隔離方面,其主要特點為可以利用Linux的命名空間和針對強制訪問控制的附加層使用安全增強型Linux。“此外還有被稱為LinuxCapabilities的功能,其允許用戶限制Linux系統中不同類型的訪問權限”

這些對于Linux安全專家來說是非常熟悉的概念,但是對于容器部署團隊或是那些從Windows轉過來的公司來說可能是全新的東西。至少那些運行自己的容器環境的公司,無論是公有雲還是私有雲,他們都完全掌控着這些安全設置。當使用現成的容器,他們不得不相信雲提供商已經正确設置了底層安全基礎設施。

迄今為止,在允許進程脫離容器的漏洞中,還沒有一個造成了重大的公共數據洩露。然而空間被Docker和Kubernetes等多個平台控制的事實意味着如果攻擊者迅速利用某個漏洞,那麼它們将會産生非常廣泛的影響,所以提前做好準備是值得的。

本文作者MariaKorolov在過去二十年中長期關注新興技術和新興市場。

原文網址https://www.csoonline/article/3268922/network-security/whysecuring-containers-andmicroservices-is-a-challenge.html
   

熱門書籍

熱門文章