阿里云课堂:云计算安全体系中的沙箱机制和技术剖析

阿里云课堂第二期在上海开课,“云安全架构设计与实践”主题分享在众多朋友的期待下精彩上演,现场观众再次爆满。本次活动中,李雪峰(花名:虚舟)和杨孟哲(花名:孟哲)两位安全专家为大家献上了精彩演讲,并在OpenSpace环节与观众展开讨论,积极互动。应广大用户要求,我们将云课堂讲师现场分享内容全文整理出来,供大家参考。阿里云课堂会继续在全国各地陆续开课,欢迎大家继续支持!

一、背景介绍
这张图是飞天的体系结构介绍。整个的飞天系统,最基础的两大系统,盘古和伏羲。如果大家之前了解过这方面的资料,应该对这张图非常熟悉。飞天基础系统上承载着多个云产品,ECS/SLB、OSS、OTS、OSPS、包括ODPS的系统。安全机制在飞天及飞天承载的云产品中起着至关重要的作用。

主要的工作包括几个方面,一个是访问控制机制另一方面是安全沙箱.访问控制机制包括从盘古文件的访问、读取和认证机构,还有ODPS、OTS、OSS等系统基于飞天做,飞天会帮它们做所有上层的安全措施基础机制支撑工作。尤其是ODPS系统,其所有的访问控制机制和安全沙箱的系统,都是由飞天安全提供机制来支持的。
今天我们要讲的议题,首先会从攻击者的角度看一下云上的计算系统有哪些Attack Surfaces可以利用.然后看一下目前开源的产品,比较著名的产品从这个角度来看是如何解决安全问题的。以及linux系统提供了那些安全机制可供安全沙箱使用。最后,我们具体了解一下飞天安全沙箱的方案。

首先,我们看一下典型的云计算环境中,为支撑用户代码的运行,从上到下的结构。通常为了让用户代码能够执行高级语言,我们都会有一层高级语言的虚拟机,比如JVM,Cpython。我们以后有些系统会跑JS,这里对应的是V8。这些虚拟器通常是C语言来开发的,相对来说是一个独立的系统,再下一层是Libc的库,这个对应的是C语言的so。再往下一层是LinuxKernel。再往下其实还有,如果是说这个系统用的是虚机,往下还会有物理机,本次分享不讨论这个问题。对于这样的系统来说,如果User code的恶意代码,为了拿到Linux Kernel的root权限需要一步步的渗透。入侵者如果想要到达最终目标,首先要突破高级语言虚拟机的安全防护,比如Java的SecurityManager机制。不过根据最近几年的漏洞情况判断, JVM安全沙箱对入侵来说是并没有太大的难度,可以假定一定会被突破。通过JVM提供的Navtive调用,它可以直接调用到Libc。Libc对入侵者来说,主要目的是要拿到当前进程的权限。最后一层是Linux Kernel,我们在云计算平台上来说,跑用户代码的进程不会是root,大家想像一下也知道,root不会给最终用户区跑这个代码的。当入侵者真的通过前基层的安全防护机制,并成功攻破root权限,那么这台机器已经被他控制在手里了。我们可以想像一下,在云计算这样一个集群里面,我们通常来说会跑成千上万的实例,如果我们把这个实例数放到最大,这样的代码被执行完之后,是不是整个集群所有机器的权限都可以拿到了。这是非常可怕的事情。就算我们在某一方面可以控制用户提交数量,云计算平台上通常会使用相同一台机器同时处理多个用户,如果有一台机器被用户集权到root,上面的所有数据和密钥,对于入侵者来说都是可见的了。
接下来我们看一下,业内有一些做得比较好的安全产品,在安全方面沙箱方面如何解决的用户隔离问题。

首先我们看一下Docker目前使用哪些机制,这张图主要是使用了三个纬度,有两个纬度产生了LXC,使用了Namespaces,Namespaces它可以在多个方面实现一定的隔离能力。这个能力需要在2.6.x以后才能部分开始使用。Cgroups机制保证操作系统资源的合理管理。另外,Docker启用了AUSF的分层文件系统。传统文件系统,我们可以认为是纵向的文件系统,你写哪个文件,这个文件一直到硬件,而AUSF是可以进行叠加的。一层层的文件夹叠加,会映射成一个相同的文件夹。Docker里面,最下面的image用来做系统环境,中间会做APP,最上面是用户运行期的东西,这些东西会被Docker封装成一层层,实现了类似于集装箱式的部署能力。

对于Docker来说,对一个攻击者来说,眼中看到的Docker应用有哪些东西?从刚才的图上也是类似的,整个系统有一个Docker container,右边是DockerEngine。如果你在Docker上直接部署C进程,下面两层就是C的程序。对于恶意用户来说,如果想得到所在机器的root权限,要突破你在Iibc上做的措施,还需要突破kernel中seccomp-bpf,这是kernel提供的一个安全机制,允许你定义某一个进程所能进行的系统过滤。第二、第三层攻破,seccomp-bpf可以进行额外的安全判断。你如果把这个也突破了,其实这台机器也直接root掉了。

接下来我们看google chrome的沙箱。Chrome使用过SUID/Namespaces sandbox,这也是对linx container机制的利用。使用过seccomp-legacy。在没有seccomp-bpf之前google使用seccomp-legacy。seccomp-legacy使用限制非常大。也同样使用过seccomp-bpf。
我们刚才看了两个业内的安全产品,可以简单的总结一下,对于沙箱来说,我们有哪些安全机制可以使用?参考这张图,首先对于JVM来说,我们可以用Java security Manager 以及 Classloader机制。如果是Linux Kernel,那么我们还可以直接利用Kernel Namespaces,Cgroup ,Chroot、umount。这些东西在LXC已经封装好了可以用,而且通常它们在一起使用才可以产生比较好的效果。然后是aufs,2.6才开始支持。Seccomp-bpf是3.5,如果版本不够你就要使用其他方案来做内核层的一些过滤了。
另外一个角度,对云计算上的安全沙箱来说有哪些层次可以做防御?JVM内的防御是否有必要?Java的安全沙箱攻破的难度不是很大,它是不是不要了?刚才我们说了,安全沙箱没有绝对安全的设计,如何在安全上做到尽可能可靠的防护?多层防御可以有效提高安全防护能力。
第二是进层隔离,用于提供安全机制。
第三层要在kernel space里面要有安全过虑。

前面做完了,基于现有的安全机制来说,至少可以认为在目前,可以直接使用的防护措施就这些了。
刚才我们看到了一些安全机制,接下来看看飞天安全在沙箱方面使用哪些机制?其实前面我们说的这些,该用的都用到了。

飞天安全沙箱,是这样的一个系统。简单来看,这张图和我们之前的两张图有相似的地方。最终的方案,我们方案融合了前两个的优点。我们这一层的User code可以放到C语言下进行,Iibc可以有一些拦截。这个地方是基于IPC的,所以你在当前进程要做的破坏或者说做的事情,是无法影响到另一个进程的。最后是Linux container,我们有一层内核过滤机制来保证。
我们今天的分享还是比较聚焦的,就是讲沙箱和安全机制。我们看了一些业内主要的安全产品实现,以及它使用的安全机制。最后针对一个具体的案例-飞天安全沙箱,我们了解了该如何实现融合多种安全机制来实现与著名安全产品相同等级防护能力的安全沙箱。

时间: 2024-10-08 22:03:44

阿里云课堂:云计算安全体系中的沙箱机制和技术剖析的相关文章

李雪峰:云计算安全体系中的沙箱机制和技术剖析

10月25日,阿里云课堂第二期在上海开课,"云安全架构设计与实践"主题分享在众多朋友的期待下精彩上演,现场观众再次爆满.本次活动中,李雪峰(花名:虚舟)和杨孟哲(花名:孟哲)两位安全专家为大家献上了精彩演讲,并在OpenSpace环节与观众展开讨论,积极互动.应广大用户要求,我们将云课堂讲师现场分享内容全文整理出来,供大家参考.阿里云课堂会继续在全国各地陆续开课,欢迎大家继续支持!   以下为讲师李雪峰(虚舟)的分享内容: 一.背景介绍 这张图是飞天的体系结构介绍.整个的飞天系统,最基

阿里云课堂第二期在上海举行

摘要: 10月25日下午,阿里云课堂第二期<云安全的架构设计与实践>在上海光大会展中心国际大酒店举行.此次公开课试图让更多的开发者深入了解到云安全架构那些事儿.当然云安全的架构10月25日下午,阿里云课堂第二期<云安全的架构设计与实践>在上海光大会展中心国际大酒店举行.此次公开课试图让更多的开发者深入了解到云安全架构那些事儿.当然云安全的架构设计背后有大量的技术积累做支撑,远非几个小时的分享交流就能剖析清楚.未来几个月,阿里云还将与InfoQ等技术媒体社区携手在全国12个城市开展阿

王坚:开发者和客户教会阿里云做云计算

本文讲的是王坚:开发者和客户教会阿里云做云计算,云计算在中国正呈现百花齐放的发展势头,各行业.各领域都在以各种各样的方式尝试云计算技术与自身业务的深度结合,云计算的应用实践成为业界关注的重点.11月9日,在杭州举行的阿里云开发者大会,为所有关注者提供了深入了解云计算应用落地的重要机会,大会全面展示了阿里云飞天开放平台上的众多云计算服务,畅捷通.中软.壹人壹本等遍布SaaS.软件企业.互联网和移动互联网等众多领域的企业,基于自身的云计算战略,与阿里云展开了深入的合作. ▲阿里集团CTO 兼阿里云总

以服务为驱动 看阿里云重新定义云计算

本文讲的是以服务为驱动 看阿里云重新定义云计算[IT168评论]我们时常谈起云计算,那云计算是从哪个行业最先发起的呢?答案是互联网,互联网大应用推动了IT产业的变革.互联网的特点是用户需求变化非常快,要求基础架构.软件搭建的方式更加高效,更符合用户的实际需求.为了适应互联网的快速发展,以弹性.高扩展性.安全.低成本为特点的云计算诞生.紧接着,是大数据概念的提出,与云计算一起成为了互联网化时代下最受企业关注的新技术.在本文中,笔者将结合云计算概念.云服务界定.云安全.云与大数据的关系.产业生态.国

阿里云课堂:云平台安全访问控制的设计与实现揭秘

10月25日,阿里云课堂第二期在上海开课,"云安全架构设计与实践"主题分享在众多朋友的期待下精彩上演,现场观众再次爆满.本次活动中,李雪峰(花名:虚舟)和杨孟哲(花名:孟哲)两位安全专家为大家献上了精彩演讲,并在OpenSpace环节与观众展开讨论,积极互动.应广大用户要求,我们将云课堂讲师现场分享内容全文整理出来,供大家参考.阿里云课堂会继续在全国各地陆续开课,欢迎大家继续支持! 访问控制,是一个很古老的话题.大家平时都有接触,但又不是真正的.非常深入的去了解它.我今天想讲的方式,是

阿里云启动“云计算牛咖全国高校行”

本文讲的是阿里云启动"云计算牛咖全国高校行"9月22日,阿里云首席科学家章文嵩走进武汉大学,与武大学子面对面交流,介绍云计算概况和阿里云的计算实践,就此也揭开了阿里云"云计算牛咖全国高校行"的序幕.这是继阿里云大学合作计划AUCP(Aliyun University Cooperation Program)及高校YY计划后,阿里云面向高校推出的又一场云计算盛宴,致力与高校一起构筑"互联网+教育"的新生态,为更多有志创业的在校大学生提供有利条件.

浙数文化携手阿里云拓展云计算服务

                                   浙报数字文化集团股份有限公司(A股上市公司,证券代码600633,简称"浙数文化")与阿里云计算有限公司(简称"阿里云")今日正式宣布达成战略合作,共同建设云计算服务平台,联合在智慧城市解决方案.企业上云和互联网大数据云计算培训等领域互相合作. 拟共同建设的云计算服务平台中,阿里云将提供"飞天"计算模块和技术与人才支撑:浙数文化"富春云"数据中心提供云服务基

专·新·智·惠——阿里云引领云计算服务不断进化

2016年度最精彩的云计算盛会,杭州云栖大会正在杭州云栖小镇盛大召开.本届云栖大会的主题是"飞天·进化",服务作为飞天的核心能力之一,和飞天相生相伴,在云计算的长跑路上持续进化.本届杭州云栖大会,阿里云服务集体亮相,在服务主展台集中展示了覆盖公共云.专有云的全生命周期的支持计划.尊享服务和区域服务,更有云博士.智能质检和自动诊断等黑科技露面. 作为会议期间服务的重头戏,14日举办了以"用心做好服务,用技术开拓未来"为主题的服务专场,内容涵盖阿里云公共云.专有云的服务

希望高手教我在阿里云ECS的Server08R2系统中安装虚拟机

问题描述 希望高手教我在阿里云ECS的Server08R2系统中安装虚拟机.QQ:344151365