伴随着全球化和数字化的不断推进,软件供应链安全问题受到越来越多的关注。近年来大幅采用外包云计算、开源组件等降本增效的方式来应对市场变化,增强竞争力的企业占比,以及以政治或商业等为目的的软件供应链攻击数量剧增,软件的质量、可靠性和安全性问题逐步凸显,且越加难以防范。
而在全球化背景之下,跨国界的数据流动也带来了全新的挑战。如何在尊重不同国家、地区法律规定的同时,确保供应链的安全性,同样是值得我们所思考的问题。
在比瓴科技联合创始人兼COO杜永庆的主持下,四位来自软件供应链相关的需方、供方、安全厂商等各方代表围绕自身视角下发现的软件供应链安全以及对应的软件供应链安全治理路径展开了一场圆桌探讨。
全球化数字化背景下 如何高效地治理软件供应链安全风险?
作为本场圆桌研讨的主持人,杜永庆表示,当前正处于一个软件定义一切的时代,软件供应链已成为数字化发展的重要基石。但在软件开发越来越重要的今天,各行各业内应用的软件和软件的代码库中,事实上存在着大量的开源代码以及软件成分法律许可等诸多安全问题,软件供应链的完整性、复杂性以及持续性面临着诸多的挑战。
随后,杜永庆抛出了本场圆桌研讨的核心话题:软件供应链安全治理势必成为一个庞大且复杂的系统化的工程。那么如何高效安全地应对软件供应链风险?
联通数字科技有限公司CTO杨海明表示,软件供应链安全治理实际上与汽车行业、食品行业等成熟行业的供应链治理存在一些相似性。拿汽车行业的生产环节举例,一辆汽车中可能会涉及成千上万个供应商提供的零配件,这些供应商也都有着各自的供应商。因此这些供应商在生产这些零配件的时候,都在按照一定的行业标准化,按照相应的图纸去生产。在这个过程中,包括零件的价格、市场存量等都会作为供应链中的一个考虑因素,这其实就是一个成熟的生态链关系。
在食品行业同样如此,在一个打包好的食品来到消费者手中前,它通常也有着明确的菜谱和配料表。每种食材和调味品几何,烹饪一道菜的成本大概需要花费多少成本。这些其实都与软件供应链背后存在相通之处。
“再回到软件供应链领域,我们会发现,软件的生产环节反而像手工作坊一样,不同的开发人员,甚至开发人员的状态都会对软件质量带来一定的影响和干扰。因为我们在做软件开发的时候,虽然也会有类似于设计图纸和食谱这样的设计,但其实它的详尽程度,以及它的安全程度是远远不够的。”
杨海明表示,软件供应链领域一定要通过资产管理,通过对软件进行整体设计来建立更加透明清晰的软件开发流程,只有通过这样的一些方式,最终在组装一个大型软件的时候才能够确认每一个基础组件都是安全的。比如log4j这样的风险组件,就可以提前掐灭风险。在他看来,做软件供应链安全就像木桶原理一样,要找到自己的短板,一旦短板出现问题整个木桶都会出现问题,这是一个需要持续演化的事情。
他指出,当前软件供应链安全领域发生的零星安全事件还没有给予开发人员们足够的警示,只有经历过足够多的安全事件,软件供应安全才能够最终建立起一套自己的群体免疫系统,“所谓免疫系统就是,其实我们一天到晚都在经受各种病毒的侵袭,我们也许会得一场小病,但免疫系统能保证性命无虞。希望业界能够加快建立威胁情报的共享机制,让大家知道哪些事件正在发生,可能会存在哪些安全问题,这样其他的人针对这个问题才能第一时间做升级,最终保证大家处于群体免疫的状态。”
中国移动通信集团设计院有限公司网信安全产品部副总师张晨谈到,中国移动根据过去几年安全建设的实践发现,软件供应链的安全风险实际上已经开始与AI进行了深度的融合。随着近几年来开源软件的发展和AI的进展,一方面我们的生产效率得到了大幅提高,另一方面网络安全的攻击成本也是显著地降低。“业内同仁需要共同做的一件事情是通过社区的治理和对于安全领域的应用,再一次把这个安全的攻击的门槛再提高,把安全风险降到一个可以接受的水平。”
张晨指出,在软件供应链安全治理方面如下几个方向值得重点关注:
首先,很多针对开源软件的安全风险评估,或者基于开源软件二次开发软件的风险评估,都是以独立系统为单位的。但是对于大型组织而言的话,很多系统在真正交付的时候,往往和几十个相关的系统之间都有着非常复杂的接口交互关系。因此,如何把这种复杂接口交互关系所产生的这种串联的安全风险,能够在上线前发现,或者在上线的过程中以一种业务部门能够接受的可靠的方式来去发现相关的安全风险。这对于安全的管理和生产部门而言,都是一个比较大的挑战。
其次,随着开源社区的发展,稍微大一点的企业事实上都在利用开源的方式来构筑一些关键的能力和产品。但事实上,开源组件的应用在大幅提高能力和效率的同时,其实从某种角度来讲,它也引入了新的安全风险。
“打一个比方,开源实际上是把现在把我们目前所面临的攻击链延长了。如果有一个黑客入侵到了我们的企业内部,拿到了我们内部的这个开源社区的一些源代码,其实就是可以延长他的攻击链条的。即便某一次的攻击被我们发现并阻断了,这也并不代表未来攻击者不会依据源代码当中所发现的问题去做进一步的攻击。所以说这也使我们的防御措施和应对策略需要做全面的升级。”
第三,我们当前已经看到,基于AI的方式可以更好地发现开源软件当中的漏洞,但AI工具是可以被正反两个方向同时使用的。依靠企业去使用这些先进的工具,对开源软件的安全性进行系统地分析,事实上从成本投入上来讲是不太现实的。
对此,行业内部应该建立一种协作机制,大家把相关的资金和资源投入到这种国内知名的开源社区上。由开源社区来去替大家把相应的一些先进的AI工具,把一些软件当中的一些安全风险及时的发现进行修补。这样才能够和黑灰产形成有效的对抗。否则单靠企业的单打独斗,成本可能会过于高昂。
最后一点,我们也可以看到,通过AI的方式可以生成一些攻击的样本。在开源领域当中有一种攻击的手法,譬如高价买下一个资深的开源代码贡献者的身份,以此为基础再去伪造一些恶意的开源软件。因为AI工具的加持,未来类似于这种基于购买知名开源软件贡献者身份,然后去快速地伪造各种各样的开源项目或者说代码,恶意替代这种攻击的方法也会变得更多,这也同样值得全行业去考虑和关注。
东软集团运营商事业部副总经理白晓龙表示,在数字化时代。软件越来越多地成为我们很多数字化企业的业务本身。因此软件的供应链安全对企业的本身业务的影响越来越大,软件供应链的每一个环节对企业的业务的中断都会有至关重要的影响。
他表示,拿东软自身来看,东软作为软件的生产方,实际上也是其他上游软件的使用方,同时也会从安全合作伙伴那里得到一些安全工具的加持,因此在整个软件的生产过程中,东软会关注生产的每一个环节,注重软件的质量,同时也注重软件产品出厂的检测。在到达用户使用的时候,要做到完善的软件安全检测。
最后他指出,对软件生产企业而言,需要不断地提高参与到软件整个生命周期里面的参与人员的安全意识,因为每一个人犯得一点的小错误,最终都有可能带来灾难性的影响。
作为软件供应链安全厂商代表,墨菲安全创始人章华鹏也分享了自身当前对于软件供应链安全的认识和思考。他表示,近两年来软件供应链安全领域的关注度水涨船高,一方面是受到了SolarWinds等事件的推动,另一方面,其实这也是一个必然趋势。随着软件的整个数字化程度的提高,软件供应链的它的标准化程度一定会越来越高,这是一个行业走向成熟化的一个标志。
他指出,从整个软件供应链安全治理的角度上来讲,首先标准一定是非常重要的,因为整个供应链的全链条的拉通,包括它的安全的治理和保障,标准是一个能让整个产业链上下游能够快速的去拉通对齐,形成合力的一个很重要的因素。
除了标准之外,未来还要去加速地落地,要能够真正让对应的开发人员能够快速地去解决问题。让所有真正去生产软件,使用软件和应用软件的人,能够基于一套标准,通过一个简单易用的工具,去解决他们在生产软件、使用软件的过程中遇到的这些安全问题。
这也是我们墨菲安全做的最重要的一件事情,通过一套平台把包括软件成分分析、代码安全检测这样的一些工具,面向所有的一线的开发人员,去解决软件安全问题的这些工程师去开放。让他们不需要在安全的专业人员参与的情况下,就能够在生产软件的过程中去解决这些软件安全的问题。去打通软件供应链安全治理的最后一公里。
“这就跟我们刚刚谈到说食品安全、汽车安全是一个道理,尤其比如食品的安全。食品在整个生产的这个环节中,它其实有非常多的功能,包括这个产线的人员要参与。每一个人能不能有合适的工具,在他的每一道工序的环节中都能够去保证说生产过程的安全,这个其实是我们未来去落地这件事情非常重要的一个环节”,章华鹏表示。