基于JavaScript代码分析的漏洞扫描器增强框架
CSTR:
作者:
作者单位:

作者简介:

通讯作者:

中图分类号:

TP311

基金项目:

国家自然科学基金(62372236, 62402223); 国家资助博士后研究人员计划(GZB20240982); 江苏省青蓝工程; 江苏省卓越博士后计划


Vulnerability Scanner Enhancement Framework Based on JavaScript Code Analysis
Author:
Affiliation:

Fund Project:

  • 摘要
  • |
  • 图/表
  • |
  • 访问统计
  • |
  • 参考文献
  • |
  • 相似文献
  • |
  • 引证文献
  • |
  • 资源附件
  • |
  • 文章评论
    摘要:

    黑盒漏洞扫描器是用于Web应用漏洞检测的重要辅助工具, 能够在Web应用正式上线前有效识别潜在的安全威胁, 从而提升Web应用的整体安全性. 当前大多数黑盒扫描器主要通过模拟用户操作和正则匹配来收集攻击面. 然而, 模拟用户操作容易被输入验证机制拦截, 且难以处理复杂的事件操作, 而正则匹配方法无法有效处理动态内容. 这导致扫描器难以有效处理JavaScript代码中的隐藏攻击面和动态生成的攻击面, 使其在部分Web应用中漏洞检测效果不佳. 为解决上述问题, 提出一种基于JavaScript代码分析的漏洞扫描器增强框架JSEScan. 该框架结合静态与动态代码分析技术, 绕过表单验证和事件触发的限制, 通过提取JavaScript代码中攻击面的特征, 实现JavaScript代码中攻击面的挖掘, 并且攻击面将被同步至多种扫描器, 从而增强其漏洞检测能力. 实验结果表明, JSEScan能将单个扫描器的代码覆盖量提高81.02%–242.15%, 并且相比于多扫描器同时工作的情况, 额外发现239个安全漏洞, 具备更强的攻击面收集能力和漏洞检测能力.

    Abstract:

    The black-box vulnerability scanner is an essential tool for Web application vulnerability detection, capable of identifying potential security threats effectively before a Web application is launched, thus enhancing the overall security of the application. However, most current black-box scanners primarily collect the attack surface through user operation simulation and regular expression matching. The simulation of user operations is vulnerable to interception by input validation mechanisms and struggles with handling complex event operations, while regular expression matching is ineffective in processing dynamic content. As a result, the scanner cannot effectively address hidden attack surfaces within JavaScript code or dynamically generated attack surfaces, leading to suboptimal vulnerability detection in some Web applications. To resolve these issues, this study proposes a JavaScript Exposure Scanner (JSEScan), a vulnerability scanner enhancement framework based on JavaScript code analysis. The framework integrates static and dynamic code analysis techniques, bypassing form validation and event-triggering restrictions. By extracting attack surface features from JavaScript code, JSEScan identifies attack surfaces and synchronizes them across multiple scanners, enhancing their vulnerability detection capabilities. The experimental results demonstrate that JSEScan increases coverage by 81.02% to 242.15% compared to using a single scanner and uncovers an additional 239 security vulnerabilities when compared to multiple scanners working concurrently, showing superior attack surface collection and vulnerability detection capabilities.

    参考文献
    相似文献
    引证文献
引用本文

况博裕,朱焱,杨善权,苏铓,周永彬,付安民.基于JavaScript代码分析的漏洞扫描器增强框架.软件学报,,():1-19

复制
相关视频

分享
文章指标
  • 点击次数:
  • 下载次数:
  • HTML阅读次数:
  • 引用次数:
历史
  • 收稿日期:2025-02-24
  • 最后修改日期:2025-04-21
  • 录用日期:
  • 在线发布日期: 2025-09-28
  • 出版日期:
文章二维码
您是第位访问者
版权所有:中国科学院软件研究所 京ICP备05046678号-3
地址:北京市海淀区中关村南四街4号,邮政编码:100190
电话:010-62562563 传真:010-62562533 Email:jos@iscas.ac.cn
技术支持:北京勤云科技发展有限公司

京公网安备 11040202500063号