藏在“隱秘角落”里的容器問(wèn)題,你敢說(shuō)都知道?

McKnight說(shuō),這些技術(shù)把交付安全應(yīng)用程序和服務(wù)傳統(tǒng)上所涉及的很多復(fù)雜問(wèn)題抽象化了,而一些開(kāi)發(fā)團(tuán)隊(duì)認(rèn)為這在一定程度上能保證安全。問(wèn)題是,容器實(shí)現(xiàn)不是萬(wàn)無(wú)一失的,開(kāi)發(fā)團(tuán)隊(duì)在使用它們時(shí)所犯的錯(cuò)誤可能會(huì)造成安全問(wèn)題,而不是解決安全問(wèn)題。

隨著越來(lái)越多的企業(yè)將數(shù)據(jù)和工作負(fù)載遷移到云上,很多企業(yè)都依賴于容器——將代碼及其相關(guān)項(xiàng)封裝在一起的軟件單元,以便應(yīng)用程序在不同的計(jì)算環(huán)境之間遷移時(shí)能夠可靠地運(yùn)行。Clemson大學(xué)遺傳與生物化學(xué)系的云架構(gòu)師Cole McKnight表示,容器化被認(rèn)為是一種以安全方式部署應(yīng)用程序和服務(wù)的強(qiáng)大技術(shù)。

McKnight介紹說(shuō),Docker和Singularity等容器引擎提供了一種方法來(lái)為具體應(yīng)用程序?qū)嵤┖头职l(fā)最佳實(shí)踐安全策略,而不是依靠某個(gè)用戶來(lái)配置安全安裝。McKnight說(shuō):“K8s、Mesos或者Docker Swarm等容器編排平臺(tái)集成了安全機(jī)制,專門(mén)用于部署和執(zhí)行容器。其結(jié)果是產(chǎn)生了易于配置的生態(tài)系統(tǒng),用于開(kāi)發(fā)和部署容器。”

McKnight說(shuō),這些技術(shù)把交付安全應(yīng)用程序和服務(wù)傳統(tǒng)上所涉及的很多復(fù)雜問(wèn)題抽象化了,而一些開(kāi)發(fā)團(tuán)隊(duì)認(rèn)為這在一定程度上能保證安全。問(wèn)題是,容器實(shí)現(xiàn)不是萬(wàn)無(wú)一失的,開(kāi)發(fā)團(tuán)隊(duì)在使用它們時(shí)所犯的錯(cuò)誤可能會(huì)造成安全問(wèn)題,而不是解決安全問(wèn)題。

1

太專注于容器本身

McKnight說(shuō):“實(shí)施安全容器時(shí),最常見(jiàn)的錯(cuò)誤是只關(guān)注容器本身。”他說(shuō),采用鏡像安全的最佳實(shí)踐非常重要,但開(kāi)發(fā)人員通常是把重點(diǎn)放在鏡像的安全性上,而沒(méi)有考慮執(zhí)行環(huán)境。

McKnight說(shuō):“容器內(nèi)的任何安全機(jī)制都無(wú)法保護(hù)其免受主機(jī)的攻擊。承載容器引擎的每臺(tái)計(jì)算機(jī)必須在每一層都受到保護(hù),以防出現(xiàn)任何傳統(tǒng)上可被利用的漏洞。”

McKnight說(shuō),容器引擎和容器編排平臺(tái)(如果適用)必須配置為能夠正確使用集成的容器安全機(jī)制。“所以,容器的安全是以主機(jī)操作系統(tǒng)和網(wǎng)絡(luò)為基礎(chǔ)的。”

2

認(rèn)為代碼庫(kù)是安全的

獨(dú)立網(wǎng)絡(luò)安全顧問(wèn)Tony Asher指出,在部署容器時(shí),一些企業(yè)會(huì)犯錯(cuò)誤,把代碼庫(kù)包括在內(nèi),并認(rèn)為它們是安全的。Asher說(shuō):“這包括開(kāi)發(fā)套件中的庫(kù)。更為嚴(yán)重的是,通常為了加快開(kāi)發(fā)而引入了第三方庫(kù)。”

Asher說(shuō),安全問(wèn)題在于這些應(yīng)用程序代碼庫(kù)中可能存在漏洞。“編譯應(yīng)用程序,并將其引入到產(chǎn)品容器中可能會(huì)導(dǎo)致漏洞攻擊而帶來(lái)嚴(yán)重風(fēng)險(xiǎn)。”

為了解決這個(gè)問(wèn)題,Asher建議企業(yè)在考慮導(dǎo)入第三方庫(kù)時(shí),把庫(kù)限制在應(yīng)用程序容器滿足其成功標(biāo)準(zhǔn)所需的范圍內(nèi),掃描代碼以查找漏洞,并應(yīng)用安全檢查過(guò)程。

3

給予容器

不必要的特權(quán)

風(fēng)險(xiǎn)投資公司ClearSky的管理合伙人Jay Leek說(shuō),給容器太多特權(quán)是很常見(jiàn)的,攻擊者可以濫用這些特權(quán)來(lái)利用容器不應(yīng)該訪問(wèn)但確實(shí)能夠訪問(wèn)的資源。Leek說(shuō):“在此,應(yīng)該應(yīng)用最小特權(quán)原則,但要執(zhí)行運(yùn)行時(shí)行為監(jiān)視,以確保能夠檢測(cè)到濫用任何必要的應(yīng)用程序特權(quán)的情況。”

McKnight說(shuō),一種常見(jiàn)的做法是在執(zhí)行環(huán)境中以特權(quán)方式運(yùn)行容器。他說(shuō):“取決于主機(jī)的軟件堆棧,這會(huì)有所不同。”但是在主機(jī)環(huán)境中給予容器不必要的特權(quán)會(huì)帶來(lái)嚴(yán)重的問(wèn)題,不僅會(huì)導(dǎo)致容器被攻破,主機(jī)也會(huì)被攻破。

McKnight說(shuō),當(dāng)需要特權(quán)時(shí),應(yīng)該謹(jǐn)慎地以精細(xì)的粒度給予特權(quán)。“最佳實(shí)踐是避免在主機(jī)環(huán)境中為容器配置了全部權(quán)限。”

4

過(guò)度公開(kāi)容器

類似的,要以同樣的理念來(lái)設(shè)計(jì)在執(zhí)行時(shí)需要公開(kāi)給公共網(wǎng)絡(luò)的容器。McKnight說(shuō):“應(yīng)該只開(kāi)放絕對(duì)必要的通道,而不是配置全部策略導(dǎo)致容器公開(kāi)而受到攻擊。”

在網(wǎng)絡(luò)方面,需要仔細(xì)考慮容器的數(shù)據(jù)和進(jìn)程公開(kāi)給其他實(shí)體的方式。McKnight說(shuō):“容器安全還是以傳統(tǒng)操作系統(tǒng)和網(wǎng)絡(luò)安全為基礎(chǔ)。”必須檢查容器與外部卷、網(wǎng)絡(luò)和進(jìn)程之間的任何交互。

5

未能正確檢查鏡像

企業(yè)在部署容器時(shí)通常忽略的另一個(gè)因素是它們所基于的鏡像。McKnight說(shuō):“開(kāi)發(fā)人員通常會(huì)犯的錯(cuò)誤是,在將另一方開(kāi)發(fā)的鏡像集成到他們的解決方案之前,不對(duì)其進(jìn)行適當(dāng)?shù)臋z查。”

在從公共注冊(cè)表部署容器或者將其用作基本鏡像之前,應(yīng)對(duì)其進(jìn)行掃描以查找惡意軟件和漏洞。McKnight說(shuō),此外,企業(yè)應(yīng)該有一名經(jīng)驗(yàn)豐富的開(kāi)發(fā)人員徹底檢查鏡像,找出不必要的漏洞。

McKnight說(shuō):“如果認(rèn)為推送到公共注冊(cè)表處的鏡像是安全的,這可能是非常危險(xiǎn)的,特別是用它們構(gòu)建其他鏡像時(shí)。”

6

不尊重

不可變鏡像的原則

Asher指出,不可變鏡像是不會(huì)改變的。他說(shuō):“這是Docker、K8s和其他容器解決方案的一個(gè)原則。”在零信任的互聯(lián)網(wǎng)上部署系統(tǒng)和數(shù)據(jù)時(shí),應(yīng)建立一個(gè)確保完整性的流程。

不可變鏡像有一些優(yōu)點(diǎn),例如可預(yù)測(cè)、可銷(xiāo)售以及可實(shí)現(xiàn)自動(dòng)恢復(fù)。Asher說(shuō),還有完整性,這是安全的核心目標(biāo)之一。

Asher說(shuō):“當(dāng)產(chǎn)品容器不遵循不可變?cè)瓌t時(shí),應(yīng)用程序支持就能夠連接上它們并進(jìn)行修改。這種行為會(huì)引發(fā)多重安全隱患。具體來(lái)說(shuō),它會(huì)破壞容器的完整性。”

最令人擔(dān)憂的風(fēng)險(xiǎn)之一是惡意行為者將容器修改為包含惡意代碼。Asher說(shuō),這會(huì)對(duì)企業(yè)造成重大影響。監(jiān)控容器的完整性可以極大地降低這種風(fēng)險(xiǎn)。

Asher說(shuō):“改進(jìn)并糾正部署流程,以防止產(chǎn)品容器發(fā)生變化。一定要在質(zhì)量保證和測(cè)試環(huán)境中進(jìn)行更改,而且更改是得到批準(zhǔn)的,然后部署新的不可變鏡像以替換舊鏡像。”

作者:Bob Violino目前在紐約,是Insider Pro、Computerworld、CIO、CSO、InfoWorld和Network World的特約撰稿人。

編譯:Charles

原文網(wǎng)址:https://www.csoonline.com/article/3541149/6-common-container-security-mistakes-to-avoid.html

THEEND

最新評(píng)論(評(píng)論僅代表用戶觀點(diǎn))

更多
暫無(wú)評(píng)論