2017年2月20日,卡巴斯基正式推出了新的安全操作系统:Kaspersky OS。卡巴斯基CEO Eugene Kaspersky在博客文章开头就展示了一个黑盒子——一款三层交换机,这台设备就是采用了卡巴斯基的操作系统,其上赫然写着:Powered by KasperskyOS卡巴斯基操作系统。这款系统是为那些对数据安全有特别需求的网络准备的。
据说在开发这套系统的前几年,卡巴斯基并没有急于写代码,而是反复开会,讨论技术细节、架构,随后才将开发团队构建出来,整个过程相当缓慢。Kaspersky OS的优势Kaspersky OS基于微内核架构(Microkernel Architecture):基于这种微内核架构的安全OS允许用户定制自己的操作系统。
所以,根据用户的特殊要求,可以对Kaspersky OS的操作系统使用不同的修改模块。
Kaspersky OS的操作系统想法的由来
所有安全操作系统的开发人员都在现有的安全原则下,来尽量实现系统的安全性,比如可以通过不断地改进某些特性,或者从头开发,一般情况下,前一种方法具有较低开发成本和与广泛软件兼容性的明显优势。
不过作为关键基础设施的一部分,真正的安全操作系统应该考虑两个重要因素:
1.满足特殊安全要求的能力,不仅要保护信息的某些一般属性(例如机密性),而且还要能跟踪某些命令和数据流,对系统运行不会产生影响等等。
2.为系统安全工作提供保护。
基于流行操作系统构建的安全系统通常涉及实现访问控制(例如基于强制访问控制模型),加强认证,数据加密,安全事件审计和应用执行控制的附加机制。通常,这些是标准的安全措施,系统的特殊要求在应用层面处理。因此,特殊安全措施依赖于许多组件的实现,每个组件都可能被破坏。比如SELinux,RSBAC,AppArmor,TrustedBSD,МСВС和Astra Linux等。
为了提高安全性,可以将那些使其更难以利用某些漏洞的工具(包括由于其不安全的原始设计而在系统中固有的漏洞)嵌入系统中。比如Grsecurity,AppArmor,Hardened Gentoo,Atlix,YANUX和Astra Linux等。
以前一种常用的方法是基于扫描软件代码来识别其中错误和漏洞,并通过比较校验来检查软件的完整性,比如这种方法在Openwall Linux和一些俄罗斯开发人员开发的操作系统中经常使用。
虽然这些措施会让一般的安全操作系统改进,但是这些方法根本不能满足作为关键基础设施安全系统的特殊要求。
与基于尝试提高现有操作系统的安全性的举措不同,KasperskyOS从一开始就基于可以确保其安全行为的架构原则进行设计,以满足特殊用途系统的要求。
然而,一般的安全操作系统不会对某一环境实施特定的安全策略。因为一般的安全操作系统功能都相对多样,不会实施特定的安全目标,以及对环境带来的大量和多样的威胁不会及时的反应。
就像卡巴斯基负责人所说的那样:
目前流行的一些OS在设计的时候并没有过多的考虑到安全,所以我们觉得从头开始做一个新系统反而是更简单和安全的方式。卡巴斯基OS最大的特点就是卡巴斯基独立开发的无GUI操作系统,没有借鉴任何一行Linux代码。
对于一般的操作系统,由于安全目标很宽泛,要实现像Kaspersky OS相同的安全保护就更加困难了。像Kaspersky OS这样的特定系统,需要支持特定访问控制类型,常规认证机制和其他管理不需要专业知识的保护工具所需的整类策略。这需要实现相对通用的安全机制。有时,如果OS在固定的硬件平台(通常来自相同的供应商)上运行,则可以用足够的置信度来保证这些机制与特定标准或文档安全的一致性。比如带有可信扩展的Oracle Solaris,XTS-400和OpenVMS AS / 400。
最后,对于在任意硬件平台上运行的通用操作系统,要实现高安全性保证甚至更困难,因为在这种情况下威胁模型根本形不成。
Kaspersky OS如何实现反黑客?
Kaspersky声称这款系统几乎是不可能被黑的,因为一般入侵者要想未经授权访问都需要破解用户的数字签名,据Kaspersky 的发言人表示:
在我们的系统中,这得需要一台量子计算机才能实现了,为了入侵我们的平台,黑客需要破解账号数字签名,以前这可能不是什么大问题,不过现在可能就需要量子计算机才行,这个代价未免过于昂贵了。
如果用了Kaspersky OS,不管是SCADA、ICS还是IoT设备,都可以得到保护。因为这些攻击都是利用了Mirai僵尸网络来进行DDoS攻击的,Kaspersky强调他们的OS会强制保护IoT和关键基础设施免于威胁,像是工业、运输和通信等方面。
KasperskuOS操作系统高安全性的实现原理
KasperskuOS操作系统高安全性的实现原理是基于从小的可信部件构建模块化系统并且实现标准化接口的方法来解决的。以这种方式构建的安全系统的体系结构使得可以将相对少量的软件代码移植到各种硬件平台并且验证它,同时保持顶层模块,使得它们可以被重新使用,这就为操作系统的每个特性提供了安全保证。
KasperskyOS的基本安全策略是使用配置语言组合成更复杂的规则。这些规则然后被编译成充当安全服务器和微内核之间的中介的组件,以便能够以提供所需的业务逻辑的方式计算判定。
KasperskyOS和市场上其他的安全操作系统之间的主要架构区别是KasperskyOS会针对操作系统的每个特定部署实施安全策略,对不需要的那些策略的支持根本不包括在系统中。因此,在KasperskyOS操作系统的每个部署中,安全子系统仅能提供所需的功能,排除不需要的一切。
因此,KasperskyOS能够提供整体安全策略参数(在安全服务器级别的系统级配置)的配置以及将策略应用于系统中每个执行操作(通过判定计算的配置)的规则。
通过编译配置获得的可信代码会将应用软件与系统中的安全模型连接,然后由程序执行的操作应由哪些安全策略控制。重要的是,代码不包括任何有关操作或策略的信息,除非引用它们。
KasperskyOS的架构非常具有灵活性,会将安全策略应用于由不同类型的进程执行的各个操作(不会潜在地通过可能危及的配置而危及安全性)。
当然,具有类似Flask的架构的基于微内核的系统不是由KasperskyOS开发人员发明的。MILS多级安全架构就有一个成功的微内核开发的历史(seL4,PikeOS,Feniks / Febos),包括具有正式验证的安全属性的微内核,这可以用于实现一个可以保证安全域隔离(提供“通过隔离的安全性”)的操作系统 。
但是,实现安全隔离,不光涉及微内核开发,而且还要考虑整个操作系统的完整功能,所以高性能的安全系统不仅要提供安全域的分离和不兼容的信息处理环境的隔离,而且还要控制这些域内的安全策略合规性。重要的是,微内核,基于它的操作系统的基础设施和安全策略是由同一公司开发的,大家都知道,如果安全操作都是依靠第三方话,那即使再安全,也是被别人控制的。
从头开始构建的操作系统的最大缺点是缺乏对现有软件的支持,不过可以通过保持与常用编程接口的兼容性来补偿这个缺点,其中最着名的是可移植性操作系统接口(POSIX)。
就像Kaspersky表示的那样:
我们也知道从头开始建立安全的IoT或基础设施存在多大的困难,但还是要去做,就像是我们建立Kaspersky OS的理念一样。
这个缺点也可以通过使用虚拟化来解决。在不兼容的环境中可以启动用于虚拟化通用系统的管理程序的安全操作系统将能够执行用于Kaspersky OS的软件。 KasperskyOS与卡巴斯基安全管理程序一起提供了此功能。如果满足这些兼容的条件,则不安全的通用IS也可以继承主机OS的安全属性。
KasperskyOS为安全操作系统的开发和使用树立了一个新的标杆,那就是实现高效,实用和安全的解决方案。
总而言之,KasperskyOS安全操作系统不是现有操作系统的扩展或改进,但这并不会影响其使用的程度。该系统可以用作开发具有特殊安全要求的解决方案的基础,而提供灵活和有效的应用程序执行控制则是卡巴斯基操作系统架构中固有的。
目前,除了Kaspersky OS之外,卡巴斯基还配套推出了独立的安全超级服务器(KSH)和用于Kaspersky OS组件之间安全交互的系统(KSS )。
据Kaspersky OS产品说明显示,该操作系统支持搭载X86/X64/ARM处理器的设备,以下是最低运行配置:
Kaspersky OS for x86/x64 CPU
处理器:Pentium II或更高版本
内存:8MB或更高版本
网络设备:Realtek RTL8139、Intel i82580
KasperskyOS for ARM CPU
处理器:ARMv7或更高版本
内存:8MB或更高版本
价格方面:Kaspersky OS并没有一个固定价格,具体价格将视用户对系统功能需求的程度而变化。