相信大家对DevOps这个概念都已经不陌生了,这是很多年前就已经很火的一个概念,我们很多企业用户都已经开始实施或者计划实施。讲到DevOps不得不提到现在企业级的软件越来越复杂,发布频率也越来越高。DevOps的特点和价值就是要提高效率,加速业务发展。
随着应用发布的频率越来越高,我们会发现,安全已经跟不上DevOps的节奏了,并且伴随着DevOps,也带来了更多的安全风险和漏洞。我们一直在提倡敏捷开发、敏捷测试,一切都要敏捷和高效,但是我们开发的代码的安全性问题越来越多,风险也越来越大,DevSecOps应运而生。
企业面临的风险主要体现在哪些方面呢?一个是合规风险,包括我们所在行业的一些行业标准、等级保护,还有一些政策法规,像网络安全法、数据安全法等等。
还有一个更为重要的是业务风险。如果我们的应用存在大量的缺陷和漏洞,将会带来很多业务层面的风险,此类风险的危害性非常大。首先是企业的核心数据可能会被泄露,泄漏是在不知不觉中发生的,可能企业系统本身还在正常的运行,但是一些企业数据、用户数据和核心的业务数据都已经被泄漏出去了。
所以首先要保证我们企业的业务系统、应用系统能够稳定地、安全地运行,不要宕机。然后要保证其安全,防止信息泄漏。这也是我们整体的一个目标,接下来我们就围绕这个目标进行展开介绍。
目前,应用安全形势是非常严峻的,大家经常可以看到一些事件,像最近发生的Log4j事件,还有很多企业级的应用安全事件也层出不穷。上面图中的数据是来自IDC的权威数据,我们可以看到,79%的web应用都存在着严重的高风险问题。
web应用是重灾区,因为互联网业务首先面对的是公众,它的端口是开放的,443端口、80端口都是开放出来的,不可能关闭掉,否则就无法访问了。“大门是敞开的”,是允许公众去使用的,就很容易遭遇一些恶意的窃取或者破坏。所以这部分漏洞的占比是非常高的。
现在移动应用的发展也非常地迅猛,很多企业都在开发基于手机移动端的应用,它存在高风险漏洞的比例更高,高至88%,不论是android还是ios,都有很多潜在的高风险问题。
有一个标准——OWASP,如果大家是安全相关的人员的话,应该都会了解,它是一个公益组织,把全球的应用安全漏洞(尤其是web应用)总结出十大类别——Top10。这十大类别是目前全球(包括国内)最重要的、危害最大的、影响最大的十大类应用安全漏洞。
大家如果对这方面有兴趣,可以去了解一下。OWASP的Top10的文档,里面介绍的是非常好的,是我们目前经常会碰到的非常高风险的一些问题。
但是我们只关注Top10还远远不够,因为我们企业面对的安全问题,影响我们的系统运行的问题,在Top10之外还有很多,我们要全方位地去关注。