隨著企業越來越多轉向容器技術以改進自身應用交付能力與敏捷性,容器及其內容的安全性影響也開始受到愈發嚴格的審查。
容器供應商Docker、紅帽以及其它企業正在積極行動,旨在就安全性相關顧慮進行市場安撫。去年8月,Docker在最新推出的Docker 1.8版本當中提供Docker Content Trust功能。其利用加密機制對運行在Docker用戶軟件基礎設施之內的代碼及軟件版本進行保護。這一設計思路旨在保護Docker用戶免受惡意后門的侵襲,具體包括共享應用鏡像以及其它潛在安全威脅。
Docker Content Trust專注于實現所交付Docker容器內容的一致性。最終,其會利用加密簽名進行Docker鏡像部署,這套方案亦適用于Linux內核開發并為眾多嵌入式系統開發商及OEM廠商所選擇,旨在確保只有經過簽名的鏡像才能夠進行啟動(例如三星KNOX Android代碼)。
然而,這也只是容器安全的惟一一道屏障。換言之,我們在保障整套鏡像免受安全漏洞威脅方面面臨著嚴峻挑戰。如果企業無法確保軟件堆棧與應用組合遠離已知威脅、有漏洞開源軟件源代碼版本等因素,那么上述舉措只能作為部分解決方案而非真正搞定問題。如果沒有這種開源清理機制作為輔助,我們所使用的代碼將始終同其剛剛被開發出時一樣——其中包含著大量存在于開源組件內的安全漏洞。
一種更為全面的容器安全實現方式
我們需要的是利用可靠的開源技術選項、用戶與開源代碼集成警惕性以及代碼持續維護工作。而最重要的是了解自己的代碼內容,因此我們無法管理自己看不到的事物。
對容器內部代碼具備可審視能力對容器安全來說至關重要,其甚至是決定容器自身是否安全的先決條件。新型安全漏洞正被不斷發現,而這些漏洞都會給開源組件各前期版本造成影響。因此,從構建及部署工作之初就確保其中不存在安全漏洞可謂至關重要,但單純做到這一點還遠遠不夠。保護容器內容在困難程度上同保護其它軟件堆棧安全性并無區別,其惟一的特性就是我們該何時以及如何在容器開發與部署完成之后繼續保持對其可查看能力。
容器帶來的安全風險具體取決于通過容器所訪問之數據的敏感性程度以及容器部署的具體位置,例如在防火墻之后抑或是面向互聯網。
面向互聯網的Web與云應用已經成為網絡犯罪活動的主要目標,而且明顯代表著最可怕的潛在風險。作為一類公開攻擊面,它們會受到各種攻擊活動的侵擾,包括跨站點腳本、SQL注入以及拒絕服務等等。考慮到開源框架與其它云/Web應用組件的大規模普及,通過開源清理工作對這些組件當中的安全漏洞進行處理能夠顯著提升安全性水平。
為什么開源清理如此必要
隨著開源軟件在企業環境中不斷普及,再加上最近高曝光度開源安全漏洞的大量出現,如今開源清理已經成為實現安全需求并建立強大應用安全戰略的一類重要組成部分。正如醫療衛生領域注視清理感染源,開源清理工作亦著眼于代碼源頭,旨在確保軟件堆棧及應用程序組合當中所使用的開源代碼不受已知可利用漏洞的影響。這一點對于容器乃至整套軟件堆棧中的各個元素都非常重要。
任何類型的軟件當中都必然存在著安全漏洞,開源代碼自然也不例外。檢測并解決開源項目中的安全漏洞正變得愈發重要,特別是在Heartbleed以及Freak兩大高關注度安全漏洞曝光以來,很多企業已經開始將開源代碼清理作為強大應用安全戰略中的關鍵性組成部分。另外,目前眾多組織機構也開始將應用程序安全以前所未有的力度同容器安全加以結合。
好消息是,對于正在開發端到端開源安全戰略的企業而言,目前已經存在著大量創新型工具,足以作為理想的戰術性立足點。這些工具能夠對軟件組合中的全部開源組成部分進行分類——從Linux、Android以及Hadoop等完整平臺到個別代碼組件,甚至能夠一路細化到內部開發之應用代碼甚至代碼片段的水平。
這些掃描工具在切合企業用戶需求或者被集成至軟件開發流程當中后,能夠提供大量重要信息供決策者參考及實施,而且完全不會拖慢或者推遲產品的上市周期。
要想實現開源清理,我們必須建立起強大的流程以實現以下幾項檢查工作:
應用程序與哪款開源軟件協作運作或者一同部署
這款開源軟件處于構建樹及系統架構中的各個位置
該代碼是否存在已知安全漏洞
創建一份準確的開源風險概要
安全擔憂是否會拖慢容器普及速度?
企業組織如今之所以積極接納容器技術,是因為其具備諸多成熟性優勢:提升應用程序可擴展能力、降低部署出錯機率、縮短產品上市時間并簡化應用程序管理。而隨著企業多年來對開源項目的觀點逐漸由純粹的好奇轉化為以精力需要為出發點,容器似乎已經達到了類似的發展轉折點。另外,正如開源代碼一樣,目前市場同樣提出了類似的問題——安全問題是否會阻礙其進一步普及。
行業分析師們對這一問題的結論有所不同。Forrester研究公司的Dave Bartoletti認為安全問題不會顯著降低容器的普及速度,甚至這類虛擬化技術的前進腳步會快于安全要求的逐步明確。“在虛擬化領域,人們無論如何都會進行部署,即使安全部門與合規性要求皆未到位,而且我認為我們在Docker身上將看到同樣的跡象,”Bartoletti表示。
與此同時,451研究公司的Adrian Sanabria則認為,企業將對容器保持敬而遠之的態度,直到與之相關的安全標準得以確定及建立。“實際情況是,安全已經成為一大重要障礙,其直接導致很多企業根本不會嘗試容器技術,直到一定程度的標準陸續出臺,”Sanabria斷言。而作為這種論調的另一項證明,紅帽公司于2015年1月在亞太地區、歐洲、中東以及北美進行了一次調查,并發現有53%的受訪者表示安全性是他們在面對容器技術采納時最關注的方向。
為了克服這些障礙,企業應當采取更理想的行動對自身軟件基礎架構內的全部元素進行審視與控制,其中當然也包括容器技術因素。