第四届数字中国建设峰会论坛,奇安信科技集团总裁吴云坤主旨演讲

第四届数字中国建设峰会论坛,奇安信科技集团总裁吴云坤主旨演讲

吴云坤:各位领导、各位专家,非常感谢有这样的机会来分享在工业软件方面安全的一些思考。其实奇安信作为一个1万人的安全公司,从2014年成立到现在,去年上市,我们过去从政企客户的安全到现在很多新的场景,所以这里的很多问题在这6年当中,随着中国数字化转型、随着工业互联网的发展,其实层出不穷。

今天分享的题目叫做《工业软件的供应链安全》,因为其实对于供应链来说,我们看到了这里有很多安全的问题。而过去我们针对系统的攻击,往往转变为对供应商在供应链安全的攻击。在这个过程当中,其实工业的软件发展,在这6年当中有很多新的变化,这些新的变化当中产生了很多新的机会所以刚才很多专家提供了工业软件工业互联网的很多机会。

这个过程中我们发现机会跟风险并存,这其中可以看到有很多这样的问题:

第一个,从我们过去来看,很多工业软件在开发过程当中大量使用源代,像开源软件。

第二个,我们在整个中国开发软件的水平还不够高,很多从业人员的经验相对比较少,所以这其中产生的各类安全问题也比较多。

另一方面,我们发现工业软件当中反复地利用了不同的库,还包括一些组件,这其中带来很多新的风险。我们经常发现互联网上可能一个DLL出现的漏洞,可能产生的一个开源组件的漏洞,在一个大型企业当中,你都不知道在哪里产生,因为我们大量地使用了开源的组件包括一些库。

在这个过程当中,我们罗列了在近几年发生的各种供应链安全的事件,这样的安全事件可能影响的都是上亿用户,是对于消费者。也可能影响我们很多的政企机构,而且像这样的政企机构,就拿我们的能源机构来说,可能50万终端+10万服务器,你到底在哪里存在着这些开源软件的组件,存在着这些软件供应链的漏洞,不知道。出了问题以后你敢不敢修呢?你也不敢修,原因是什么呢?因为这个过程当中曾经没有演练过,也没有测试过。这时候你要修,你要把原厂商叫过来,原厂商可能已经不在了,因为10年前开发的软件。

所以这里头的很多问题我们会发现,要攻软件供应链对于黑客来说很轻松,漏洞又多又不修复,所以造成的问题很大。我们在过去的很多像工业企业的安全事件响应当中,发现主要是工业软件的供应链被攻击。这里举个例子,SolarWinds(太阳风)事件,在最近的2020年12月13日发生。这个事情其实SolarWinds都知道,这个是国内使用广泛的一款软件,在全球都使用很广泛。

在整个的事件当中,其实有一个国家级的黑客力量,已经把SolarWinds的厂商对SolarWinds的软件进行控制,所以所有使用过SolarWinds的软件,包括政府都会被攻击,而这款软件是做什么呢?是做网管的。它不仅用于政府,普通的企业也用于工业。所以一旦这样的攻击发生,其实影响是非常大。

所以我们有时候说,经常你护好了自己的墙,可是这个东西是从外面来的,那个东西不安全或者那个人不安全,你内部的墙壁没有任何办法。

在2010年,整个伊朗核电站事件当中,最大的一个问题就是所有的这些使用过的,包括像相应的一些软件等等,其实在外面已经做了研究,无论它的装备的一些软件,还有测试软件,还有发电的很多控制类的软件,其实都在其中做了研究。研究完了以后可能通过一个战术式的手法,让一个清洁工拿着个U盘混进去插在我们的电脑上,最后使得内部全部被突破,就是一个物理隔离的网络依然可以被突破。

所以那次的事件我们整个回头看,整个软件供应链安全为什么产生这么多的风险?你把这样一个链条打开,你会发现安全当中有一个非常经典的话叫安全左移。什么叫左移呢?正常我们上线使用是右边的事,左边是开发、交付的环节。当你把左边这个环节拆开以后,你会发现这个过程当中涉及到非常多细节的步骤,而这些步骤每一部分都可能引入。

而大量的工业企业其实不可能自己开发软件,都是通过外包商或者直接采购一些软件来使用。所以安全左移你会发现这个链条上很多问题就产生了,无论这个过程当中使用的开源软件,还是包括在用的编译工具,包括你在交付环节当中所用的一些配置,还有包括我使用的像DNS,包括一些URL,一些网络资源,其实都是供应链当中的组成,惩忿窒复杂,而且涉及到多个供应商。

所以这时候一旦某一个结点出了问题,整个的节点就会出问题。所以供应链安全,之所以复杂就在于黑客可以针对你所有的环节进行攻击。无论是你刚开始开发工具的污染,也包括这里源代码的污染,也包括开源组件的污染,包括这里恶意的操作,甚至下载的包,以及使用过程当中域名的劫持、CDN的污染,这些东西其实都是供应链。

所以从软件供应链安全角度来说,尤其对于像国产化的软件,包括尤其像工业软件要做国产化的时候你不可能从零开始,其实是使用了大量一些开源的,包括一些共享的组件,这些组件的风险就非常之大。

这么多问题到底怎么解决?这个对于我们来说,我们把它叫做供应链安全治理。这个对于无论像我们传统的信息化行业,包括工业软件,使用的工业互联网其实都存在。但是它的方法绝对不是查缺补漏,它首先要有体系化的方法。

大家回顾一下我们今天讲的这个过程实际上是应用开发过程,我们把信息化过程拆解,一个应用开发过程,一个IT运行过程。这时候安全到底怎么融入进去?这个其实就是我们经常讲的内生安全。你只有把安全内生到应用开发和IT维护过程当中,不断地拆解它一个个细的组件,把安全能力赋予它才成功。

所以其实讲到供应链安全治理的时候,不得不回到一个系统工程的视角看问题,不得不回到关口前移的视角看问题,不得不回到一个安全左移的视角看问题。所以在2019年我们发布的内生安全框架,其实是在2018年十三五中期调整的时候,跟很多我们大型的企业,包括部委,在十三五中期规划,包括现在十四五规划的时候就研究一件事情,请问信息化安全跟你的业务如何在同一个平面对话。

无论是从战略级别、架构级别,还是从我们落地的操作实践级别,它都需要有这样的一个融入。过去的安全更多地是一根刺、一根针,它告诉你软件有什么问题、硬件有什么问题,怎么影响到业务。这个思路叫查缺补漏,叫找漏洞的思维。

找漏洞的思维其实是相对被动的,如果我们说关口前移、安全左移,我完全可以站应用开发的视角,可以站在更早的信息化规划的视角把安全能力融入。所以这套内生安全框架,其实我们又演进了一步,如何把内生安全框架落到我们的企业信息化上,当时我们把整个的企业信息化系统做了拆解,形成了这样的白皮书,再跟很多企业进行我们相应的规划,形成了十大工程五大任务。

所谓工程就是在十四五期间我们所有建立的工程体系每年要做的,可能涉及到身份安全,可能涉及到纵深防御,可能涉及到数据中心安全。那下面五大任务它不能独立成工程,其中你看应用开发安全,它是一种能力,这种能力可以嵌入在我们十大工程当中。而我们今天讲到的软件供应链安全,实际上是十大工程五大任务当中的一个环节,就是应用开发安全这种能力如何嵌入。

所以我们有时候谈到供应链安全,不是单讲软件代码安全,也不是单讲我们的开源组件安全,是在十大工程五大任务的整体框架下,去研究应用安全的能力如何有效嵌入到我们整体工程建设当中。

这里我们把任务二进行拆解,其实任务二当中的关键词叫做DevOps,我们知道DevOps实际上是一个

非常火的词,如果中间加一个Security,加说一个

安全,就是DevOps。在这个过程当中,其实是从整个应用开发的全流程视角,包括交付和上线,以及使用过程当中视角来解决我们的安全问题。

这里其实反向应用的几个核心思想:

第一个核心思想,信息化过程跟安全过程必须统一融合,所以我们当时用八个字,叫前面覆盖,深度融合。这个过程其实讲到的是什么?是说如果你不早期地把应用开发过程当中各个环节嵌入你安全的考虑,我们今天所谓的国产化软件,我们说的工业软件一定会出问题。

那到底有没有这样的问题?刚才很多案例已经说清楚了。为什么工业软件被攻击?我们经历了太多,7天停产的汽车公司,还有包括一个矿山停产被勒索软件两天,一天5000万,这些其实是工业软件背后蕴含着巨大的利益。

整个的软件供应链安全的命周期其实比较复杂,它其实是把整个从安全的开始,我们说从软件开发开始,一直到上线部署应用进行拆解。这个过程当中有很多重要的一些环节在其中,我们这里可能包括在其中的开源组件的分析,也包括软件空间的测绘。有人说什么叫软件空间的测绘?今天我给你一个软件,请问这个软件最小元素的集合到底是什么,现在谁也说不清楚。它用的什么样的DLL、用的什么样的域名,里面有没有一些静态的自杈,还有包括这里面使用了什么样的开源组件,谁都说不清。

所以当今天我们碰到一些元素出了问题的时候,它影响的不是一个软件,是多个软件。而所谓的软件空间测绘,就让你把底数掌握清楚。以前我们说到底数掌握清楚更多描述的是服务器是什么,包括交换机是什么,还有包括你的应用软件是什么。我们今天要掌握的底数是把一个应用软件全部剥离开来,看看里边到底是什么,把黑盒子变成白盒子,你把这个登记在册这就是你的资产、你的血源、你的供应链。一旦你出现一个问题的时候,你可以查这个台账,一下子清楚在哪个位置出了问题。是哪个固件软件当中出的问题影响你的控制器,还是说在这个过程当中可能影响到你的一个控制软件,所以这个其实是非常重要的一个过程。而且在这个过程当中,还有包括很多自动化的检测,还有这里面针对不定的一些测试,其实都坐这个过程完成。

所以这些其实是我们针对供应链安全整体生命周期的考虑方案,它直接体现了安全跟信息化融合,也体现了关口前移的这种思想。

这里面其实有一些关键的能力,它是需要不同来建立的,中央网信办刚刚建立一个处叫软件供应链安全处,而其中主要针对的是关键基础设施。而这个关键信息安全关键基础设施最重要的其实包含着很多工业的互联网,包括像工业的控制这样的系统。

而这个过程当中你会发现,监管方到底做什么?他通过政策、产业、技术这三方面,其实要提供一个整体的监管的氛围,还有包括相应的一些检查,甚至说感知的能力。

它针对这样的原厂商,就是我们所有的工业企业强监管。它必须强监管,你到底有没有供应链安全的治理能力,你的供应商到底有没有做过这样的供应链安全。华为进入中国电信的时候,BT对它的审核主要审核什么?你的供应链是不是安全,它的审核其实成为华为最终的能力。

我们今天在内蒙的一家厂,它是一个总装厂,是军工行业的,我们当时问有多少家供应商,3000家。这3000家引入风险了吗?不知道。那我们今天再问金融行业,金融行业过去做也在问一个问题,我的供应商有没有运营风险,都没有。

所以这种监管可能是我们的公安网信,也可能是在一个行业主管的监管机构,尤其像我们工信部,其实作为工业整个互联网的一个主管部门,他其实在整个领域当中起到了很多政策引导的作用。

另一方面就是对于工业企业来说,它其实也需要建立一种软件供应链安全解决体系的方案,它要搞清楚开源软件在哪里,搞清楚软件成分是什么,也要搞清楚我在这里面要做一些什么样闭环的服务。在出现漏洞的时候,它的情报过来,我该怎么修补、怎么调整配置,我的资产到底在哪里。

我们经常说四个字叫自配漏补(自强、配置、漏洞、补丁),这是软件供应链安全当中最基础的能力,这个能力跟黑客攻击没关系。今天我们只要存在这个企业,有软件,自配漏补这件事情会随着外部数据的变化,比如说新增一个资产,出现一个漏洞,补丁下来了,配置调整,都会形成动态的闭环。

所以这个整体的服务体系就非常重要,可是在大部分的企业当中,或者是绝大部分企业当中不存在这样的闭环。我们其实跟福建当地很多重要的一些企业,包括宁德时代、紫金矿业,都进行了很多合作,他们的业务覆盖全球。但这个过程当中,他们亟待要解决的就是这些问题。这些是非常基础的问题,但是正因为这些问题的存在,黑客到处都是漏、到处都是门。而这个讨程当中结合一些相应的安全管理的工具,还包括手段,可以更好地进行实时的响应。

这里到底有什么相应的核心技术呢?第一个就是软件空间测绘能力。刚刚我们说了今天给你一个二进制软件、给你一个源代码,你能把里面的所有的代码分析清楚到底它的元素是什么,这个其实就非常关键。

我们在我们的企业当中针对我们经常遇到的流行的软件,绿色桌面的系统软件,包括安卓,还有iOS部件,以及我们碰到的政企客户,我们都在给他做一个测绘。这个测绘其实就是把我们整个企业当中所用的软件搞清楚它的成分是什么,如果不考虑成分,不考虑清楚元素的依赖关系,真的出一个小的问题的时候,你根本不知道在我们的企业当中到底产生什么样的问题。

现在其实我们是中国电子战略投资的一个企业,中国电子其实在飞腾,还有包括像麒麟软件推出的时候,上面也有很多相应的应用软件,同样像国产化的很多软件都需要这样的成分分析,来解决进一步的安全的问题。

另一方面就是源代码的成分风险分析,因为源代码都会引入相应的漏洞,所以源代码这样的漏洞,其实我们针对叫开源软件做最有效。为什么?因为现在很多源代码都是建立在开源软件基础上的。可是今天的源代码因为开源软件,开源软件有没有漏洞?

第二,它如果除了漏洞以外,你知道在企业内部用了多少个这样的开源软件吗?它在什么地方?不能修补?谁负责?管理人是谁?如果我要修补的话,要不要做一些补丁的测试?其实这个东西都没有。

所以源代码成分的风险分析,主要是针对什么呢?

我们的漏洞,还包括开源组件进行分析。

所以目前我们已经检测了3000多个这样的软件开源项目,说实话数字是触目惊心的,我们提交给了网信办。这里面的开源软件漏洞很多,第一没补,第二使用开源软件这样的企业可能10几年前的漏洞都没有补过,因为他不知道,他不知道这是漏洞,他不知道他用过这样的开源软件。

另一方面源代码安全的缺陷跟后门的分析,其实源代码很多都有缺陷跟后门,如果不分析的话,你直接用它,相当于开了一扇门,而这个门还不是你开的,是因为你买那个门本来就有后门。所以这个过程当中你只有把它细节分析清楚以后,才能保证这样的一些安全。

另外还有包括像我们的关键的联网设备的成分分析,尤其联网设备当中其实对于固件的安全检测是非常关键的。一个固件拿过来,里面是软件不是硬件,你知道它里面用国家什么?你不知道。我们无论针对路由器、摄像头,还有包括网络设备、工控设备都做过分析。还有包括我们现在的地轨卫星里面的地面站,还有包括卫星当中使用的很多,我们都做了分析。

这里所存在的漏洞已经非常之多了,这些漏洞其实是单点可以控制一个设备。如果从攻击暴露面来说,控制这个设备就可以进到核心网络。我举个最简单的例子,在一个城市里面有2万多个摄像头,只要爬到电线杆,把摄像头后面的网线拔下来,插入到你的电脑上,你就直接进入到它的公安系统的数据中心了,这是一个最典型的供应链安全的特点。所以这个过程当中,其实对于我们来说非常严肃的一些问题都在这里。

这里有一些实践,这些实践对于我们来说,工信部在工业互联网创新发展过程当中,有一个工业源代码软件漏洞检测的项目。这个项目其实是一个创新项目,这样的项目其实就一个核心技术指标来说,不仅要支持多个平台,更重要的是要在这里面快速发现工业软件当中的一些安全漏洞问题。所以这个过程当中,市场整个应用我们至少要建立两个工业行业的应用典型,但这个项目我们觉得非常好,这已经不是两个了,其实用于我们很多的工业活动。

包括我们跟三一重工,还有海尔卡奥斯,这样的一些战略性的合作,其实都是在帮他们去做工业软件的成分分析、漏洞分析,应用这样的成果。

另外像这样的软件供应链安全,我们自己是北京冬奥会的官方赞助商,而冬奥会从这届开始,以及整个奥运会,才会有软件安全的赞助商,我们是首个整个冬奥会历史上的安全赞助商。这其中涉及到的软件复杂了,这里用的可能是美国的软件、法国的软件、中国的国产化软件,很多,这里的成分根本搞不清。

所以最后做一个总结,保障整个的工业软件全过程、全生命周期的安全三点:

第一点,软件供应链安全已经成为重要的攻击手段,影响到关键基础设施安全,否则网信办不会成立这样的处,公安部不搞这样的大检查,咱们工信部更不会去出这样的创新课题。

第二点,工业软件安全跟我们的软件供应链其实是一样,它是个系统工程的概念。因为我自己学航空航天,系统工程就要把整个系统进行解构,用工程化和系统性的视角来解构它。解构它以后你会发现软件开发的流程当中潜在着各种细节问题,所以这里其实是一个体系性保障的概念。

第三点,深度融合,全面覆盖。跟整个软件供应链全生命周期融合安全才有结果,而月应用开发过程从没有停止过,它是个持续的过程,也是个动态的过程。

所以希望奇安信的努力能够保证工业企业整个软件的安全,谢谢大家!

原创文章,作者:站长号,如若转载,请注明出处:https://www.zhanzhanghao.com/2758.html

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注