最近火爆的“元宇宙”概念,向人们勾勒了数字世界的未来发展形态。如果说物理世界是由物体及背后的分子、原子等组成,那么组成数字世界的基础就是成千上万的软件,以及背后由研发人员精心设计和编写的一行行代码。而数字世界的安全风险,就隐藏在这些代码中。
如今,随着软件产业的快速发展,软件供应链也越发复杂多元,复杂的软件供应链会引入一系列的安全问题,导致信息系统的整体安全防护难度越来越大。从2020年12月SolarWinds遭遇国家级APT团伙供应链攻击,到今年2月,微软、苹果、PayPal、特斯拉、优步等35家国际大型科技公司内网被软件供应链攻击成功入侵,针对软件供应链的安全攻击事件一直呈快速增长态势,造成的危害也越来越严重。作为保障软件供应链安全的重要手段,软件开发安全相关技术和产品受到越来越多的关注。
为了帮助企业在源头解决软件开发安全问题,当前开发安全厂商的主流做法是,向企业用户提供包括SAST静态应用程序安全测试、DAST动态应用程序安全测试、IAST交互式应用程序安全测试、SCA软件成分分析以及Fuzzing模糊测试等不同安全工具,在软件开发流程中的不同阶段介入安全手段,以帮助企业降低软件可能存在的安全风险。
在此前对多家开发安全领域厂商的拜访中,许多行业资深人士谈到,奇安信「代码安全实验室」在SAST和SCA两大工具方面建树颇高。于是,带着一探究竟的想法,安全419来到奇安信,并有幸拜访了代码安全事业部总经理、代码安全实验室主任黄永刚,邀请他为我们分享了自身对开发安全领域的认知和洞察。
黄永刚向我们介绍,奇安信代码安全实验室成立于2011年,在彼时那个大环境下,国内主流的安全厂商基本都在做运行防护类的安全产品,比如防火墙、IDS/IPS等等。在黄永刚看来,防护设备都是在软件部署运行之后发生作用的,去做漏洞扫描、补丁修复以及防止外部攻击等行为,但安全事件很多都是因为软件漏洞引起的,因此解决软件自身的安全问题才是根本之道。因此,团队选择了软件开发安全的技术方向,从软件漏洞研究开始着手,试图回归安全的本质,从源头寻找一条更有效的安全解决方案。
黄永刚表示,软件开发安全产品的技术门槛很高,当时从事相关研究的人也很少,而自己和团队已经在这个领域里探索了超过十年,看着软件开发安全从一个技术大冷门走向热门风口,相关领域的厂商也大量涌入,才感觉大家的坚守得到了回报,“毕竟一路走来也很寂寞,中间也曾经动摇过,但幸好一直坚持了下来。”他笑着说道。
之所以代码安全实验室能始终坚持这条研究路线,也是建立在一个基础的认知和根本的思考之上:软件是构建数字世界的“虚拟人”,各种软件在数字世界里各司其职,就如同人在物理世界中从事不同的工作一样。随着数字时代的到来,软件已经成为支撑社会正常运转的最基本元素之一,地位越来越重要,在很多领域软件已经代替了人,软件自身的安全性问题正在成为社会的根本性、基础性问题。
黄永刚举了一个形象的例子:我们可以想象一下,假使一个人即将进入一个重要单位工作,那么他通常会面临严格的背景调查,对其个人的思想品德、作风纪律、家庭背景、犯罪记录等等进行调查访问,通过了背景调查,他才能被录用。
在他看来,与人相比,软件在进入重要单位时,获得的权限比员工甚至更高,一些核心的业务系统会存储和处理这个单位最敏感的核心数据,但却很少有人关注到软件的“背景调查”工作。企业采购了一个软件后,或许会知道它是哪家厂商提供的,但它是谁开发的?开发时是否使用了开源组件?是否使用了第三方组件?是否由外包团队开发?软件是否存在安全漏洞?是否存在未声明的维护后门?这一切都是被忽视的隐秘角落,存在着巨大的安全隐患。
黄永刚表示,原来大家所谈的软件安全,更多是软件本身的安全、代码的安全。但现在软件安全的内涵已经将软件供应链囊括在内,“如果此前定义软件的实体是一个圈,那么现在在这个圈的周围,还散布着由软件供应链组成的与之相连接的许多个圈。我们现在谈软件安全,应该是指软件及其供应链安全,其内涵已经发生了变化。”
国内SAST主流市场被外企占据背景下
代码卫士产品应运而生
据安全419此前了解,奇安信代码安全实验室目前只推出了代码卫士(SAST)和开源卫士(SCA)两大产品,为何是这两个工具?而非IAST等其他方向?这背后是否有着怎样的技术思考?
针对这一疑问,黄永刚告诉我们,一方面SAST产品先天有着技术方面的优势,它适用性强,只要是编程语言方面能够支持,无论是什么形态的软件都能够适用,可以较好的满足企业的安全需求;另一方面,在代码安全实验室成立之时,国内的SAST产品市场基本上被国外安全厂商所把控,金融、能源等重要的关键信息基础设施单位也不例外。因此,代码安全实验室当时的理想和主要攻关任务就是研发出一款中国安全企业自研的SAST产品,以替代国外厂商,这也是代码卫士产品的由来。代码卫士是软件开发安全领域第一款由国内团队完全自主研发的商用产品,也是这个领域第一个获得公安部颁发的销售许可证的产品。
开源卫士这款产品则是随着软件开发模式的发展变化和安全攻防形势的演进,由客户痛点催生而来。根据代码安全实验室6月份发布的《2021年中国软件供应链安全分析报告》显示,国内企业软件项目100%使用开源软件,超8成软件项目存在已知高危开源软件漏洞。为了应对迅速增长的开源软件安全风险,代码安全实验室打造了开源卫士产品。它是一套集开源软件识别与安全管控于一体的软件成分风险分析系统,通过智能化数据收集引擎在全球范围内广泛获取开源软件信息和安全风险信息,帮助客户掌握开源软件资产状况, 及时获取开源软件威胁情报,消减由于使用开源软件带来的安全风险。
黄永刚回忆道,2015年时,代码安全实验室团队曾经画过一张蓝图,将实验室要做的开发安全产品的类别、支持的平台、支持的软件形态、主持的编程语言、技术实现路线、要实现的业务功能,以及产品对标的对象等清晰的绘制出来,“如今再回头去看这张蓝图,我们依然在围绕着此前绘制的方向稳步发展,未来我们会扩展更多的产品品类,为用户打造更完整的,面向软件供应链全链条的安全解决方案。”
他同时表示,代码安全实验室强调的第一原则是在一个技术方向、一个产品上首先要做深做精,在客户的应用场景上要能实现价值闭环,要能帮助客户真正解决实际的问题,然后在此基础之上再不断的扩展。
“攻击左移”带来了安全左移
开发安全领域已经开始直面攻防一线
“在开发安全领域,大家会经常提到的一个词是‘安全左移’,那么为什么安全会左移?其实回答这个问题不难,因为攻击正在左移。”
他谈到,此前开发安全领域里的产品厂商,通常不需要直面黑客攻击的压力,安全事件发生时,往往是传统安全产品厂商第一时间站出来做应急响应。但随着攻击不断的左移到软件开发环节,这一情况正在迅速的发生变化。
软件供应链可以大致分为开发、交付、运行三个环节,每个环节都可能会引入软件供应链安全风险从而遭受攻击。软件开发环节的安全防护相对来说比较薄弱,而且作为软件供应链的上游环节,软件开发环节的安全问题会传导到下游环节并被放大。而攻击者历来追逐性价比最高的攻击方式,所以攻击左移是攻击者的自然选择。攻击左移对开发安全领域的公司和产品提出了更高的要求,攻击就发生在眼前,开发安全类产品需要针对攻防动态的变化不断的更新能力,更新知识库,与时间赛跑,与黑客赛跑,并要做到持续运营。
“开发安全已经身处攻防场景之中了,比如在某一开源组件爆发安全漏洞后,厂商是否能第一时间获取漏洞情报,安全产品是否能快速形成检测能力并交付到客户手中,这是非常关键的,这需要非常强的产品安全运营能力,这对于传统做开发安全的公司挑战是很大的,而奇安信的漏洞研究能力、威胁情报能力、安全运营体系的优势就凸显出来。”
强大漏洞研究能力+丰富的应用场景打磨
构成了奇安信代码安全产品的先天优势
黄永刚谈到,打造一款好的开发安全产品需要两大因素,其一是需要强大的漏洞研究能力,软件开发安全领域最终要为客户解决软件的安全问题,而想要发现软件自身的安全缺陷、发现漏洞,就意味着必须拥有核心的漏洞研究能力。客户在选择开发安全类产品时,厂商的漏洞研究能力常常会被忽视,但事实上,不懂漏洞和攻防,就很难有足够的技术积淀和经验积累,这样做出的安全产品自然也很难在漏洞检测时发挥出应有的作用。
他告诉我们,奇安信代码安全实验室一直在支撑国家级漏洞平台的技术工作,多次向国家信息安全漏洞库 (CNNVD)和国家信息安全漏洞共享平台 (CNVD)报送原创通用型漏洞信息并获得表彰。实验室还帮助微软、谷歌、苹果、Cisco、Red Hat、Ubuntu、Oracle、Adobe、VMware、阿里云、华为等大型厂商和机构的商用产品或开源项目发现了数百个安全缺陷和漏洞,并获得公开致谢。
其二是拥有丰富的用户场景,对产品进行不断的锤炼。To B安全产品走完从产品做出来,到与客户场景磨合,再到客户反馈不足进行修改完善这个大的闭环,通常需要一个相对较长的周期。
这恰恰是奇安信相较于其他开发安全厂商拥有的最大优势:开发安全厂商普遍体量不大,安全产品天生就是做给别人用的,而奇安信则有较大的不同,由于集团自身拥有数十条产品线、数千名研发人员,从硬件到软件再到云,覆盖了大多数的应用场景品类,可以说先天就是一个非常丰富的试验场。因此代码安全实验室的产品或新功能会首先提供给内部使用,在内部先打磨,最后再放到客户的场景里落地。
“目前奇安信代码安全产品在国内已经拥有400多家大型客户,覆盖了政府、军队、金融、能源、运营商、医疗卫生、教育、汽车、航空、互联网等行业领域,产品在客户侧经过了各种应用场景的考验,已经比较成熟。同时作为一个综合性安全厂商,奇安信的安全能力是一个有机的整体,我们庞大的安全能力中心、完善的威胁情报体系、安全运营和服务体系会给我们的产品提供非常多的支撑,这些因素共 同构成了奇安信代码安全产品最大的优势和门槛。”
珍惜行业发展的土壤
一花独放不是春,百花齐放春满园
最后,谈到当前国内开发安全市场的竞争格局时,黄永刚表示,虽然国内开发安全市场整体起步较晚,但目前国外厂商提供的安全产品正在被逐步替代,国内产品必将成为这个领域的主流。而就国内友商来说,现在谈竞争还为时尚早。
他认为,如果大家想要真正的在软件开发安全的领域中长期发展,应该把关注点放在产品的能力提升和产品化程度的提高上面,加大产品的研发投入,在客户的场景里完成价值的闭环,不断的迭代能力。
“在软件开发安全领域很少有厂商能够真正的完全覆盖所有品类,做好每一款产品都需要持续不间断的投入和运营。开发安全产品是用户价值驱动的,只有把产品做好,让用户来说话才是硬道理。我们每个人都要珍惜来之不易的土壤和环境,做真正对行业和用户有价值的事情。百花齐放才真正象征行业春天的到来。”黄永刚最后说道。