当前位置 爱咖号首页 新思科技Coverity Scan帮助NGINX开发人员提升代码质量和

新思科技Coverity Scan帮助NGINX开发人员提升代码质量和

侃车e族 4浏览 2021-07-12 IP属地: 未知
多年来,全球许多企业和组织都采用新思科技Coverity静态分析解决方案,以便开发团队编写更清晰、更稳定的代码,生产更加优质的软件产品。NGINX是其中一家。
新思科技(Synopsys)在Forrester Wave™发布的《2021年第一季度静态应用安全测试》报告中被评为领导者。在12家被评估的供应商中,新思科技Coverity静态分析解决方案在“现有产品”类别中获得最高分,并且在“策略”类别中名列前三。
NGINX背景介绍
NGINX开源(发音为“engine x”)是全球最广泛的Web服务器之一,为Netflix、Hulu、Pinterest和GitHub等站点提供支持,凭借其高性能、稳定性、丰富的功能集、简单的配置和资源消耗低等优势而广受赞誉。 NGINX开源系列的其它成员包括NGINX JavaScript(njs),一个向NGINX添加JavaScript支持的模块; NGINX Unit,动态应用服务器,支持用Perl、Python、Ruby、Node. Js、Go、Java和PHP.njs编写的应用。
所有三个NGINX开源项目的开发人员都使用新思科技Coverity Scan®查找并修复其代码中的缺陷。新思科技(Synopsys)提供免费在线服务,并由与新思科技商业Coverity静态分析工具使用的一样的引擎提供支持,Scan可帮助开源开发人员识别代码缺陷,以便快速、轻松地进行补救。
NGINX软件编写者兼联合创始人Igor Sysoev在2014年的一次采访中说:“我坚信开源的力量。NGINX是一个针对非常具体问题的实验,即如何在单个现有服务器上处理更多客户。原来这是一个普遍的问题。当意识到NGINX确实有助于提高Web性能时,我希望人们使用它,因此我将其设为开源。” 
NGINX开放源代码版本还可以用作反向代理、负载平衡器、邮件代理和HTTP缓存的Web服务器,为超过4亿个网站提供支持,其中包括Netflix、Hulu、Pinterest和GitHub等品牌。Igor Sysoev在2011年与合作伙伴共同创立了NGINX,以提供对NGINX 开源的正式支持,并提供商业版本NGINX Plus,该版本在NGINX 开源中增加了企业级功能。
2019年,NGINX被应用安全和交付公司F5 Networks收购。如今,NGINX的开源项目家族包括njs(向NGINX添加JavaScript支持的模块)和NGINX Unit(动态应用服务器)。
挑战:确保开源代码的质量及安全
NGINX联合创始人兼工程副总裁Maxim Konovalov介绍道:“在创立NGINX不久之后,我们就将Coverity Scan集成到了CI / CD流程中。自2012年以来,我们每天都在提交NGINX构建工件。”
Maxim Konovalov继续说:“在许多情况下,NGINX充当互联网前端,其安全性和稳定性对其用户至关重要。我的团队对提升代码质量孜孜不倦,并一直在寻找最佳实践和工具以改进代码质量。诸如Coverity Scan之类的静态代码分析工具为我们提供了很大的帮助。”
NGINX将公司视为数百万个应用程序和网站的基础技术,并严格要求自己。代码质量和安全是NGINX企业精神的一部分。对于开发实践来说,有效的工具必不可少。
解决方案:采用Coverity Scan进行静态代码分析
人们通常认为大多数软件漏洞是因为恶意攻击,但其实不然,这主要是由于代码错误导致的。GitHub发布的2020年度安全报告“2020 State of the Octoverse”显示,GitHub从2019年到2020年发送警报的漏洞中,有83%是由于编码错误引起的,而不是恶意攻击。
但是恶意攻击确实会利用代码中的缺陷,开发人员需要使用主动检测工具来发现他们编写的代码中的错误。静态分析根据一组编码规则检查源代码,以发现常见的编码错误。已在scan.coverity.com注册项目的开源开发人员可以免费使用这项服务,与新思科技的商业Coverity静态分析工具所使用的引擎是相同的,该功能可帮助开源开发人员识别代码缺陷,以便快速、轻松地进行补救。Linux Foundation在2020年的一份开源贡献者的报告中指出,受访者“绝大多数都引用Coverity Scan和Clang安全检查器”作为主要静态分析工具。
成效:扫描了658,000行代码,缺陷密度为0.02%
2021年1月, Coverity Scan为NGINX分析了658,665行代码,并发现了各种代码缺陷,其中包括两个CWE Top 25缺陷。由于F5 Networks定期使用Coverity Scan,NGINX项目的缺陷密度(每1,000行代码的缺陷数)仅为0.02%。
Maxim Konovalov赞赏道:“Coverity Scan为我们增加价值。我经常推荐Coverity Scan及其在代码提交中提供特定缺陷ID的功能。实际上,我是FreeBSD提交者小组的成员,我们也使用Coverity Scan进行FreeBSD的代码分析。”
文章标签:
行业资讯
 
相关推荐
侃车e族 3万粉丝    1.5万作品 关注 e族妹纸潮玩圈
推荐作者
弯道看车 关注
资深车评人,前《深圳特区报》汽车部主任
R视觉 关注
资深汽车摄影师、喜欢用视觉的角度来诠释一台车的魅力。
车轮哥 关注
记录老外在中国的汽车生活。
车宇世界 关注
车圈老干部,只做最客观的车评。
车市八爷 关注
宁波最知名的汽车新闻主流媒体之一,爱卡分享一手新闻、新车、评测
Techtec杨磊 关注
汽车ECU改装高级工程师,汽车改装维修专家。德国Techtec汽车性能
海阔试车 关注
汽车圈里摸爬滚打,一起聊聊汽车的那点事
来试车 关注
汽车视频自媒体 试驾评测 汽车工作的Vlog 每周持续更新
全部爱咖号