Maria Korolov
它們的精細(xì)度、部署速度和數(shù)據(jù)流量導(dǎo)致保護(hù)容器環(huán)境的安全需要新的方案。
容器能夠跨不同計(jì)算環(huán)境部署和運(yùn)行軟件,具有小型化、快捷和易于設(shè)置的優(yōu)點(diǎn)。通過(guò)控制庫(kù)、二進(jìn)制文件和配置文件等應(yīng)用運(yùn)行環(huán)境,平臺(tái)和基礎(chǔ)設(shè)施被抽象化,允許應(yīng)用在任何地方運(yùn)行。像本地?cái)?shù)據(jù)中心和混合云一樣,所有主要的云提供商都提供了容器。此外,它們還能夠?yàn)楣竟?jié)省大量的資金。
通過(guò)容器,開(kāi)發(fā)者能夠創(chuàng)建“微服務(wù)”。這些微服務(wù)實(shí)質(zhì)上是應(yīng)用的小型化可重復(fù)使用組件。由于能夠重復(fù)使用,所以微服務(wù)能夠節(jié)省開(kāi)發(fā)者的時(shí)間。同時(shí)它們能夠跨不同平臺(tái)部署。
得益于這些優(yōu)點(diǎn),容器被廣泛采用也就一點(diǎn)也不奇怪了。不幸的是,安全部門(mén)仍在研究它們是如何工作的,以及如何以最佳方式確保它們的安全。據(jù)邁克菲公司近期對(duì)全球1500名IT專(zhuān)業(yè)人員進(jìn)行的調(diào)查顯示,在員工數(shù)量超過(guò)500人的公司中,約80%的公司目前正在使用容器,但僅66%的公司針對(duì)容器制定了安全策略。據(jù)CyberEdge公司對(duì)1200名IT決策者的調(diào)查顯示,容器如今實(shí)際上已經(jīng)與移動(dòng)設(shè)備緊密相連,而后者是公司最大的安全挑戰(zhàn)。
安全為什么是容器領(lǐng)域內(nèi)的一項(xiàng)挑戰(zhàn)有著多重原因。第一個(gè)原因是容器的部署速度;第二個(gè)原因是容器通常需要將應(yīng)用拆解為更小的服務(wù),從而導(dǎo)致數(shù)據(jù)流量增加和訪問(wèn)控制規(guī)則復(fù)雜化;最后一個(gè)原因是容器往往運(yùn)行在帶有新型安全控制的云環(huán)境中,如亞馬遜等。
云安全廠商StackRox的聯(lián)合創(chuàng)始人兼首席技術(shù)官Ali Golshan認(rèn)為,容器安全工具的生態(tài)環(huán)境還不成熟?!斑@與虛擬機(jī)和云的早期階段很象。為了讓它們工作,公司需要?jiǎng)?chuàng)建專(zhuān)用工具和基礎(chǔ)設(shè)施,同時(shí)要實(shí)現(xiàn)這些還需要許多資源。目前還沒(méi)有現(xiàn)成的解決方案,也沒(méi)有足夠多的解決方案涵蓋所有的使用情況?!?/p>
容器的壽命很短且管理不善
傳統(tǒng)的軟件開(kāi)發(fā)流程為創(chuàng)建、測(cè)試和部署,而在容器時(shí)代這一流程迅速被拋棄。實(shí)際上,開(kāi)發(fā)者常常會(huì)從公共倉(cāng)庫(kù)中找出一個(gè)隨時(shí)可用的鏡像,然后將它們放到云端。
Eastwind Networks公司首席安全與戰(zhàn)略官Robert Huber稱(chēng):“在信任度上存在著模糊地帶,即可能被批準(zhǔn)也可能不被批準(zhǔn)?!彼赋?,容器鏡像為一套方便的且已經(jīng)準(zhǔn)備就緒的代碼,但是提供商可能沒(méi)有時(shí)間或是沒(méi)有興趣監(jiān)控其中的安全問(wèn)題或是發(fā)布版本說(shuō)明。
Huber 稱(chēng):“理想情況下會(huì)有一套檢測(cè)版本的流程,但是我從未看到有任何公司這么做過(guò)。公司應(yīng)當(dāng)持續(xù)檢測(cè)正在使用的容器是否有最新版本,代碼是否已經(jīng)被修補(bǔ)以及是否更新至最新。然而目前這些工作都?jí)涸诹碎_(kāi)發(fā)者身上并且是人工檢測(cè)。我相信公司會(huì)轉(zhuǎn)而使用自動(dòng)化程度更高的流程,但是目前這里出現(xiàn)了缺口。它們像導(dǎo)彈那樣發(fā)射后就不管了。你拉來(lái)一個(gè)容器并運(yùn)行它們,然后就完事了?!?/p>
在開(kāi)發(fā)者創(chuàng)建自己的容器時(shí)情況也好不到哪里去。開(kāi)發(fā)速度意味著沒(méi)有時(shí)間進(jìn)行質(zhì)量控制或安全測(cè)試。當(dāng)有人通知說(shuō)容器好了,這些容器就已經(jīng)完成了自己的工作并且生命周期也已結(jié)束了。Kudelski Security公司的方案架構(gòu)主管Bo Lane稱(chēng):“當(dāng)安全團(tuán)隊(duì)介入時(shí),容器的生命周期可能已經(jīng)結(jié)束了。這是一種挑戰(zhàn),需要有一種新的安全思維模式?!?/p>
他指出,安全意識(shí)需要在早期就植入到開(kāi)發(fā)流程中,并盡可能地實(shí)現(xiàn)自動(dòng)化。例如,如果開(kāi)發(fā)者從外部源下載了鏡像,那么在容器啟用前需要掃描漏洞、未修補(bǔ)的代碼和其他潛在問(wèn)題。他問(wèn)道:“一旦啟用,那么如何維護(hù)和監(jiān)控它們,尤其是生命周期特別短的容器的安全狀態(tài)以及與其他組件的交互?!?/p>
云安全廠商Skyhigh Networks聯(lián)合創(chuàng)始人Sekhar Sarukkai以其公司為例進(jìn)行了說(shuō)明。他稱(chēng),他們有自己的云服務(wù)方案,所以他們要應(yīng)對(duì)所有這些挑戰(zhàn)。
Sarukkai稱(chēng):“我們正在部署最新的架構(gòu)堆棧,我們也有微服務(wù)。實(shí)際上,我們一天可以多次向生產(chǎn)環(huán)境中部署。根據(jù)慣例,你需要進(jìn)行安全測(cè)試或滲透測(cè)試,而這些測(cè)試是不能在DevOps環(huán)境中實(shí)施的?!?/p>
他指出,企業(yè)必須要找到讓許多功能實(shí)現(xiàn)自動(dòng)化的辦法。這意味著要有能力識(shí)別已部署的所有容器并確保它們的組件都是安全的,然后通過(guò)應(yīng)用控制和應(yīng)用白名單將它們部署在一個(gè)安全的環(huán)境中,最后對(duì)它們進(jìn)行持續(xù)監(jiān)控。
在4月份召開(kāi)的RSA大會(huì)上,邁克菲推出了一款具有該功能的產(chǎn)品,即邁克菲云工作負(fù)載安全(McAfee Cloud Workload Security)平臺(tái)。Sarukkai稱(chēng):“它們能夠保護(hù)在公有云和私有云環(huán)境中的Docker容器和這些容器上的工作負(fù)載。這些環(huán)境包括AWS、Azure和VMWare。我認(rèn)為這是首款能夠隔離受感染的工作負(fù)載和容器的云工作負(fù)載解決方案?!?/p>
該產(chǎn)品還能夠通過(guò)檢查不必要的管理員權(quán)限、未處理的加密要求等措施降低配置風(fēng)險(xiǎn)。他稱(chēng):“產(chǎn)品還提升了修復(fù)速度。通過(guò)與客戶(hù)合作的研究顯示,速度提升了90%?!?/p>
他還指出,迄今為止他看到的幾乎所有容器安全問(wèn)題都是因?yàn)槲茨苷_配置所導(dǎo)致的?!拔艺J(rèn)為這里隱藏著最大的風(fēng)險(xiǎn)。”
龐大的服務(wù)網(wǎng)
雖然配置管理和補(bǔ)丁管理非常困難并且很容易被攻擊者利用,但是它們是可以解決的問(wèn)題。應(yīng)用拆散為相互聯(lián)通的小型服務(wù)所帶來(lái)的復(fù)雜性則是一項(xiàng)更為艱巨的挑戰(zhàn)。
傳統(tǒng)的完整應(yīng)用只會(huì)有一個(gè)服務(wù)和幾個(gè)端口。Eggplant公司首席技術(shù)官Antony Edwards稱(chēng):“你可以準(zhǔn)確知道不法分子將企圖從什么地方入侵,這會(huì)讓確保安全變得容易些。 但是在微服務(wù)中,你會(huì)有許多服務(wù)并且常常會(huì)有許多端口,這意味著需要保護(hù)許多入口的安全。此外,每個(gè)入口都缺乏相關(guān)信息,這導(dǎo)致識(shí)別哪些人是不法分子變得十分困難。”
這些重?fù)?dān)將會(huì)落到確保單個(gè)服務(wù)的安全上,單個(gè)服務(wù)的安全將變得極為小心謹(jǐn)慎,如最低權(quán)限、嚴(yán)密的訪問(wèn)控制、隔離和審核等等。Edwards稱(chēng):“這些措施自上世紀(jì)七十年代就已經(jīng)有了,如今我們需要嚴(yán)格落實(shí)它們。”
說(shuō)起來(lái)總是比做起來(lái)容易。ShiftLeft公司聯(lián)合創(chuàng)始人兼首席執(zhí)行官M(fèi)anish Gupta稱(chēng):“公司將他們的應(yīng)用拆得越零散,數(shù)據(jù)流就會(huì)變得越復(fù)雜,也就越難以識(shí)別每個(gè)微服務(wù)都做了什么?!?/p>
如果有泄露出來(lái)的硬編碼訪問(wèn)證書(shū)或是認(rèn)證令牌,那么整個(gè)系統(tǒng)將很容易被攻擊。Gupta 稱(chēng):“這真的是一個(gè)大問(wèn)題,而人們并沒(méi)有意識(shí)到這個(gè)問(wèn)題到底有多嚴(yán)重?!?/p>
隨著越來(lái)越多的關(guān)鍵系統(tǒng)改用軟件即服務(wù)的交付模式,問(wèn)題會(huì)變得越發(fā)嚴(yán)重。他說(shuō):“這意味著你正在將大量的數(shù)據(jù)匯集到自己的應(yīng)用中,Equifax和優(yōu)步公司數(shù)據(jù)泄露事件就是典型的例子。目前這些非常敏感的重要數(shù)據(jù)正在微服務(wù)之間流動(dòng),而幾乎沒(méi)有人對(duì)此擁有良好的可見(jiàn)性?!?/p>
泄露的容器會(huì)產(chǎn)生漏洞
另一個(gè)潛在的安全挑戰(zhàn)來(lái)自容器。它們運(yùn)行在一個(gè)共享的環(huán)境中,客戶(hù)不知道自己的鄰居是誰(shuí);如果這個(gè)環(huán)境是公有云,則會(huì)讓人更為不安。事實(shí)上,在前幾年就已經(jīng)發(fā)現(xiàn)Docker和Kubernetes容器管理系統(tǒng)中存在漏洞。
在公有云上運(yùn)行容器的公司已經(jīng)開(kāi)始意識(shí)到這個(gè)問(wèn)題。紅帽公司OpenShift容器平臺(tái)的高級(jí)產(chǎn)品經(jīng)理Kirsten Newcomer 稱(chēng):“在和我交流的客戶(hù)中,大多數(shù)客戶(hù)都會(huì)直接詢(xún)問(wèn)能夠?qū)⒅鳈C(jī)與容器隔離以及能夠?qū)⑷萜鞅舜烁綦x的工具有哪些?!?/p>
據(jù)Portworx公司關(guān)于2017年容器部署的調(diào)查報(bào)告顯示,70%以上的受訪者將他們的容器運(yùn)行在Linux上。Newcomer稱(chēng),在確保容器被隔離方面,其主要特點(diǎn)為可以利用Linux的命名空間和針對(duì)強(qiáng)制訪問(wèn)控制的附加層使用安全增強(qiáng)型Linux?!按送膺€有被稱(chēng)為L(zhǎng)inux Capabilities的功能,其允許用戶(hù)限制Linux系統(tǒng)中不同類(lèi)型的訪問(wèn)權(quán)限”
這些對(duì)于Linux安全專(zhuān)家來(lái)說(shuō)是非常熟悉的概念,但是對(duì)于容器部署團(tuán)隊(duì)或是那些從Windows轉(zhuǎn)過(guò)來(lái)的公司來(lái)說(shuō)可能是全新的東西。至少那些運(yùn)行自己的容器環(huán)境的公司,無(wú)論是公有云還是私有云,他們都完全掌控著這些安全設(shè)置。當(dāng)使用現(xiàn)成的容器,他們不得不相信云提供商已經(jīng)正確設(shè)置了底層安全基礎(chǔ)設(shè)施。
迄今為止,在允許進(jìn)程脫離容器的漏洞中,還沒(méi)有一個(gè)造成了重大的公共數(shù)據(jù)泄露。然而空間被Docker和Kubernetes等多個(gè)平臺(tái)控制的事實(shí)意味著如果攻擊者迅速利用某個(gè)漏洞,那么它們將會(huì)產(chǎn)生非常廣泛的影響,所以提前做好準(zhǔn)備是值得的。
本文作者M(jìn)aria Korolov在過(guò)去二十年中長(zhǎng)期關(guān)注新興技術(shù)和新興市場(chǎng)。
原文網(wǎng)址
https://www.csoonline.com/article/3268922/network-security/why-securing-containers-and-microservices-is-a-challenge.html