构建之、攻破之、修复之:安全开发竞赛
密码学与安全
2019-07-04 v1
摘要
典型的安全竞赛聚焦于攻破或缓解有缺陷系统的影响。我们提出构建之、攻破之、修复之(BIBIFI)竞赛,旨在评估安全构建软件的能力,而非仅攻破它。在 BIBIFI 中,各团队构建指定软件,目标是最大化正确性、性能与安全性。后者在团队尝试攻破其他团队提交作品时受到检验。优胜者从最佳构建者与最佳攻破者中选出。BIBIFI 被设计为开放式的;团队可使用任何其喜爱的语言、工具、流程等。因此,竞赛结果揭示了与成功构建安全软件及攻破不安全软件相关的因素。我们举办了三届竞赛,共涉及 156 支团队与三个不同编程问题。来自这些竞赛的定量分析发现,效率最高的构建提交使用了 C/C++,但以静态类型安全语言编写的提交出现安全缺陷的可能性比 C/C++ 提交低 11 倍。同时是成功构建者的攻破团队在发现安全漏洞方面显著更优。
引用
@article{arxiv.1907.01679,
title = {Build It, Break It, Fix It: Contesting Secure Development},
author = {James Parker and Michael Hicks and Andrew Ruef and Michelle L. Mazurek and Dave Levin and Daniel Votipka and Piotr Mardziel and Kelsey R. Fulton},
journal= {arXiv preprint arXiv:1907.01679},
year = {2019}
}
备注
35pgs. Extension of arXiv:1606.01881 which was a conference paper previously published in CCS 2016. This is a journal version submitted to TOPS