代码的代码静态分析不能够找出所有的问题,有些时候漏洞存在于建构过程中。分析
软件开发的推出过程具有多个层次。在最基本的开源层面是程序员写的代码,这些代码接下来会被建构系统编译,代码建构系统将这些代码集中在一起以备部署。分析代码分析厂商Coverity现在正在扩大其分析能力,推出期望超越静态分析的开源层次以找出被构建系统忽视的漏洞。
新的代码分析模式有助于减少应用程序中的软件缺陷。Coverity的分析新系统首先会提供给自己的商业客户但是也会放到已经从开源软件中减少了8500个软件缺陷的开源扫描中。
Coverity的推出首席技术官Ben Chelf称,建构系统本质上是开源代码的装配线,它将写好的代码代码集中到一起。通过分析建构系统,我们会找到不同于以往分析代码本身的一些东西。
他还解释称,建构分析软件会监视软件的建构过程,而不是分析分析实际建立配置文件本身。
Coverity所做的是让每一个建构系统都具备的监视功能向操作系统发出调用,并执行该操作,这样所有的信息都会处于监视之中。所以 Coverity拥有超过80个不同的系统调用来获取建构信息,然后只需让一个包装脚本监视就可以了。这样以来,就可以建立可靠的图表了。
开源扫描
Coverity从2006年开始就为软件缺陷进行开源代码的扫描。起初,Coverity Scan 是由美国国土安全部支持的,但是现在=这项工作由Coverity自己运行并提供资金上的支持。Coverity Scan着眼于几百个开源项目,旨在帮助我们寻找并修复软件瑕疵。
Chelf指出该计划旨在尽快向开源扫描添加建构分析仪,尽管他并未告知具体的实施时间。Chelf说:“这想计划一直在我们的开源扫描的路线图之中,实施只是时间安排上的问题。Chelf认为Coverity建构分析系统是在代码分析市场中将占据一席之地。
在这之外,Coverity的竞争对手Klocwork声称他们现在也可以建立类似的建构分析系统。“现在,我们的大多数建构分析技术都用来为客户的建构系统提供自动化的查找服务以便能有效而准确地分析代码。”Klocwork的营销总监Brendan Harrison说,“对于代码深度分析来说,这是一项必不可少的功能。此外,我们过去曾合作的许多用户都使用我们的分析功能并通过结构化的代码清理来优化自己的建构过程。”
防止开源攻击
Coverity建构系统也能让开发人员确保自己编写的代码没有在无意中为攻击大开方便之门。
Chelf解释称,在与Palamida的软件合作过程中,一个程序员可以检查整个建构过程以识别是否在开源代码中存在可以被攻击的缺陷。Palamida保存了更新的开源数据库和应用程序,并且如果有旧的,具有潜在威胁的开源代码被使用时,它会监测出来。
来自Coverity的新型代码分析由新的Coverity整合中心执行,该中心旨在将各种代码分析的片段联系起来,为开发人员提供全新的认识。作为 Coverity防护代码分析(用来进行静态代码分析和新的建构分析)的伙伴,整合中心也可以实现今年早些时候推出的架构分析。
“有多种不同的分析软件的系统,从架构角度,从建构角度已经从代码角度,”Chelf说,“我们可以选择任何喜欢的方式。所有这些不同的角度都能帮助我们以不同的方式找到软件中的漏洞。”
【编辑推荐】
(责任编辑:综合)
深圳三部门:持续深化融资租赁、商业保理行业清理规范 加强部门协同
三季度社保与QFII同时现身101家公司 医药生物、食品饮料等行业受青睐
四大互联网巨头金融领域牌照已达40张 银行保险 是互联网公司的“心头好”
*ST海航(600221.SH):2月客运量同比升419.17% 货邮载运率32.77%
辽宁多家上市公司入选制造业单项冠军名单 专注特定细分产品市场
消息:北上资金近5日净流入逾135亿元 7只潜力股被4家以上机构联袂推荐