高级提取与变异技术:基于模板的JavaScript引擎模糊测试方法
《Proceedings of the ACM on Programming Languages》:Extraction and Mutation at a High Level: Template-Based Fuzzing for JavaScript Engines
【字体:
大
中
小
】
时间:2025年11月07日
来源:Proceedings of the ACM on Programming Languages
编辑推荐:
JavaScript引擎的模糊测试研究提出TemuJs框架,通过抽象模板和语义替换实现高效测试,在V8、SpiderMonkey和JavaScriptCore上发现44个漏洞,覆盖率提升10.3%。
摘要
JavaScript(JS)引擎实现了复杂的语言语义和优化策略,以支持JS的动态特性,这使得它们难以被彻底测试,并且容易出现微妙的安全关键错误。现有的模糊测试工具往往难以生成多样且有效的测试用例。这些工具要么依赖于缺乏语义理解的语法级修改,要么对具体代码进行有限的、局部的修改,因此无法深入探索更复杂的行为。本文介绍了一种名为TemuJs的新型模糊测试框架,该框架在抽象模板上进行提取和修改操作,这些模板是从实际JS程序中派生出来的。这些模板使用语义占位符来捕捉粗粒度的程序结构,从而实现能够保留原始代码高层次意图的同时使其行为多样化的语义感知修改。通过将修改操作与具体语法解耦,并利用结构化的中间表示形式,TemuJs能够探索更广泛、更有意义的程序行为空间。在V8、SpiderMonkey和JavaScriptCore这三个主要JS引擎上进行评估时,TemuJs发现了44个错误,并且与最先进的模糊测试工具相比,边缘覆盖率平均提高了10.3%。我们的结果证明了高层次模板修改技术在测试JS引擎方面的有效性。
生物通微信公众号
生物通新浪微博
今日动态 |
人才市场 |
新技术专栏 |
中国科学人 |
云展台 |
BioHot |
云讲堂直播 |
会展中心 |
特价专栏 |
技术快讯 |
免费试用
版权所有 生物通
Copyright© eBiotrade.com, All Rights Reserved
联系信箱:
粤ICP备09063491号