阿里云課堂:云安全的架構設計與實踐之旅

jopen 10年前發布 | 27K 次閱讀 阿里云

        10 月 25 日下午,阿里云課堂第二期《云安全的架構設計與實踐》在上海光大會展中心國際大酒店舉行。此次公開課試圖讓更多的開發者深入了解到云安全架構那些事兒。當 然云安全的架構設計背后有大量的技術積累做支撐,遠非幾個小時的分享交流就能剖析清楚。未來幾個月,阿里云還將與 InfoQ 等技術媒體社區攜手在全國 12 個城市開展阿里云技術公開課,通過與講師面對面地交流,使開發者真正了解云計算、更深入地用好云計算。雖然阿里云課堂的步調稍晚,但是我們會用心走好每一 步,歡迎關注阿里云公開課,希望我們不要再錯過!

        本期公開課我們邀請到阿里云飛天系統兩位資深安全技術專家李雪峰(花名虛舟)和楊孟哲(花名孟哲);兩位講師分別就《云計算安全體系中的沙箱機制和技術剖析》、《云平臺安全訪問控制的設計與實現揭秘》這兩個話題進行了分享。本文將對這兩個分享做下簡單的回顧。

        主題一:云計算安全體系中的沙箱機制和技術剖析

        飛天安全平臺技術專家李雪峰重點介紹了阿里飛天的體系結構,主要包括兩大塊,一塊是盤古系統,還有一個是伏羲系統。如下圖,圖上有 ECS/SLB、OSS、OTS、OSPS、包括 ODPS 的系統。

阿里云課堂:云安全的架構設計與實踐之旅

        所有的飛天訪問控制機制,包括從盤古文件的訪問、讀取和認證機構、 ODPS、OTS、OSS 等系統基于飛天做,飛天會幫它們做所有上層的安全措施基礎機制支撐工作。目前比較重要的是 ODPS 系統,在 ODPS 里面所有的訪問控制機制和安全沙箱的系統,都是基于整個飛天的下層安全機制打造的。這也是我們今天所要分享的主題,主要從以下幾個方面來探討:

        第一,從攻擊者的角度看一下云上的系統有哪些 Attack  Surfaces 可以利用;

        第二,看目前開源的產品,比較著名的產品是如何進行防,以及做哪些工作的;

        第三,了解目前 Mechanisms 系統可以為我們做哪些安全機制;

        第四,安全沙箱所做的安全解決方案。

阿里云課堂:云安全的架構設計與實踐之旅

        首先,雪峰用一張圖展示了典型的云計算環境。如圖:從上到下,通常來說用戶代碼第一層進行執行,再下一層是 Libc 的庫,這個對應的是C語言的 SO。再往下一層是 Linux  Kernel。入侵者如果想要到達最終目標,首先要突破第二層的安全防護,當入侵者寫了一個代碼上傳到云空間站,它有非常大的概率,如果說它想去滲透你的 主機和平臺,對于本地語言,也就是虛機里面所提供的,它可以直接供給到 Iibc。到了 Iibc,對典型的云計算環境,我們會有自己的安全實現,會在里面做一些安全的加強工作。Iibc 對入侵者來說,主要目的是要拿到當前進程的情況。

        接下來雪峰以目前比較火的 Docker 為例,講解了 Docker 的安全防御機制。對于 Docker 來說,整個系統有一個 Docker container,右邊是 DockerEngine。如果你在 Docker 上直接布C進程,下面兩層是C的程序。對于惡意用戶來說,如果想到到所在及其的 root 權限,要突破你在 Iibc 上做的措施,然后有一個 seccomp-bpf,這實際是一個安全機制,允許你定義某一個進程所能進行的系統過濾。第二、第三層攻破,seccomp-bpf 可以進行額外的安全判斷。你如果把這個也突破了,其實這臺機器也直接 root 掉了。

        安全沙箱沒有絕對安全的設計,如何在安全上做到最高層次的保證?雪峰提到,主要做到以下兩點:

        1、進層隔離,就是提供安全機制。

        2、在 kernel space 里面安全過慮。        

        總體來說,本次分享還是比較聚焦的,讓我們對云計算安全體系中的沙箱機制有了一個初步的了解,對于飛天系統的安全產品防護方案也有了一個全新的認識。

        主題二:云平臺安全訪問控制的設計與實現揭秘

        飛天安全平臺技術專家楊孟哲以一種比較輕松的方式讓大家了解了阿里云的飛天和云平臺架構設計。

        首先,從訪問控制的概念說起。訪問控制要有主體,一個人也好,一個進程也好,要有發起訪問的人。然后有客體和真正的操作,同樣的道理,我們可能有很多的客體和它們的操作,這樣的簡單表格就完成了訪問控制的設計。

阿里云課堂:云安全的架構設計與實踐之旅

        主流的訪問控制實現,主要有兩個思路。

        第一 :ACL。ACL 是以客體作為出發點,我們有文件和表的兩樣東西,我們在這個客體上面可以附上一個列表,上面寫某個客體有什么權限。我們可以定義出這樣的列表,當 Alice 訪問的時候,有權限我們就放過,沒有權限我們就不放過。

        第二:Capabilit。這個概念可能大家聽少比較少,卻經常用到。孟哲舉例說:比如,我從杭州坐高鐵過來,高鐵的這件事上,或者說火車票機 制上,本質上就是機遇 capability 的訪問控制。我們可以給 Alice 這個人發一張票,上面寫著對文件、對表有讀的權限,Alice 要訪問的時候出示表,我們檢查,有權限我們就放過。

        ACL 和 Capability 的區別

        阿里云課堂:云安全的架構設計與實踐之旅

        這兩個理念在不同的場景下有不同的應用,在此給大家做一個對比,方便大家應用。

        第一:認證方面;作為 ACL 來說,認證是必須的。訪問控制列表,上面寫著 Alice 有讀寫權限,但是你不知道訪問你的人是 Alice 還是 Bob,你就根本無法使用。而 Capability 認證是可選的。

        第二:授權操作;ACL 里面授權必須在客體進行,也就是文件的訪問列表上加一項。完成授權,必須操作客體。而對 Capability 來說,授權操作是獨立的,沒有必要進火車站的那一刻做授權,只需要提前或者是在有時間的時候去買票就可以了。

        第三,安全保障;對 ACL 來說,必須要保護好 ACL 的數據安全,如果客體可以篡改那就是不安全的。對 capability 來說,簽發和驗證的密鑰必須是安全的,使你沒有能力或者說比較困難、難以偽造這樣的一個權限。

        第四,委派;這也是訪問控制經常有的概念。在 ACL 的訪問控制列表里面,基本是走的授權流程。在 capability 的機制里面,委派是很簡單的事情,主體可以直接委派,沒有其他繁瑣的流程。

        第五:撤銷授權;在 ACL 里面非常容易,管理員把某個人的格子刪掉就可以了,但是在 capability 是非常大的難題。無法從別人的計算機或者是別人的手里刪除,也無從知道別人是否把這個數據拷貝了無數次。

        為了給大家講得更生動一些,孟哲結合下阿里云的 ODPS 產品來給現場的開發者們演示,讓大家對這兩個概念更形象化的區分開來。 

        從訪問控制的概念入手,從抽象到具象,從概念從實例,包括一些實現上的設計理念,不同場景下使用不同的訪問控制策略,整個流程清晰明了。至此本次公開課的課程介紹便告一段落。

        自由討論:OpenSpace 環節

        兩個分享結束后,是茶歇和 OpenSpace。OpenSpace 是供參會者和講師充分溝通的環節,不過在現場從茶歇開始,兩位講師就沒有獲得休息的機會,一直被參會者包圍直到活動結束。

        許多參會者在微博上發表了評論:

        @菜鳥成長日記:今天聽了,控制相關的干貨不少,贊。

        #阿里云技術探秘之旅#小編@丹心隨夢格式化現場感受:雪峰老師睿智沉穩,從飛天訪問控制機制、安全沙箱機制、云安全技術等方面詳盡剖析,解讀了飛天安全那些事兒;孟哲老師風趣幽默,揭秘了云計算安全訪問控制的三要素,讓大家了解到飛天底層的訪問控制和我們所看見的云服務之間的關系。哇哦,長見識了,聽不夠呀^_^

        這一期的結束也預示著下一期的開始,我們的技術之旅還在繼續。“雙 11”大促即將來臨,牽動著多少電商人的心,“按秒作業”的“瘋狂模式”,痛并快樂的一天,每一分每一秒都是對技術人員的有力見證。在這個逛歡的背景下, 淘寶后臺有哪些技術在支撐?下一期公開課,我們將為您揭秘其背后的故事,讓我們拭目以待。

        如果您希望在阿里云公開課上討論一些技術話題或其他建議,請通過@阿里云告訴我們,下期再見。

來自:http://news.cnblogs.com/n/507103/

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!