库博成为中国首家且唯一通过美国CWE认证的产品

作者:武文嘉

      北大软件静态代码分析工具库博(COBOT)通过美国CWE符合性认证,成为中国首家且唯一一家通过该认证的软件安全检测工具,打破了国外产品在软件检测分析领域的垄断地位,使中国软件安全产品站在了世界的舞台上。

      

1.何为CWE认证?
      CWE全称Common Weakness Enumeration,由美国国土安全局下的US-CERT(美国计算机应急管理中心)资助,是世界最具知名度和权威性的软件安全漏洞模式库。
      世界知名安全软件产品均在此组织认证,以表明该工具能够支持CWE所描述的主要的缺陷模式的检测和分析。
      在库博之前,我国没有任何一款软件安全工具通过该认证。
2.COBOT为何通过了CWE认证?
      CWE认证的六个维度如下所示:

      

      我们在相应的维度均进行了相关工作,包括对CWE条目的可搜索性支持、工具检测结果对CWE条目的支持、建立检测项与CWE的映射关系、提供CWE 文档支持、统计CWE条目覆盖性、建立CWE测试结果等。
      库博的语义缺陷模块有128条检测项,编码规则模块有一千多条检测项,共涵盖了CWE条目八大类中77子类的数百种缺陷模式。通过大量程序缺陷测试与结果分析,检测结果误报率约20%,相对漏报率约30%,每小时可分析百万行程序,达到了CWE可接受的检测要求。
      我们不断提高分析技术,丰富缺陷模式,并一直进行开源代码库的测试与分析工作。我们每周会引入1-3个新的开源程序进行检测,并将相应结果公布至我们的网站。截至目前,库博工具共检测了来自GitHub/Sourceforge上的开源项目86个,400余万行代码。共发现缺陷30610个,缺陷率约为7.6个/KLOC。
      目前为止,全球共有14个国家的39个产品或服务(共88个)被授予CWE-Compatible,例如IBM的AppScan, HP的WebInspect、Fortify , Synopsys的Coverity, LDRA的Testbed,RogueWave的Klocwork,Parasoft的C++Test等。而库博是中国唯一一个被授予CWE-Compatible的产品。