TypeNFuzz:一种基于动态类型感知的对象依赖图引导的模糊测试方法,用于发现JavaScript库中的漏洞

《ACM Transactions on Software Engineering and Methodology》:TypeNFuzz: Dynamic Type-aware Object Dependence Graph Guided Fuzzing for JavaScript Library Bug Discovery

【字体: 时间:2025年11月08日 来源:ACM Transactions on Software Engineering and Methodology

编辑推荐:

  针对Node.js库测试中动态类型和浅层导出的问题,TypeNFuzz提出结合类型驱动输入合成和深度可达性探索的方法,显著提升代码覆盖率并发现77个新缺陷。

  

摘要

Node.js 的流行在很大程度上归功于其庞大的库生态系统。虽然这种丰富的库资源加快了开发速度,但代码质量的参差不齐却给确保系统稳定性带来了挑战。有效的库测试面临两个主要问题:(1)动态类型系统使得构建有效的、复杂的输入数据变得复杂;(2)关键的内部逻辑被隐藏在表面的函数或变量导出中,难以被深入访问。现有的测试工具难以有效应对这些问题。为了解决这些问题并提升库的质量,我们提出了 TypeNFuzz——一种专为 Node.js 库设计的新型测试方法。TypeNFuzz 结合了以下两个关键技术: 1. **基于类型的输入生成**:通过分析 TypeScript 声明文件,生成语义正确的输入数据,从而消除动态类型系统带来的歧义。 2. **深度可达性探索**:利用动态且具有类型感知能力的对象依赖图来指导测试过程,系统地触发内部代码路径的执行,以揭示隐藏的深层逻辑。 测试结果表明 TypeNFuzz 的有效性:其代码覆盖率比现有的最佳工具高出 1.70 到 6.74 倍,这主要归功于它能够处理复杂的数据类型并深入探索代码逻辑。更重要的是,它发现了 77 个在流行内置库和第三方库中之前未被发现的缺陷,显著提升了系统的稳定性和可靠性。
相关新闻
生物通微信公众号
微信
新浪微博
  • 搜索
  • 国际
  • 国内
  • 人物
  • 产业
  • 热点
  • 科普
  • 急聘职位
  • 高薪职位

知名企业招聘

热点排行

    今日动态 | 人才市场 | 新技术专栏 | 中国科学人 | 云展台 | BioHot | 云讲堂直播 | 会展中心 | 特价专栏 | 技术快讯 | 免费试用

    版权所有 生物通

    Copyright© eBiotrade.com, All Rights Reserved

    联系信箱:

    粤ICP备09063491号