自动化代码审计的首个客户 - Trail of Bits博客
Dan Guido
2016年10月4日
网络大挑战,新闻发布,静态分析
上月,我们为DARPA网络大挑战开发的网络推理系统(CRS)以更短时间、更详细程度和更低成本审计了远超人类能力的代码量。我们的CRS为Mozilla安全开源(SOS)基金审计了zlib。据我们所知,这是CRS执行付费自动化安全审计的首个案例。
这代表了软件安全审计执行方式的转变,是迈向保护互联网核心基础设施的重要一步。
从无到有的选择
每年,公共、私人和非营利组织在代码审计上花费数万美元。在典型的两周合作中,安全专家收取可观费用执行审计,但其效果受代码量、文档组织及人类固有局限(如疲劳、休假等)的限制。人类每天有效分析复杂C代码的时间有限,且评估者可能仅精通部分缺陷类型或C语言,全面知识难以获得——这需要15年以上的专业经验。非营利组织无法承担这种知识水平,在1-2周评估中也罕见。
由软件执行审计更合理:软件不会疲劳,可轻松审计老旧混淆代码和现代注释良好代码,并能自动在每次更新后重新审计以确保修复正确且不引入新错误。
Mozilla的SOS基金
8月,作为安全开源(SOS)基金的一部分,Mozilla委托我们对zlib(开源压缩库)进行安全评估。Zlib用于几乎所有需要压缩或解压缩的软件包,您正在阅读本文的软件很可能捆绑了zlib。其代码库相对较小,但隐藏着高度复杂性:由于编译器优化,机器运行代码可能与源码不完全匹配;某些漏洞可能因未定义行为偶尔出现;其他可能仅在极端条件下触发。在像zlib这样经过充分检查的代码库中,剩余漏洞可能过于微妙,人类在典型合作中难以发现。
要识别人工审计中的特别微妙漏洞,Mozilla需额外支付数千美元,但作为非营利组织,他们还有一系列其他项目需审计和改进。
高覆盖率与低成本
自动化使合作对Mozilla负担得起,对我们可行。他们支付了我们此类工作正常费用的20%。我们的自动化评估将Trail of Bits CRS与TrustInSoft验证软件结合,以识别内存损坏漏洞、创建压力测试不同程序路径的输入,并识别未来可能导致错误的代码。
阅读我们交付给Mozilla的报告。(详细介绍了CRS与TrustInSoft验证程序如何以人工审计成本的一小部分发现更多漏洞。)
阅读Mozilla关于该报告的发布。
对于致力于保护互联网核心基础设施的非营利组织,这是一个以传统成本一小部分获得高覆盖率详细评估的绝佳机会。
联系我们获取更多信息。
如果您喜欢本文,请分享:
Twitter、LinkedIn、GitHub、Mastodon、Hacker News
页面内容
从无到有的选择
Mozilla的SOS基金
高覆盖率与低成本
近期文章
Trail of Bits的Buttercup在AIxCC挑战赛中获第二名
Buttercup现已开源!
AIxCC决赛:记录对比
攻击者的提示注入工程:利用GitHub Copilot
作为新员工发现NVIDIA Triton中的内存损坏
© 2025 Trail of Bits。
使用Hugo和Mainroad主题生成。