Skip to main content
QUICK REVIEW

[論文レビュー] A Survey on Automated Software Vulnerability Detection Using Machine Learning and Deep Learning

Nima Shiri Harzevili, Alvine Boaye Belle|arXiv (Cornell University)|Jun 20, 2023
Software Engineering Research被引用数 9
ひとこと要約

本論文は、2011年から2022年までのML/DLベースのソフトウェア脆弱性検出に関する体系的調査を行い、37の掲載媒体にまたがる67件の研究を分析し、データセット、表現、モデル、脆弱性タイプ、解釈性を網羅し、課題と今後の方向性を概説する。

ABSTRACT

Software vulnerability detection is critical in software security because it identifies potential bugs in software systems, enabling immediate remediation and mitigation measures to be implemented before they may be exploited. Automatic vulnerability identification is important because it can evaluate large codebases more efficiently than manual code auditing. Many Machine Learning (ML) and Deep Learning (DL) based models for detecting vulnerabilities in source code have been presented in recent years. However, a survey that summarises, classifies, and analyses the application of ML/DL models for vulnerability detection is missing. It may be difficult to discover gaps in existing research and potential for future improvement without a comprehensive survey. This could result in essential areas of research being overlooked or under-represented, leading to a skewed understanding of the state of the art in vulnerability detection. This work address that gap by presenting a systematic survey to characterize various features of ML/DL-based source code level software vulnerability detection approaches via five primary research questions (RQs). Specifically, our RQ1 examines the trend of publications that leverage ML/DL for vulnerability detection, including the evolution of research and the distribution of publication venues. RQ2 describes vulnerability datasets used by existing ML/DL-based models, including their sources, types, and representations, as well as analyses of the embedding techniques used by these approaches. RQ3 explores the model architectures and design assumptions of ML/DL-based vulnerability detection approaches. RQ4 summarises the type and frequency of vulnerabilities that are covered by existing studies. Lastly, RQ5 presents a list of current challenges to be researched and an outline of a potential research roadmap that highlights crucial opportunities for future work.

研究の動機と目的

  • ML/DLベースの脆弱性検出研究と刊行媒体の変遷と傾向を評価する。
  • ML/DL脆弱性検出に用いられるデータセットを特徴づける。出典、種類、表現、埋め込みを含む。
  • 脆弱性検出に用いられるML/DLモデルのアーキテクチャと設計選択を分類する。
  • 対象とする脆弱性の範囲を特定し、主要な課題と今後の研究方向性を強調する。
  • 再現性を支援し、調査結果の拡張を促進するための再現パッケージを提供する。

提案手法

  • 2011–2022年のML/DLベースの脆弱性検出研究の体系的文献レビュー。
  • ScienceDirect、IEEE Xplore、ACM DL、およびGoogle Scholar からのデータ収集を、ターゲット検索語を用いて実施。
  • ソースコードに対するML/DLを用いた脆弱性検出に焦点を当てることを Inclusion criteria とする。
  • データセット、表現、埋め込み、モデル、脆弱性タイプ、解釈性に関連するデータの抽出と統合。
  • アーキテクチャ別にモデルを分類し、手法選択戦略を分析。
  • 再現性のための再現資源(Colabノートブック)の提供。

実験結果

リサーチクエスチョン

  • RQ1RQ1: ML/DLモデルを用いた脆弱性検出研究の傾向は何か。時系列トレンドと掲載媒体の分布を含む。
  • RQ2RQ2: ソフトウェア脆弱性検出で用いられる実験データセットの特徴は何か(データソース、種類、表現、埋め込み)?
  • RQ3RQ3: 脆弱性検出に使用されるML/DLモデルとアーキテクチャは何か?
  • RQ4RQ4: これらの研究で最も頻繁に対象とされる脆弱性(タイプ)は何か?
  • RQ5RQ5: ML/DLを用いたソフトウェア脆弱性検知の課題と今後の方向性は何か?

主な発見

  • 2011年から2022年にかけて、37のジャーナル/会議にわたるML/DLベースの脆弱性検出に関する67件の関連研究を分析した。
  • データセット、データ処理、表現、埋め込み、モデルアーキテクチャ、解釈性、脆弱性タイプの包括的な分析を提供する。
  • 脆弱性検出に使用されるML/DLモデルをアーキテクチャ別に分類し、モデル選択戦略を分析する。
  • ML/DLベースの脆弱性検出における明確な技術的課題を論じ、今後の研究方向を概説する。
  • 追跡研究を促進するため、結果と分析データを再現パッケージとして共有する。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。