中文

OBsmith:基于大语言模型的JavaScript混淆器测试框架

统计方法学 2025-10-14 v1

摘要

JavaScript混淆器广泛部署于知识产权保护和抵抗逆向工程,但其正确性在性能和韧性方面的关注下被大大低估。现有评估通常衡量对抗去混淆的能力,留下关键问题:混淆器是否保留程序语义。错误的转换可能静默地改变功能、损害可靠性并削弱安全——违背了混淆的本质目的。为此,我们提出OBsmith:系统性测试JavaScript混淆器的新框架,利用大语言模型(LLM)。OBsmith利用LLM生成程序草图——捕捉 diverse language constructs、idioms和边界情况的抽象模板——实例化为可执行程序并在不同配置下进行混淆。除了LLM驱动的草图生成,OBsmith还采用另一来源:从真实程序中自动提取草图。这一提取路径 enables 更有针对性地测试特定项目功能,让开发人员将 domain knowledge 注入 resulting test cases。OBsmith发现了11个此前未知的正确性错误。在相同程序预算下,五个通用最先进的JavaScript模糊测试器(FuzzJIT、Jsfunfuzz、Superion、DIE、Fuzzilli)未能检测到这些问题,凸显了OBsmith对混淆引起的异常行为的互补关注。消除实验表明,除我们通用的迁移关系(MR)外的所有组件至少对一类错误有贡献;负MR结果表明需要混淆器特定的迁移关系。我们的结果也引发关于如何平衡混淆器 preset 和 performance cost 的讨论。我们设想OBsmith是自动化测试和混淆器及其他语义保存工具链质量保证的重要一步。

关键词

引用

@article{arxiv.2510.10065,
  title  = {Calibration of answer probabilities in verbal autopsies: Working Paper},
  author = {Nathan Higgins and James Liley and Eilidh Cowan},
  journal= {arXiv preprint arXiv:2510.10065},
  year   = {2025}
}

备注

26 pages, including supplement