推荐序二
新技术革命和产业变革被认为是当今人类社会发展阶段的重要推动力,而在诸多新技术革命中最具影响力的无疑是现代计算机的发明以及与之相关的一系列发明创造。它把人类社会带入硅器时代的信息社会,引发以计算机硬件、软件和通信为核心的信息产业。
以数字化、网络化、智能化为代表的信息产业不断变革我们的生产和生活,改变着整个世界。然而,随着信息化的不断深入发展,人类社会的善与恶也呈现在人机融合的网络与信息系统之中。作为计算机领域的一个分支,网络与信息安全伴随着计算机技术的高速发展也发生了翻天覆地的变化。从第一个漏洞被发现到现在企业级、国家级、世界级漏洞库建立和维护,从第一款杀毒软件诞生到现在各种安全产品百花齐放,网络安全技术开发与服务也独立成为信息产业的一个重要板块,网络安全与信息化成为现代化建设的“一体之两翼、驱动之双轮”。
在PC时代,大部分人对网络还比较陌生,计算机上的软件主要是单机软件。在这个时期,个人计算机是计算机市场主体,所以安全攻防对抗主要围绕个人计算机展开。当时,攻防产品开发人员对计算机底层的原理还理解得不透,对安全的认知也停留在软件安全层面,所以攻击的方式主要是网络病毒(如蠕虫和木马)。这时的安全需求也相对比较简单,就是杀毒,对应的安全产品就是杀毒软件。
随着电子商务、网络社交的流行,以及互联网时代来临,大量的企业用户通过Web应用的形式加入网络,安全攻防的主战场也从个人计算机转移到企业用户所搭建的服务器。服务器和个人计算机使用方式的差异,使得网络病毒的攻击不再那么有效。随着安全研究的深入,攻击的主要方式开始从病毒向漏洞转变,人们对安全的认知也进入漏洞安全层面,安全需求从杀毒变成抵御漏洞攻击。针对这种情况,防守方相应推出了WAF、主机加固等传统防御方案。
在智能设备逐渐普及后,我们开始进入万物互联时代。相比于互联网时代,从表面上看,万物互联最大的变化是客户端设备从计算机变成了智能设备,但是在看不见的服务器端也发生了巨大的变化。云计算、容器等技术为适应万物互联的高速发展提供了高效的解决方案,改变了服务器端原有的架构,也改变了传统的开发方式。以往的开发方式无法适应快速迭代的开发节奏,因此又出现了敏捷开发模式(通过流程化、自动化的方式来提高研发的效率),这种新模式的出现也在不知不觉中改变着人们对安全的认知。敏捷开发使得自研代码与开源代码相结合的混源开发方式成为主流,但这种混源开发方式会引入更加复杂的软件供应链安全问题,而被动防御的安全策略无法有效应对当下的供应链环境,也无法及时响应敏捷开发需求。随着积极防御概念的提出,安全认知进入原生安全层面。安全需求从被动防御和纵深防御转向积极防御,具体到开发过程,就需要尽早引入安全机制,尽早解决安全问题,这正是DevSecOps所解决的问题。
子芽作为我的学生,2014年就开始了相关技术领域的探索和研究。其间,他一直探索DevSecOps软件供应链持续威胁一体化检测防御,沉淀出诸如“代码疫苗”“积极防御”等原创的DevSecOps自主关键敏捷安全技术,覆盖从威胁建模、开源治理、风险发现、威胁模拟到检测响应等关键环节,可以有效地帮助产业用户构筑起一套适应自身业务弹性发展、面向敏捷业务交付并引领未来架构演进的内生积极防御体系。
DevSecOps作为一个崭新的安全体系框架,业内对其进行深度分析和推理的技术资料少之又少,而现有的公开资料也缺乏体系化理论和实战技术支撑。本书作为一本专门讲述DevSecOps敏捷安全体系的书籍,涵盖了DevSecOps所涉及的各个方面,从技术入门到落地实践再到体系化运营进阶,对想理解、尝试甚至亲自构筑DevSecOps体系的读者一定有很大的帮助。
——陈钟 北京大学计算机学院教授、网络与信息安全实验室主任