論文の概要: A Code Knowledge Graph-Enhanced System for LLM-Based Fuzz Driver Generation
- arxiv url: http://arxiv.org/abs/2411.11532v1
- Date: Mon, 18 Nov 2024 12:41:16 GMT
- ステータス: 翻訳完了
- システム内更新日: 2024-11-19 14:35:43.608518
- Title: A Code Knowledge Graph-Enhanced System for LLM-Based Fuzz Driver Generation
- Title(参考訳): LLMに基づくファズドライバ生成のためのコード知識グラフ強化システム
- Authors: Hanxiang Xu, Wei Ma, Ting Zhou, Yanjie Zhao, Kai Chen, Qiang Hu, Yang Liu, Haoyu Wang,
- Abstract要約: ファジドライバ生成プロセスを自動化するために,コード知識グラフをインテリジェントエージェントと統合する新しいシステムであるCodeGraphGPTを提案する。
ファズドライバ生成をコード生成タスクとしてフレーミングすることで、CodeGraphGPTはプログラム分析を活用して、コードリポジトリの知識グラフを構築する。
我々は8つのオープンソースプロジェクトでCodeGraphGPTを評価し、最先端の手法と比較してコードカバレッジが平均8.73%向上した。
- 参考スコア(独自算出の注目度): 29.490817477791357
- License:
- Abstract: The rapid development of large language models (LLMs) with advanced programming capabilities has paved the way for innovative approaches in software testing. Fuzz testing, a cornerstone for improving software reliability and detecting vulnerabilities, often relies on manually written fuzz drivers, limiting scalability and efficiency. To address this challenge, we propose CodeGraphGPT, a novel system that integrates code knowledge graphs with an LLM-powered intelligent agent to automate the fuzz driver generation process. By framing fuzz driver creation as a code generation task, CodeGraphGPT leverages program analysis to construct a knowledge graph of code repositories, where nodes represent code entities, such as functions or files, and edges capture their relationships. This enables the system to generate tailored fuzz drivers and input seeds, resolve compilation errors, and analyze crash reports, all while adapting to specific API usage scenarios. Additionally, querying the knowledge graph helps identify precise testing targets and contextualize the purpose of each fuzz driver within the fuzzing loop. We evaluated CodeGraphGPT on eight open-source software projects, achieving an average improvement of 8.73\% in code coverage compared to state-of-the-art methods. Moreover, it reduced the manual workload in crash case analysis by 84.4\% and identified 11 real-world bugs, including nine previously unreported ones. This work highlights how integrating LLMs with code knowledge graphs enhances fuzz driver generation, offering an efficient solution for vulnerability detection and software quality improvement.
- Abstract(参考訳): 高度なプログラミング能力を持つ大規模言語モデル(LLM)の急速な開発は、ソフトウェアテストにおける革新的なアプローチの道を開いた。
ソフトウェア信頼性を改善し、脆弱性を検出するための基盤であるファズテストは、しばしば手書きのファズドライバに依存し、スケーラビリティと効率を制限している。
この課題に対処するために,コードナレッジグラフとLCMによるインテリジェントエージェントを統合し,ファジドライバ生成プロセスを自動化する新しいシステムであるCodeGraphGPTを提案する。
ファズドライバの作成をコード生成タスクとしてフレーミングすることで、CodeGraphGPTはプログラム分析を活用してコードリポジトリの知識グラフを構築する。
これにより、特定のAPI使用シナリオに適応しながら、調整済みのファズドライバと入力シードを生成し、コンパイルエラーを解決し、クラッシュレポートを分析することが可能になる。
さらに、知識グラフのクエリは、正確なテストターゲットを特定し、ファジィループ内の各ファジィドライバの目的をコンテキスト化するのに役立ちます。
我々は8つのオープンソースプロジェクトでCodeGraphGPTを評価し、最先端の手法と比較してコードカバレッジが平均8.73倍改善した。
さらに、クラッシュケース分析における手動のワークロードを84.4\%削減し、以前に報告されていない9つのバグを含む11の現実世界のバグを特定した。
この研究は、LLMとコードナレッジグラフの統合によってファズドライバの生成が向上し、脆弱性検出とソフトウェア品質改善のための効率的なソリューションを提供する方法を強調している。
関連論文リスト
- KGym: A Platform and Dataset to Benchmark Large Language Models on Linux Kernel Crash Resolution [59.20933707301566]
大規模言語モデル(LLM)は、ますます現実的なソフトウェア工学(SE)タスクにおいて一貫して改善されている。
現実世界のソフトウェアスタックでは、Linuxカーネルのような基本的なシステムソフトウェアの開発にSEの取り組みが費やされています。
このような大規模システムレベルのソフトウェアを開発する際にMLモデルが有用かどうかを評価するため、kGymとkBenchを紹介する。
論文 参考訳(メタデータ) (2024-07-02T21:44:22Z) - Agent-Driven Automatic Software Improvement [55.2480439325792]
本提案は,Large Language Models (LLMs) を利用したエージェントの展開に着目して,革新的なソリューションの探求を目的とする。
継続的学習と適応を可能にするエージェントの反復的性質は、コード生成における一般的な課題を克服するのに役立ちます。
我々は,これらのシステムにおける反復的なフィードバックを用いて,エージェントの基盤となるLLMをさらに微調整し,自動化されたソフトウェア改善のタスクに整合性を持たせることを目指している。
論文 参考訳(メタデータ) (2024-06-24T15:45:22Z) - Chain of Targeted Verification Questions to Improve the Reliability of Code Generated by LLMs [10.510325069289324]
LLMが生成するコードの信頼性向上を目的とした自己補充手法を提案する。
当社のアプローチは,初期コード内の潜在的なバグを特定するために,対象とする検証質問(VQ)に基づいています。
本手法は,LLMをターゲットとするVQと初期コードで再プロンプトすることで,潜在的なバグの修復を試みる。
論文 参考訳(メタデータ) (2024-05-22T19:02:50Z) - Mining Action Rules for Defect Reduction Planning [14.40839500239476]
ブラックボックスモデルを使わずに欠陥低減計画を生成するための,非実効的アクティオンルールマイニング手法であるCounterACTを導入する。
我々は,9つのソフトウェアプロジェクトにおいて,CounterACTの有効性を,元のアクションルールマイニングアルゴリズムと6つの確立された欠陥低減手法と比較した。
その結果、競合するアプローチと比較して、CounterACTの説明可能なプランはリリースレベルで高いオーバーラップスコアを得ることができた。
論文 参考訳(メタデータ) (2024-05-22T15:31:09Z) - DeepCode AI Fix: Fixing Security Vulnerabilities with Large Language
Models [3.1690235522182104]
大規模言語モデル(LLM)は、様々なプログラミングタスクの解決にますます使われている。
長距離コード関係を学習するモデルを必要とするため,タスクは困難であることを示す。
本稿では,LLMのクエリと微調整のための新しいアプローチにより,これらの課題に対処する手法を提案する。
論文 参考訳(メタデータ) (2024-02-19T18:35:40Z) - How Effective Are They? Exploring Large Language Model Based Fuzz Driver Generation [31.77886516971502]
本研究は,LLMを用いてファズドライバを効果的に生成する上で重要な課題を対象とした,最初の詳細な研究である。
我々の研究は、736,430個のファジィドライバの評価を行い、トークンコストは0.85億ドル(8000ドル以上)だった。
我々の洞察はOSS-Fuzz-Genプロジェクトを改善するために実装され、業界におけるファズドライバの実践的生成を促進しました。
論文 参考訳(メタデータ) (2023-07-24T01:49:05Z) - ALGO: Synthesizing Algorithmic Programs with LLM-Generated Oracle
Verifiers [60.6418431624873]
大きな言語モデル(LLM)は、機能記述からコードを実装するのに優れているが、アルゴリズムの問題に悩まされている。
我々は,アルゴリズムプログラムを LLM 生成 Oracle で合成するフレームワーク ALGO を提案し,その生成をガイドし,その正確性を検証する。
実験の結果,ALGOを装着すると,Codexモデルよりも8倍,CodeTよりも2.6倍の1サブミッションパス率が得られることがわかった。
論文 参考訳(メタデータ) (2023-05-24T00:10:15Z) - Fault-Aware Neural Code Rankers [64.41888054066861]
サンプルプログラムの正しさを予測できる故障認識型ニューラルネットワークローダを提案する。
我々のフォールト・アウェア・ローダは、様々なコード生成モデルのpass@1精度を大幅に向上させることができる。
論文 参考訳(メタデータ) (2022-06-04T22:01:05Z) - GraphEye: A Novel Solution for Detecting Vulnerable Functions Based on
Graph Attention Network [8.420666984519826]
我々は、C/C++コードの関数に脆弱性があるかどうかを特定するために、GraphEyeという新しいソリューションを提案する。
VecCPGは、コードプロパティグラフのベクトル化であり、対応するソースコードの重要な構文と意味的特徴を特徴付けるために提案されている。
GcGATはグラフ注意グラフに基づくディープラーニングモデルであり,グラフ分類問題の解法を提案する。
論文 参考訳(メタデータ) (2022-02-05T07:03:15Z) - VELVET: a noVel Ensemble Learning approach to automatically locate
VulnErable sTatements [62.93814803258067]
本稿では,ソースコード中の脆弱な文を見つけるための新しいアンサンブル学習手法であるVELVETを提案する。
我々のモデルは、グラフベースとシーケンスベースニューラルネットワークを組み合わせて、プログラムグラフの局所的およびグローバル的コンテキストを捕捉する。
VELVETは、合成データと実世界のデータに対して、それぞれ99.6%と43.6%の精度を達成している。
論文 参考訳(メタデータ) (2021-12-20T22:45:27Z) - Software Vulnerability Detection via Deep Learning over Disaggregated
Code Graph Representation [57.92972327649165]
この研究は、コードコーパスから安全でないパターンを自動的に学習するためのディープラーニングアプローチを探求する。
コードには解析を伴うグラフ構造が自然に認められるため,プログラムの意味的文脈と構造的規則性の両方を利用する新しいグラフニューラルネットワーク(GNN)を開発する。
論文 参考訳(メタデータ) (2021-09-07T21:24:36Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。