VuLASTE:结合抽象语法树嵌入的长序列模型用于漏洞检测
软件工程
2023-02-07 v1 人工智能
摘要
在本文中,我们构建了一个名为 VuLASTE 的模型,该模型将漏洞检测视为一种特殊的文本分类任务。为解决词汇爆炸问题,VuLASTE 使用了源自自然语言处理的字节级 BPE 算法。在 VuLASTE 中,添加了一种新的 AST 路径嵌入来表示源代码嵌套信息。我们还使用了 Longformer 中的全局与膨胀窗口注意力组合,从源代码中提取长序列语义。为解决漏洞检测数据集中常见的数据不平衡问题,采用焦点损失(focal loss)作为损失函数,使模型在训练期间专注于分类不佳的样本。为测试模型在真实世界源代码上的性能,我们从 Github 安全公告数据库构建了一个跨语言、多仓库的漏洞数据集。在该数据集上,VuLASTE 在 Top 50、Top 100、Top 200、Top 500 命中数上分别达到了 29、51、86、228,高于当前最先进的研究。
引用
@article{arxiv.2302.02345,
title = {VuLASTE: Long Sequence Model with Abstract Syntax Tree Embedding for vulnerability Detection},
author = {Botong Zhu and Huobin Tan},
journal= {arXiv preprint arXiv:2302.02345},
year = {2023}
}