喵ID:quK4lv免责声明

Making no-fuss compiler fuzzing effective

基本信息

DOI:
10.1145/3497776.3517765
发表时间:
2022-03
期刊:
Proceedings of the 31st ACM SIGPLAN International Conference on Compiler Construction
影响因子:
--
通讯作者:
Alex Groce;Rijnard van Tonder;G. Kalburgi;Claire Le Goues
中科院分区:
其他
文献类型:
--
作者: Alex Groce;Rijnard van Tonder;G. Kalburgi;Claire Le Goues研究方向: -- MeSH主题词: --
关键词: --
来源链接:pubmed详情页地址

文献摘要

Developing a bug-free compiler is difficult; modern optimizing compilers are among the most complex software systems humans build. Fuzzing is one way to identify subtle compiler bugs that are hard to find with human-constructed tests. Grammar-based fuzzing, however, requires a grammar for a compiler’s input language, and can miss bugs induced by code that does not actually satisfy the grammar the compiler should accept. Grammar-based fuzzing also seldom uses advanced modern fuzzing techniques based on coverage feedback. However, modern mutation-based fuzzers are often ineffective for testing compilers because most inputs they generate do not even come close to getting past the parsing stage of compilation. This paper introduces a technique for taking a modern mutation-based fuzzer (AFL in our case, but the method is general) and augmenting it with operators taken from mutation testing, and program splicing. We conduct a controlled study to show that our hybrid approaches significantly improve fuzzing effectiveness qualitatively (consistently finding unique bugs that baseline approaches do not) and quantitatively (typically finding more unique bugs in the same time span, despite fewer program executions). Our easy-to-apply approach has allowed us to report more than 100 confirmed and fixed bugs in production compilers, and found a bug in the Solidity compiler that earned a security bounty.
开发无虫的编译器很困难。编译器输入语言的语法,并且可能会错过由编译器的语法所诱导的错误很少基于覆盖范围的反馈使用先进的现代模糊技术。基于现代突变的模糊器(在我们的情况下,AFL,但该方法是一般的),并通过从突变测试中获取的操作员加强了它,我们进行了一个受控的剪接。研究表明,我们的混合方法显着提高了模糊的效果(始终如一地找到基线方法无法使用的唯一错误)并定量(通常在同一时间范围内找到更多独特的错误,dospite较少的程序执行)允许我们在生产编译器中报告100多个已确认和固定错误,并在固体编译器中发现了一个赢得安全弹跳的错误。
参考文献(25)
被引文献(5)

数据更新时间:{{ references.updateTime }}

Alex Groce;Rijnard van Tonder;G. Kalburgi;Claire Le Goues
通讯地址:
--
所属机构:
--
电子邮件地址:
--
免责声明免责声明
1、猫眼课题宝专注于为科研工作者提供省时、高效的文献资源检索和预览服务;
2、网站中的文献信息均来自公开、合规、透明的互联网文献查询网站,可以通过页面中的“来源链接”跳转数据网站。
3、在猫眼课题宝点击“求助全文”按钮,发布文献应助需求时求助者需要支付50喵币作为应助成功后的答谢给应助者,发送到用助者账户中。若文献求助失败支付的50喵币将退还至求助者账户中。所支付的喵币仅作为答谢,而不是作为文献的“购买”费用,平台也不从中收取任何费用,
4、特别提醒用户通过求助获得的文献原文仅用户个人学习使用,不得用于商业用途,否则一切风险由用户本人承担;
5、本平台尊重知识产权,如果权利所有者认为平台内容侵犯了其合法权益,可以通过本平台提供的版权投诉渠道提出投诉。一经核实,我们将立即采取措施删除/下架/断链等措施。
我已知晓