谁真正写了你正在使用的代码?

根据2019年11月12日来自于五角大楼的Dod发言称,谁真正写了你的代码?原因主要是因为美国程序员经常从各种场合下载使用来自于俄罗斯和中国程序员编写的代码。这对美国的国防安全提出了严峻挑战,所以五角大楼正在研究开发或者购买工具来实现对代码的追踪。

 

 

一位负责采购软件的美国官员称,虽然我们购买的软件来自于美国公司,但是不意味着所有的代码都是这里写的。软件开发公司或程序开发人员将工作分包给外国公司、从开源库下载组件、或者从现有软件中复制和粘贴代码—却不检查代码的来源,甚至不了解代码的工作原理。五角大楼非常担心由此产生的Bug或后门,研究通过工具来追踪软件的真正来源。

五角大楼风险评估和业务整合首席信息官Michele Iversen对记者说,我们正在调研在经费允许情况下,研发或购买决策支持工具。可见,五角大楼已经开始关注ICT供应链安全。

 

的确,在关系国家国防安全、经济命脉的企事业大量采购供应商的系统,但是却不知道所采购的软件是否值得信赖。例如:

  1. 采购软件是否是安全的,是否经过检测,提供软件里面有什么构成的,采购单位是否清楚?
  2. 采购供应商的研发人员进行外包开发,虽然现场服务,但是是否有方法和手段保证了他们开发的程序是安全的?他们下载开源软件,是否得到主管的审批或纳入了管理,还是仅仅通过了某种形式认为是安全的?
  3. 仅仅通过验收测试是否保证了安全?验收过程仅仅是供应商的验收测试报告吗?如何证明验收测试得到了有限执行
  4. 验收过程是否采用了客观公正的检测工具,工具是否安全、可控?

Michele Iversen发言主要意思表明,在软件安全行业主要是新兴的私营企业,他们能够把软件供应链层层追溯到最小的积木。这些公司能够利用公开数据,找到正确的地方,整个国防部都可以自由分享这些数据,而不用担心违反任何安全规定。这些话的意思是现在很多新兴的安全公司已经推出了面向软件供应链安全的工具,这些工具里采用的是公开的安全漏洞信息,例如CWE或者OWASP的,利用这些数据去检测软件中的代码是否安全,不用担心会侵犯版权、信息安全等问题。

 

国外厂商在该领域起步较早,例如业界知名度较高的Blackduck,能够检测代码成分和安全漏洞等,国内有少量企业租用这款工具,但是费用非常高,由于其代码和安全漏洞数据库服务器在美国,要把代码传到美国才能把代码显示出来。其它公司产品,例如FOSSID、Veracode等产品也都存在这个问题,虽然可以本地化部署,把庞大的代码和漏洞数据部署在企业内部,虽然不用担心代码安全,但是面对日益增多的开源软件暴露出的漏洞,以及0day漏洞,更新其代码库和漏洞库显然面临链接国外服务器的安全风险,虽然可以给出通过邮递光盘、或主动从国外服务器拉取升级程序等解决方案,且不谈时效问题,企事业面临的风险依然没有减少,是否能够客观公正的提供安全漏洞库,是否刨除政治因素等。自主、可控的国产工具显然可以解决这方面问题,这对于国内新兴的安全厂商是一个机会。例如北京大学,推出了CoBOT相关产品,基于大学背景,又具有独立知识产权,可以说政府、军队军工、工业制造、金融等企事业采购安全工具比较好的选择。

 

我去有幸试用了北京大学推出的这款工具,内部称为同源分析工具。为什么称为同源分析工具呢?因为通过被检测代码与工具数据库中的代码进行检索比对,对比时主要通过代码指纹或代码DNA进行比对,也就是文件Hash比对,如果检测中发现两个文件Hash值相同,则表明两个文件相同,如果某个组件的所有的DNA相同,则认为被检测工程中组件与库中的组件来自于一个源,则进一步表明这个组件存在的漏洞在被检测工程中也存在,这就是同源分析的理解。

那同源分析工具主流功能应该有哪些呢?

主要应该包括代码成分分析,分析出工程中包含的组件,每个组件对应的文件,这些文件可以是源代码,也可能是二进制文件,所以这种分析能够不区分语言进行检测。每个组件包含的漏洞,由于开源组件中间存在着引用和依赖关系,也就是组件调用了其它组件,其它组件又调用了另外的组件,组件之间形成依赖关系,类似知识图谱,从多个角度分析代码和漏洞,包括漏洞严重程度、数量等多种维度度量。在此基础上,可以进行两两工程对比,这比较适合在软件版权纠纷中分析两个软件的相似性,当然针对某一个软件也可以分析出其引用开源框架、组件组件以及第三方库的比例,例如算算红芯浏览器的自研率。由此也可以衍生出软件许可证分析等。在国内大多数企业对引用开源软件还基本上处于失控或半失状况下,无疑对于国内企事业来说,是一个好消息。

有兴趣的朋友可以去www.cobot.net.cn了解更多信息。关于Blackduck由于目前被Synopsys收购,想了解的朋友可以去www.synopsys.com进行了解。在自主可控的形势下,北京大学的同源分析工具未来的路可能走得更远。

 

关注安全  关注作者

(完)

发布了309 篇原创文章 · 获赞 31 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/manok/article/details/103133739
今日推荐