加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 移动互联 > 正文

30分钟扫描一亿行代码找bug,这款神器连Facebook黑粉都赞叹不已

发布时间:2019-08-23 19:51:35 所属栏目:移动互联 来源:郭一璞
导读:本文经AI新媒体量子位(公众号ID:QbitAI)授权转载,转载请联系出处。 Facebook,拥有数十亿用户规模的超级大厂,代码总行数高达一亿行。 Bug,可能藏在一亿行代码中的每一行里,而且Facebook的工程师们还一直在添加新的代码进去,这要是出了什么问题,影

30分钟扫描一亿行代码找bug,这款神器连Facebook黑粉都赞叹不已

本文经AI新媒体量子位(公众号ID:QbitAI)授权转载,转载请联系出处。

Facebook,拥有数十亿用户规模的超级大厂,代码总行数高达一亿行。

Bug,可能藏在一亿行代码中的每一行里,而且Facebook的工程师们还一直在添加新的代码进去,这要是出了什么问题,影响超多用户,要怎么在浩如烟海的代码里定位问题?

靠大案牍术么?

不,靠Zoncolan,静态分析工具,能在30分钟内扫描完整个代码库,及时发现bug的所在,检测内部的安全漏洞。

不少人都在Twitter上称赞这款工具,有人觉得这款工具非常有趣,还能让大家更有干劲;

30分钟扫描一亿行代码找bug,这款神器连Facebook黑粉都赞叹不已

还有人觉得自动搜索代码找错误这一点,实在是太迷人了。

30分钟扫描一亿行代码找bug,这款神器连Facebook黑粉都赞叹不已

甚至有Facebook黑都觉得,虽然不喜欢这公司,但他们的安全和工程团队的确令人尊重。

30分钟扫描一亿行代码找bug,这款神器连Facebook黑粉都赞叹不已

Zoncolan

Zoncolan是Facebook内部复杂的代码检查系统中的一种工具,用静态分析的方法自动检查Facebook内部的代码,映射代码库的表现和功能,检测潜在的安全威胁,让安全工程师的工作规模化。

有了Zoncolan,代码检查的速度大大提高了。手动检查可能需要经年累月的时间,但靠Zoncolan,从冷启动开始,只要不到30分钟的时间,就能检查完Facebook长达一亿行的整个代码库。

30分钟扫描一亿行代码找bug,这款神器连Facebook黑粉都赞叹不已

自从开始应用以来,Zoncolan已经找出了数千个潜在的安全问题。

Zoncolan设置了关于不良架构或代码的“规则”,并自动扫描系统中的这些类错误。除了标注下这些问题之外,Zoncolan还能将问题实时反馈给工程师,让它们规避掉此类问题。

Facebook安全工程经理Pieter Hooimeijer介绍说,每当工程师提交代码到代码库的时候,Zoncolan就会在后台运行,找出来的问题直接告诉这位提交代码的工程师,或者提交到值班的安全工程师那里。

按照Facebook工程师们的提交频率,Zoncolan每天运行数千次,仅仅2018年一年,它就发现了1500个问题。

隐私泄露问题无法万无一失

不过,有了这类找bug和安全漏洞的工具存在,Facebook也不能保证万无一失。

去年,Facebook就因黑客攻击,导致3000万用户包括手机号码、邮箱地址等用户信息泄露。咨询公司TrustedSec的CEO David Kennedy说,Zoncolan这类静态分析工具,无法发现这种数据泄露问题。

不过,也并非所有的隐私问题Zoncolan都无法解决。

今年3月,Facebook被爆出有6亿用户密码被以明文方式存储,超过2万名员工都可以看到这些密码。此事发生之后,Facebook把这类漏洞的规则提交到了Zoncolan上,因此,Zoncolan也可以扫描代码库中类似的状况,也确实找到了一些问题。

将会开源

最后,Zoncolan这么好的东西,能不能拿出来和大家一起分享呢?

Facebook安全工程经理Pieter Hooimeijer说,他们希望能推出开源的版本。不过,鉴于开源版本可不仅仅只用适配Facebook内部环境就好了,所以还需要增强灵活性,适配更多环境。

此前,Facebook已经针对Python推出了一个名为Pyre的代码检查器,虽然能力范围并不像Zoncolan一样强大,但这基本上就是Facebook准备开源的一个范例了。Hooimeijer说,这个基本上就是Python版的Zoncolan。

Pyre开源地址:

https://github.com/facebook/pyre-check

参考链接:

https://www.wired.com/story/facebook-zoncolan-static-analysis-tool/

【编辑推荐】

  1. 一文告诉你全世界头部的开发者都在使用什么数据库
  2. 必读 | 开发者 AI 转型指南
  3. 10分钟带你打开深度学习大门,代码已开源
  4. 数不清的Chrome插件 ,适合开发者的只有这几个!
  5. 程序员必备的21款工具与编程灵感
【责任编辑:张燕妮 TEL:(010)68476606】
点赞 0

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读