論文の概要: What Happens When We Fuzz? Investigating OSS-Fuzz Bug History
- arxiv url: http://arxiv.org/abs/2305.11433v1
- Date: Fri, 19 May 2023 05:15:36 GMT
- ステータス: 処理完了
- システム内更新日: 2023-10-24 08:24:30.712641
- Title: What Happens When We Fuzz? Investigating OSS-Fuzz Bug History
- Title(参考訳): ファズしたらどうなる?
OSS-Fuzzバグ履歴の調査
- Authors: Brandon Keller, Andrew Meneely, Benjamin Meyers
- Abstract要約: 我々は2022年3月12日までにOSS-Fuzzが公表した44,102件の問題を分析した。
コードを含むバグの発生時期を推定するために,バグ貢献のコミットを特定し,検出から修正までのタイムラインを測定した。
- 参考スコア(独自算出の注目度): 0.9772968596463595
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: BACKGROUND: Software engineers must be vigilant in preventing and correcting
vulnerabilities and other critical bugs. In servicing this need, numerous tools
and techniques have been developed to assist developers. Fuzzers, by
autonomously generating inputs to test programs, promise to save time by
detecting memory corruption, input handling, exception cases, and other issues.
AIMS: The goal of this work is to empower developers to prioritize their
quality assurance by analyzing the history of bugs generated by OSS-Fuzz.
Specifically, we examined what has happened when a project adopts fuzzing as a
quality assurance practice by measuring bug lifespans, learning opportunities,
and bug types.
METHOD: We analyzed 44,102 reported issues made public by OSS-Fuzz prior to
March 12, 2022. We traced the Git commit ranges reported by repeated fuzz
testing to the source code repositories to identify how long fuzzing bugs
remained in the system, who fixes these bugs, and what types of problems
fuzzers historically have found. We identified the bug-contributing commits to
estimate when the bug containing code was introduced, and measure the timeline
from introduction to detection to fix.
RESULTS: We found that bugs detected in OSS-Fuzz have a median lifespan of
324 days, but that bugs, once detected, only remain unaddressed for a median of
2 days. Further, we found that of the 8,099 issues for which a source
committing author can be identified, less than half (45.9%) of issues were
fixed by the same author that introduced the bug.
CONCLUSIONS: The results show that fuzzing can be used to makes a positive
impact on a project that takes advantage in terms of their ability to address
bugs in a time frame conducive to fixing mistakes prior to a product release.
- Abstract(参考訳): 背景: ソフトウェアエンジニアは、脆弱性やその他の重大なバグの予防と修正に警戒しなければならない。
このニーズを満たすために、多くのツールと技術が開発されている。
Fuzzersは、テストプログラムへのインプットを自律的に生成することによって、メモリの破損、入力ハンドリング、例外ケース、その他の問題を検出することで、時間の節約を約束する。
AIMS: この作業の目標は、OSS-Fuzzが生成したバグ履歴を分析して、開発者が品質保証を優先できるようにすることです。
具体的には,バグの寿命,学習機会,バグタイプを測定することによって,ファジィングを品質保証プラクティスとして採用した場合に何が起こったかを検討した。
方法:2022年3月12日までにOSS-Fuzzが公表した44,102件の問題を解析した。
繰り返しfuzzテストによって報告されたgitコミット範囲を、ソースコードリポジトリにトレースして、システム内にどれくらいのバグが残っているか、バグを修正した人、そして、fuzzersがこれまで見つけてきた問題の種類を特定しました。
コードを含むバグの発生時期を推定するために,バグ貢献のコミットを特定し,検出から修正までのタイムラインを測定した。
結果: oss-fuzz で検出されたバグは平均寿命が324日であったが,一度検出されたバグは,平均寿命が2日であった。
さらに、ソースコミットの著者が特定できる8,099件のうち、バグを導入した同じ著者によって、問題の半数以下(45.9%)が修正されていることがわかった。
結論: 結果から、ファジングは、製品のリリース前にミスを修正するための時間枠内のバグに対処する能力というメリットを生かしたプロジェクトに対して、ポジティブな影響を与えることができることが分かる。
関連論文リスト
- DebugBench: Evaluating Debugging Capability of Large Language Models [89.13051256657995]
DebugBench - LLM(Large Language Models)のベンチマーク。
C++、Java、Pythonの4つの主要なバグカテゴリと18のマイナータイプをカバーする。
ゼロショットシナリオで2つの商用モデルと3つのオープンソースモデルを評価する。
論文 参考訳(メタデータ) (2024-01-09T15:46:38Z) - PreciseBugCollector: Extensible, Executable and Precise Bug-fix
Collection [8.79879909193717]
正確な多言語バグ収集手法であるPreciseBugCollectorを紹介する。
外部バグリポジトリでリポジトリをマップしてバグタイプ情報をトレースするバグトラッカと、プロジェクト固有のバグを生成するバグインジェクタの2つの新しいコンポーネントに基づいている。
現在、PreciseBugCollectorは2968のオープンソースプロジェクトから抽出された1057818のバグを含んでいる。
論文 参考訳(メタデータ) (2023-09-12T13:47:44Z) - An Analysis of Bugs In Persistent Memory Application [0.0]
我々は,NVMレベルのハッシュPMアプリケーションをテストするために,オープンソースの自動バグ検出ツール(AGAMOTTO)を評価した。
私たちの忠実な検証ツールは、PMDKライブラリで65の新しいNVMレベルのハッシュバグを発見しました。
本稿では,PM-Aware 探索アルゴリズムを用いたディープQ学習探索アルゴリズムを提案する。
論文 参考訳(メタデータ) (2023-07-19T23:12:01Z) - Large Language Models of Code Fail at Completing Code with Potential
Bugs [30.80172644795715]
リアルタイムコード提案に触発されたバグコード補完問題について検討する。
潜在的なバグの存在は、高性能なCode-LLMの生成性能を著しく低下させる。
論文 参考訳(メタデータ) (2023-06-06T06:35:27Z) - Using Developer Discussions to Guide Fixing Bugs in Software [51.00904399653609]
我々は,タスク実行前に利用可能であり,また自然発生しているバグレポートの議論を,開発者による追加情報の必要性を回避して利用することを提案する。
このような議論から派生したさまざまな自然言語コンテキストがバグ修正に役立ち、オラクルのバグ修正コミットに対応するコミットメッセージの使用よりもパフォーマンスの向上につながることを実証する。
論文 参考訳(メタデータ) (2022-11-11T16:37:33Z) - ADPTriage: Approximate Dynamic Programming for Bug Triage [0.0]
オンラインバグトリアージタスクのためのマルコフ決定プロセス(MDP)モデルを開発した。
私たちはADPTriageと呼ばれるADPベースのバグトリアージソリューションを提供しています。
以上の結果から, 代入精度と固定時間の観点から, ミオピックアプローチよりも有意な改善が見られた。
論文 参考訳(メタデータ) (2022-11-02T04:42:21Z) - DapStep: Deep Assignee Prediction for Stack Trace Error rePresentation [61.99379022383108]
本稿では,バグトリアージ問題を解決するための新しいディープラーニングモデルを提案する。
モデルは、注目された双方向のリカレントニューラルネットワークと畳み込みニューラルネットワークに基づいている。
ランキングの質を向上させるために,バージョン管理システムのアノテーションから追加情報を利用することを提案する。
論文 参考訳(メタデータ) (2022-01-14T00:16:57Z) - Break-It-Fix-It: Unsupervised Learning for Program Repair [90.55497679266442]
我々は2つの重要なアイデアを持つ新しいトレーニング手法であるBreak-It-Fix-It (BIFI)を提案する。
批判者は、実際の悪い入力でフィクスダーの出力をチェックし、トレーニングデータに良い(固定された)出力を追加する。
これらのアイデアに基づいて、よりペア化されたデータを生成するために、ブレーカとフィクスチャを同時に使用しながら、繰り返し更新する。
BIFIは既存のメソッドより優れており、GitHub-Pythonで90.5%、DeepFixで71.7%の修正精度がある。
論文 参考訳(メタデータ) (2021-06-11T20:31:04Z) - Self-Supervised Bug Detection and Repair [27.46717890823656]
本稿では,バグ検出と修復の自己教師型学習手法であるBugLabを紹介する。
BugLabのPython実装では、2374の実際のバグのテストデータセットのベースラインメソッドで最大30%改善されている。
論文 参考訳(メタデータ) (2021-05-26T18:41:05Z) - S3M: Siamese Stack (Trace) Similarity Measure [55.58269472099399]
本稿では、深層学習に基づくスタックトレースの類似性を計算する最初のアプローチであるS3Mを紹介します。
BiLSTMエンコーダと、類似性を計算するための完全接続型分類器をベースとしている。
私たちの実験は、オープンソースデータとプライベートなJetBrainsデータセットの両方において、最先端のアプローチの優位性を示しています。
論文 参考訳(メタデータ) (2021-03-18T21:10:41Z) - D2A: A Dataset Built for AI-Based Vulnerability Detection Methods Using
Differential Analysis [55.15995704119158]
静的解析ツールによって報告されたラベル問題に対する差分解析に基づくアプローチであるD2Aを提案する。
D2Aを使用して大きなラベル付きデータセットを生成し、脆弱性識別のためのモデルをトレーニングします。
論文 参考訳(メタデータ) (2021-02-16T07:46:53Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。