The Comparison of Word Embedding Techniques in RNNs for Vulnerability Detection

The Comparison of Word Embedding Techniques in RNNs for Vulnerability Detection
复制标题

DOI:
10.5220/0010232301090120
复制
发表时间:
2021
期刊:
--
影响因子:
--
通讯作者:
H. N. Nguyen;Songpon Teerakanok;A. Inomata;T. Uehara
H. N. Nguyen;Songpon Teerakanok;A. Inomata;T. Uehara
中科院分区:
其他
文献类型:
--
作者:
H. N. Nguyen;Songpon Teerakanok;A. Inomata;T. Uehara

文献摘要

被引文献

相似文献

许多研究将深度学习和自然语言处理(NLP)技术结合在安全系统中,以执行漏洞检测、漏洞预测或分类等任务。这些工作中的大多数依赖于NLP嵌入方法来生成深度学习模型的输入向量。然而,有许多现有的嵌入方法将软件文本文件编码成向量,并且神经网络的结构是巨大的和启发式的。这导致了一个挑战,研究人员选择合适的嵌入技术和模型结构的组合来训练的漏洞检测分类器。对于这项任务,我们提出了一个系统来研究四种流行的单词嵌入技术与四种不同的递归神经网络(RNN)的结合使用,包括双向RNN(BRNN)和单向RNN。我们使用用C代码编写的两种类型的脆弱函数数据集来训练和评估模型。我们的研究结果表明,与其他组合相比,FastText嵌入技术结合BRNN在真实世界中产生了最有效的检测率,而不是在人工生成的数据集上。需要在其他数据集上进行进一步的实验来证实这一结果。
Many studies have combined Deep Learning and Natural Language Processing (NLP) techniques in security systems in performing tasks such as bug detection, vulnerability prediction, or classification. Most of these works relied on NLP embedding methods to generate input vectors for the deep learning models. However, there are many existing embedding methods to encode software text files into vectors, and the structures of neural networks are immense and heuristic. This leads to a challenge for the researcher to choose the appropriate combination of embedding techniques and the model structure for training the vulnerability detection classifiers. For this task, we propose a system to investigate the use of four popular word embedding techniques combined with four different recurrent neural networks (RNNs), including both bidirectional RNNs (BRNNs) and unidirectional RNNs. We trained and evaluated the models by using two types of vulnerable function datasets written in C code. Our results showed that the FastText embedding technique combined with BRNNs produced the most efficient detection rate, compared to other combinations, on a real-world but not on an artificially-produced dataset. Further experiments on other datasets are necessary to confirm this result.