沙盒(Sandbox),也有人称之为沙箱,是近年来在信息安全领域应用较为广泛的技术之一。Google Chrome浏览器、MS Office2010中都应用了一些沙盒技术来提升其安全性。目前的IT领域中,应用沙盒技术比较广泛的是杀毒软件行业,比如用于病毒实验甚至是用户应用中的各种“沙盒”安全模式。
那么,究竟什么是沙盒技术呢?简单来说,沙盒是一种“环境”,就是为一些来源不可信、具备破坏力或无法判定程序意图的程序,提供试验环境。然而,沙盒中的所有改动对操作系统不会造成任何损失。
沙盒最基本的出发点,也是最终的目的,就是为运行在其中的程序提供单独的环境,无论运行结果如何,都不对沙盒以外的系统环境产生任何影响。将这一原理往上层应用中扩展一下,就在理论上为内网安全领域提供了一个新的方向,即应用沙盒技术,隔离那些会对整体内网安全造成危害的行为,从而让安全风险降到较低水平。
国内知名内网安全产品IP-guard的厂商,溢信科技的研发总监黄凯表示,考虑到沙盒技术本身所带来的安全特征与内网安全的行业特征,未来几年,内网安全领域可能在多个方面会应用到沙盒技术。
一、应用沙盒技术,降低未知程序的安全风险
为了完成各种任务,内网用户的计算机中可能安装了多种应用程序,如电子邮件、文本处理、即时通讯等等。通常情况下,成熟的IT系统处于统一的IT策略管理之下,为了防止未知程序所带来的安全风险,用户的计算机允许和禁止哪些应用程序,都有明确的规定。然而,现实的管理中,尤其是国内的很多组织,IT管理并不规范,用户的安全知识水平也参差不齐,单纯的应用黑名单或者白名单进行管理并不能覆盖全部的应用,这时,组织的内网安全水平就很大程度上取决于用户的IT安全意识水平,这显然是不足取的。
沙盒技术的存在,为解决应用程序合规性提供了新的思路。应用沙盒技术,IT管理人员可以将凡是不受信任的,或者说不在白名单内的程序都自动放入沙盒中运行,这样,即使由于用户的安全意识不足而下载运行了带有潜在风险的程序,由于运行在沙盒内,程序的运行并不会对沙盒以外的系统产生不良影响,而且由于沙盒的隔离,恶意程序并不能访问到存在于内网和计算机中的机密信息,从而提升了内网的整体安全水平。同时,对于不在白名单之内但用户可能确实需要的应用,相比于以往的“一放到底”或者“一禁了之”,沙盒的存在也给出了第三条可选的灵活道路。
二、应用沙盒技术,打造可信的安全内网环境
用户使用计算机,会涉及到访问和使用本地、文档服务器等各种位置的数据,这时,就存在着信息泄漏的风险。如果不加以限制,由于用户的疏忽或者主观恶意行为,信息很有可能会通过网络、移动存储设备等各种方式传播出去。同时,各种间谍和风险程序的存在,也时刻威胁着数据的安全。而沙盒的存在,则为我们指出了另外一条道路,即利用沙盒技术,为涉密应用打造可信的安全环境。
拿溢信科技自己的内部CRM系统举例,当用户需要使用被认为是存储有高度机密信息的CRM系统时,系统自动的将该程序放入到沙盒中运行。这时,由于处在沙盒之中,沙盒以外的其他程序无法调用CRM程序进程中的数据,CRM中的数据也无法透过沙盒泄漏到其他的进程中去。程序在沙盒中运行结束后,由于沙盒的消失,一切痕迹和数据都随之消失,从而达到了保密的目的。
事实上,将上面的CRM程序延伸一下,沙盒技术甚至可以帮助实现打造安全环境的目的。例如,在用户进入到工作状态下,需要访问或使用一些敏感信息时,即自动的将整个系统置于沙盒环境之下,同时对于沙盒状态下的网络访问、设备应用等再利用IP-guard等产品已有的丰富管控功能作出必要的限制,所使用、处理的信息由于处于沙盒环境下,也处于加密状态,一旦用户工作完成,退出沙盒环境,则全部信息与操作痕迹都即时删除。运行于普通环境下的系统应用不受限制,运行于沙盒环境下的系统处于高度隔离状态,从而达到了普通环境与保密环境的完全隔离,建造可信的内网环境。
三、应用沙盒技术,提升应用的可靠性。
Google收购沙盒技术的鼻祖GreenBorder公司,并在其后推出的 Chrome浏览器中应用了沙盒技术,使得多标签浏览状态下,每一个标签都运行在独立的沙盒中,从而有效避免了以往多标签浏览下标签崩溃造成的浏览器甚至系统崩溃的情况,提升了应用的可靠性。
类似的,在内网安全的一些应用中,沙盒技术也可以有效提高其可靠性。例如近几年来内网安全领域比较常见的,同时也是IP-guard新产品V+全向文档加密所应用的文档透明加密技术,由于是基于进程的加密,即意味着无论打开多少个文档,由于在进程中只能体现为一个进程,假使因为一些原因导致其中一个文档损坏,则其他的文档也都有同样的损坏风险。应用沙盒技术,可以将每一个文档的加密过程都置于单独的沙盒之内,单独文档的损坏不会导致其他文档的损坏,从而能够有效提高系统的可靠性。
另外,沙盒的隔离特性,还可以使同样文档格式但保密要求不同的文档的加密更加灵活。例如,对于用户接收的来自外部的文档,有些可能并不方便进行加密,对于这些文档,就可以让其运行在沙盒之中,使用时并不进行加密操作,从而将不同安全级别的文档在使用时进行了有效的区隔,让加密更加实用和灵活。谈及这一点,黄凯颇有感触:“类似这种“微创新”,对于系统的安全性提升并不明显,但恰恰是这种微小的创新,体现了IP-guard以及其他优秀产品从用户角度出发、追求用户体验提升的产品创新理念。
沙盒技术的局限性
上面提到的是沙盒技术在内网安全领域未来可能的应用方向,其主体思路,都是通过沙盒技术的隔离特性,提升应用的安全性与可靠性,确保局部的风险不影响整体的安全水平。事实上,现在已经有一些内网安全产品应用了沙盒技术,或者说沙盒的理念,如一些磁盘加密环境切换产品。虚拟机、瘦客户机等产品,也在一定程度上与沙盒技术有异曲同工之妙。
然而,我们也必须看到,任何一种新兴技术的发展,除了带来革新性的好处,也都可能有其局限性。在这一点上,沙盒技术也不例外。
首先,沙盒技术并不是杀毒软件或其安全产品,这也就意味着它只能隔离,无法检测加密过的或者复杂的安全威胁。因此,认为应用了沙盒之后,一切安全威胁都不再是威胁的想法显然是不足取的,沙盒并不能彻底的解决所有的问题;其次,由于沙盒的存在,在用户与应用之间增加了一层应用,理论上,也就多了一层可被攻击的漏洞。沙盒程序本身并非无懈可击,这也就可能为恶意行为提供了新的切入点。最后,沙盒技术本身是单一的应用,想要实现上面提到的各种功能,需要针对不同的应用进行特别的优化设计,提升其可用性,而这也是考验产品经理的关键所在。
沙盒技术并不神秘,上面提到的几点,据黄凯透露,都可能出现在未来的IP-guard当中。再次谈及创新,黄凯说:“包括沙盒技术在内的很多新技术,其实可能都只是在某个微小的角度,提升了产品的可用性、易用性或者稳定性,然而,正是这些微小的创新累积起来,形成了优秀的产品。事实上,IP-guard从开始研发到如今客户遍布全国乃至世界的十年间,不断的根据客户的实际需求进行微创新,应用新技术,正是我们向前走的法宝。到现在,我们也一直有一部分同事独立于研发之外,坚持在做新技术的艰苦探索,就是为了更多有用的微创新能够加入到IP-guard或者我们的其他产品中,为用户带来更实在的收益。我们在Computex上获过奖,对于这个奖项,与其说是颁给了优秀的技术,我们更倾向于理解为这是对我们根据用户需求进行微创新的鼓励。”