#javascript-engine

共收录 3 条相关安全情报。

← 返回所有主题
👥 作者: Wai Kin Wong, Dongwei Xiao, Anthony Cheuk Tung Lai, Ping Fan Ke, Shuai Wang

该论文聚焦于 JavaScript 引擎的安全测试难题。现代 Web 安全高度依赖 JS 引擎的正确性,而引擎本身结构复杂、长期存在高危缺陷。当前最先进的模糊测试器(fuzzer)面临一个关键瓶颈——覆盖度平台期(coverage plateau):一旦 fuzzer 把引擎的控制流图基本走遍,基于边覆盖(edge coverage)的反馈就失去了引导能力,难以继续发现更深层的缺陷。根本原因在于,JS 引擎中许多复杂且安全相关的内部行为——例如 JIT 的多级优化分层(optimization tiers)、隐藏类转换(hidden class transitions)等——在边覆盖指标上表现完全相同,因此传统覆盖度指标对'引擎当前处于哪种内部配置/状态'是盲视的,也就无法引导测试用例去触达那些触发深层错误的特定状态。 为弥补这一缺口,作者提出 StateLens 框架,利用大语言模型(LLM)自动发现引擎的深层内部状态。直接在所有状态上布置插桩探针是不可行的:状态空间极其庞大,且运行时开销过高。StateLens 因此设计了一条新颖的、基于智能体(agent)的推理流水线,模拟安全研究者的直觉判断:智能体迭代地遍历源码与开发者注释,从中筛选出高价值的插桩目标,把真正驱动逻辑的状态变量与无关数据区分开来,从而自动合成高信噪比的反馈探针,将引擎隐藏的内部配置映射出来。这些插桩结果进一步馈入一个'双反馈'机制,把 fuzzer 引导向尚未探索的引擎语义空间。评估结果表明,StateLens 显著优于当前最先进的 fuzzer,并额外发现 68 个新缺陷。论文的贡献可归纳为三点:一是明确定位并形式化了覆盖面盲区这一 fuzzing 瓶颈;二是提出 LLM 智能体驱动的状态识别与插桩合成方法;三是通过实测证明其在真实 JS 引擎上发现了大量新 bug,验证了状态感知反馈的有效性。适合模糊测试、程序分析、编译器/JIT 安全及 LLM for security 方向的研究者与工程人员阅读。

💡 推荐理由: JS 引擎是浏览器与 Node.js 等关键组件的信任根基,其深层缺陷往往直接导致 RCE。该工作指出现有覆盖度导向 fuzzing 已进入平台期,并给出用 LLM 智能体自动定位内部状态、合成反馈探针的可落地思路,为引擎类大型软件的漏洞挖掘提供了新的增益方向。

🎯 建议动作: 研究跟进

排序因子: 有可用补丁/修复方案 (+3) | 影响边界/网络设备 (+5) | 来自 arXiv 其他板块 (+2) | 命中热门研究主题 (+2) | Community 数据源 (+1) | LLM 评分加成 (+0.6)
推荐 11.6
Conf: 50%
👥 作者: Haoran Xu, Zhiyuan Jiang, Yongjun Wang, Shuhui Fan, Shenglin Xu, Peidai Xie, Shaojing Fu, Mathias Payer

该论文针对 JavaScript 引擎模糊测试中的突变质量瓶颈,提出了一种基于图结构中间表示(Graph-based IR)的新方法。当前主流 JS 引擎模糊测试工具通常使用抽象语法树(AST)或定制的字节码级中间语言来表示程序,但这些表示在生成语义有效且富有意义的突变时存在局限,导致难以深入发现引擎内部缺陷。论文的核心贡献在于设计一种图结构 IR,将程序的控制流、数据依赖和类型信息显式建模为图,从而扩展突变空间并指导更智能的突变操作。基于该 IR,作者实现了新的模糊测试框架,能够生成更符合语义约束的测试用例,减少无效输入,提高代码覆盖率和缺陷触发概率。实验在多个主流 JS 引擎(如 V8、JavaScriptCore 等)上验证,结果表明该方法的漏洞发现能力和覆盖率优于现有基于 AST 和自定义 IR 的模糊器。该研究为 JS 引擎安全测试提供了新思路,尤其适用于需要深度类型推理和复杂对象操作的场景。适合浏览器引擎开发者、安全研究员及模糊测试工具设计者阅读。

💡 推荐理由: JavaScript 引擎是现代浏览器和运行时安全的核心,模糊测试是发现其漏洞的主要手段。该研究通过改进程序表示,直接提升突变质量,有助于发现更隐蔽的引擎缺陷,对蓝队提升 Web 端安全防御能力具有参考价值。

🎯 建议动作: 研究跟进

排序因子: 来自网络安全顶级会议 (+8) | 命中热门研究主题 (+2) | Community 数据源 (+1) | LLM 评分加成 (+0.6)
👥 作者: Suyue Guo, Stijn Pletinckx, Tianle Yu, Yigitcan Kaya, Saad Ullah, Wenbo Guo, Christopher Kruegel, Giovanni Vigna

该论文提出 PDFuzzer,一种面向 PDF 阅读器中 JavaScript 引擎的新型模糊测试工具。现有 PDF 模糊测试器(如 TypeOracle、Favocado、Cooper)主要依赖简单测试用例,仅涉及单个 API 调用,导致代码覆盖率有限,容易遗漏需要多个 API 调用按特定顺序组合才能触发的漏洞。PDFuzzer 的核心思路是利用大语言模型(LLM)从 JavaScript API 手册与执行轨迹中提取规范,自动构建上下文无关文法并推断 API 调用之间的关系,再借助约束求解器生成具体且语义正确的 API 调用序列,从而驱动模糊测试。实验在 Adobe Acrobat Reader、Foxit PDF Reader 和 PDF-XChange Editor 三款主流 PDF 阅读器上进行,与现有最先进的 PDF 模糊器和基于 LLM 的模糊器(Fuzz4All、naive LLM)对比,覆盖率最高提升 48%,并发现 31 个零日漏洞,影响从信息泄露到任意代码执行。消融实验验证了各组件(尤其 LLM)的必要性,LLM 在流水线各阶段的准确率达到 93-98%。所有漏洞均已通过协调披露流程上报厂商并获致谢赏金。该研究证明 LLM 能够自动理解复杂 API 规范并指导模糊测试,显著提升对真实世界 PDF 引擎的漏洞发现效率,为后续智能模糊测试研究提供了新思路。

💡 推荐理由: 利用 LLM 自动生成复杂 API 调用序列的模糊测试思路显著提升 PDF 引擎覆盖率并发现真实零日漏洞,对软件安全测试具有重要参考价值。

🎯 建议动作: 研究跟进

排序因子: 来自 arXiv 其他板块 (+2) | 命中热门研究主题 (+2) | Community 数据源 (+1) | LLM 评分加成 (+0.5)