随着企业数字化转型的深入,网络接入模式也更加多元化,移动办公、远程接入、云服务等场景在后疫情时代成为新常态!各家企业的网络结构日趋复杂并且向云转化,以往基于边界的网关型身份和访问控制体系难以应对新型威胁;当企业以传统安全防护理念应对安全风险暴露出越来越多问题时,零信任理念提供了新的安全思路。
什么是零信任?
零信任最初是Forrester Research分析师John Kindervag于2010年提出,他认为所有的网络流量都必须是不可信的。“永不信任,始终验证”成为零信任架构的设计原则。
零信任,首先是一种数字化时代的安全“哲学”、架构理念,然后才是一系列的科技产品与工具。其中种类繁多,不一而足;也没有哪家厂商敢声称现在已经提供了所有的、最完整的解决方案。这是一个正在发展的领域,大家都在路上。在这里,我们只探讨其中一种类型的技术方案:软件隔离。
就是像隔离新冠一样的绝对隔离,只不过它是虚拟的 - 任何代码都是受怀疑对象,都可能感染,都得被关在箱子里跑,运行是可以运行的,但是不能被放出来。
事实上,隔离技术早已无处不在。在云端,亚马逊之所以能允许成千上万的“租户”把代码跑在自己的机房里而不用担心安全问题,其中至少有相当一部分原因是跟虚拟机相关的 - 虚拟机就是隔离环境,你的代码只能在这个隔离环境里跑,内存、CPU、网络、存储等等资源,都是安全隔离与受限的。你看不到其他“租户”的代码与资源,他们也看不到你。在客户端,微信之所以能承载几百万个小程序,让网上各种企业用各种前端框架开发出来的代码跑在微信App里面却不用担心微信自身被攻破、用户数据被盗取,同样也离不开以小程序为单位的隔离。
从云端到浏览器端,都有隔离机制,这种机制就是: 安全沙箱。
什么是安全沙箱?
在一台设备(不管是一台服务器还是一个手机,我们称之为“宿主”)中,通过软硬件手段的结合,可以模拟出一个“管控”区域,它的里面是预先指定、划分出来的运算与存储资源,与宿主的其他资源完全隔离。应用代码可以被丢到这个区域里运行,即使它是DDoS gong击软件,它也只能在这么一个资源受限的模拟世界折腾,它就像在Matrix里的人,看不到宿主里其他的平行世界,甚至不知道宿主的存在,无法滥用宿主资源从而毁灭宿主(和其他平行世界)。此外,任何这样的区域,既然是模拟的,不管里面跑着什么,都可以被“一键删除”,一切归零。
这就是计算机世界的沙箱!
沙箱技术有很多种类,是否能称之为“安全沙箱”,则视乎其隔离的程度和自身的技术目的。例如能模拟出一整台服务器或者桌面电脑的虚拟机,应该能称之为安全沙箱 - 你可以在里面跑企业服务、也可以在里面打游戏,并不能影响宿主的安全稳定运行,你也可以把这个虚拟机一键删除,不管里面安装了什么东西。例如浏览器里面的实现,是最为普通用户所能感知的安全沙箱 - 它把远程加载的、来自不同网站的页面进行隔离,并且在运行这些包含大量不知名开源技术的代码时,还需要防范XSSgong击,保护宿主环境(让用户免受隐私泄漏、数据被盗、遭遇钓鱼诈骗、感染等风险)。
容器类技术,诸如docker、LXC等,有沙箱隔离的特点,但因为共享宿主操作系统的内核,并不提供彻底全模拟的环境,所以往往并不被视为安全沙箱。
数字化的发展,“隔离”是硬道理,只是隔离粒度不同,有云端“租户”之间的隔离、虚拟服务器的隔离、网络间微隔离、进程间隔离、乃至小小一个手机上一段代码(例如一个小程序)的隔离。
安全沙箱在企业数字化的应用
空讲“数字化转型”无用,它怎么“落地变现”呢?“转型”后的企业的形态是怎样的呢?
企业的数字化转型,就是企业员工、客户、合作伙伴全部通过软件进行生产协作、经营管理和交易买卖 - 人在哪里无所谓、见不见面不重要,只要保障了数据安全、商业隐私,就可以在网上有效经营。数字化企业,就是建立在软件上、并且管理制度与高效使用这些工具相匹配的企业。
支撑数字化的下一代企业软件是什么样子的?在凡泰极客,我们认为“小程序化”、“安全沙箱化”是其中一个基石。逻辑如下:
- 企业的一切业务内容,表现方式就是软件化代码化。企业的数字内容资产,就是软件
- 软件形态和过去不一样了,它已经彻底脱离PC时代的“单机”,它天然是网络化的、连接型的、传播式的,企业需要掌握软件的出版权、分发权、流动权、使用权
- 随需随用、用完即走的“轻应用”软件形态(见《怎么理解后App时代的轻应用技术》),最符合上述要求。其中“小程序”又是轻应用类型技术中最有广泛基础、最贴近Web因此最有生命力的技术(见《似水无形 - 小程序化》)。
- 用户甚至不再需要去主动意识到“软件”这个概念的强存在,代码都是自动下载、看到就用到的,不再有传统观念下的安装、升级,一切都是透明的
- 通过网络分发传播而下载运行的代码,永远不可信赖,它只能被关在安全沙箱这样的隔离环境里面跑,没有其他选择
- 传统企业之间的资源交换与整合,它的数字化形态就是交换自己的“数字内容资产”,也就是我的平台让你的软件放进来跑一跑服务我的客户,我的软件投放到你的环境里触达一下你的客户。“你中有我,我中有你”,可是我们俩彼此在技术层面没有任何信任基础,只认技术安全,“零信任”。所以你的代码我只能放在沙箱里跑,我投放到你那边的代码,也用沙箱隔离着你的环境
- 在所谓企业“内网”里,运行的一切软件,也不能保证安全,谁知道代码里面用了什么开源组件、供应链是不是已经被污染、是否随着员工随身设备“肉身”进入了防火墙内部?都得被安全沙箱关着才能运行
凡泰极客的 FinClip技术,是一种云端可控的设备端(包括IoT)安全沙箱技术,它以可分发、可流通的小程序代码格式为软件形态,充当下一代企业应用软件的技术底座。 作为Web前端技术的“超集”,基于令牌(non-forgeable token)的安全模型,和当前“零信任架构”下的其他基础技术在最贴近用户、应用的地方能建立良好的配合。
无论接受与否,我们的“现实”世界和“虚拟”世界,都已经变得highly contagious -不安全因素在这两个世界肆虐,“信任”关系却越来越难建立。技术让不安全软件化数字化了,却没有让信任数字化,而是直接把它降为零... “隔离在安全沙箱里”,将是数字化时代的“新常态”。