論文の概要: Exploring Security Commits in Python
- arxiv url: http://arxiv.org/abs/2307.11853v1
- Date: Fri, 21 Jul 2023 18:46:45 GMT
- ステータス: 処理完了
- システム内更新日: 2023-10-23 16:53:19.088446
- Title: Exploring Security Commits in Python
- Title(参考訳): pythonのセキュリティコミットの探求
- Authors: Shiyu Sun, Shu Wang, Xinda Wang, Yunlong Xing, Elisa Zhang, Kun Sun
- Abstract要約: Pythonのほとんどのセキュリティ問題は、CVEによってインデックス化されておらず、'silent'セキュリティコミットによってのみ修正される可能性がある。
限られたデータバリエーション、非包括的コードセマンティクス、解釈不能な学習機能のために、隠れたセキュリティコミットを特定することが重要だ。
Pythonの最初のセキュリティコミットデータセットであるPySecDBを構築し、ベースデータセット、パイロットデータセット、拡張データセットを含む3つのサブセットで構成される。
- 参考スコア(独自算出の注目度): 11.533638656389137
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Python has become the most popular programming language as it is friendly to
work with for beginners. However, a recent study has found that most security
issues in Python have not been indexed by CVE and may only be fixed by 'silent'
security commits, which pose a threat to software security and hinder the
security fixes to downstream software. It is critical to identify the hidden
security commits; however, the existing datasets and methods are insufficient
for security commit detection in Python, due to the limited data variety,
non-comprehensive code semantics, and uninterpretable learned features. In this
paper, we construct the first security commit dataset in Python, namely
PySecDB, which consists of three subsets including a base dataset, a pilot
dataset, and an augmented dataset. The base dataset contains the security
commits associated with CVE records provided by MITRE. To increase the variety
of security commits, we build the pilot dataset from GitHub by filtering
keywords within the commit messages. Since not all commits provide commit
messages, we further construct the augmented dataset by understanding the
semantics of code changes. To build the augmented dataset, we propose a new
graph representation named CommitCPG and a multi-attributed graph learning
model named SCOPY to identify the security commit candidates through both
sequential and structural code semantics. The evaluation shows our proposed
algorithms can improve the data collection efficiency by up to 40 percentage
points. After manual verification by three security experts, PySecDB consists
of 1,258 security commits and 2,791 non-security commits. Furthermore, we
conduct an extensive case study on PySecDB and discover four common security
fix patterns that cover over 85% of security commits in Python, providing
insight into secure software maintenance, vulnerability detection, and
automated program repair.
- Abstract(参考訳): Pythonは初心者向けの開発に親しみやすいため、最も人気のあるプログラミング言語となっている。
しかし、最近の研究によると、Pythonのほとんどのセキュリティ問題はCVEによってインデックス化されておらず、ソフトウェアセキュリティへの脅威となり、下流ソフトウェアに対するセキュリティ修正を妨げる'サイレント'セキュリティコミットによってのみ修正される可能性がある。
隠れたセキュリティコミットを特定することは重要であるが、Pythonのセキュリティコミット検出には、制限されたデータバリアント、非包括的コードセマンティクス、解釈不能な学習機能のために、既存のデータセットとメソッドが不十分である。
本稿では,pythonにおける最初のセキュリティコミットデータセット,すなわち,ベースデータセット,パイロットデータセット,拡張データセットを含む3つのサブセットからなるpysecdbを構築する。
ベースデータセットには、MITREが提供するCVEレコードに関連するセキュリティコミットが含まれている。
さまざまなセキュリティコミットを増やすために、コミットメッセージ内のキーワードをフィルタリングすることで、githubからパイロットデータセットを構築します。
すべてのコミットがコミットメッセージを提供するわけではないので、コード変更の意味を理解することで拡張データセットをさらに構築します。
拡張データセットを構築するために,commitcpgと呼ばれる新しいグラフ表現とscopyと呼ばれる多属性グラフ学習モデルを提案し,シーケンシャルおよび構造的コードセマンティクスを用いてセキュリティコミット候補を識別する。
評価の結果,提案アルゴリズムは最大40ポイントまでデータ収集効率を向上させることができることがわかった。
3人のセキュリティ専門家による手動検証の後、PySecDBは1,258のセキュリティコミットと2,791の非セキュリティコミットで構成される。
さらに、PySecDBに関する広範なケーススタディを実施し、Pythonの85%以上のセキュリティコミットをカバーする4つの一般的なセキュリティ修正パターンを発見し、セキュアなソフトウェアメンテナンス、脆弱性検出、自動プログラム修正に関する洞察を提供する。
関連論文リスト
- Python Fuzzing for Trustworthy Machine Learning Frameworks [0.0]
我々はSydr-Fuzzを用いたPythonプロジェクトの動的解析パイプラインを提案する。
私たちのパイプラインにはファジング、コーパスの最小化、クラッシュトリアージ、カバレッジ収集が含まれています。
機械学習フレームワークの最も脆弱な部分を特定するために、攻撃の潜在的な表面を分析し、PyTorchのファズターゲットとh5pyなどの関連プロジェクトを開発する。
論文 参考訳(メタデータ) (2024-03-19T13:41:11Z) - HasTEE+ : Confidential Cloud Computing and Analytics with Haskell [50.994023665559496]
信頼性コンピューティングは、Trusted Execution Environments(TEEs)と呼ばれる特別なハードウェア隔離ユニットを使用して、コテナントクラウドデプロイメントにおける機密コードとデータの保護を可能にする。
低レベルのC/C++ベースのツールチェーンを提供するTEEは、固有のメモリ安全性の脆弱性の影響を受けやすく、明示的で暗黙的な情報フローのリークを監視するための言語構造が欠如している。
私たちは、Haskellに埋め込まれたドメイン固有言語(cla)であるHasTEE+を使って、上記の問題に対処します。
論文 参考訳(メタデータ) (2024-01-17T00:56:23Z) - BinGo: Identifying Security Patches in Binary Code with Graph
Representation Learning [19.22004583230725]
バイナリコードに対する新しいセキュリティパッチ検出システムであるBinGoを提案する。
BinGoは、パッチデータ前処理、グラフ抽出、埋め込み生成、グラフ表現学習の4つのフェーズで構成されている。
実験の結果、BinGoは隣り合う2つのバイナリコードのセキュリティパッチを80.77%の精度で識別できることがわかった。
論文 参考訳(メタデータ) (2023-12-13T06:35:39Z) - Multi-Granularity Detector for Vulnerability Fixes [13.653249890867222]
脆弱性修正のためのMiDa(Multi-Granularity Detector for Vulnerability Fixes)を提案する。
MiDasはコミットレベル、ファイルレベル、ハンクレベル、ラインレベルに対応して、コード変更の粒度ごとに異なるニューラルネットワークを構築する。
MiDasは、現在の最先端のベースラインをAUCで4.9%、JavaとPythonベースのデータセットで13.7%上回っている。
論文 参考訳(メタデータ) (2023-05-23T10:06:28Z) - CodeLMSec Benchmark: Systematically Evaluating and Finding Security
Vulnerabilities in Black-Box Code Language Models [58.27254444280376]
自動コード生成のための大規模言語モデル(LLM)は、いくつかのプログラミングタスクにおいてブレークスルーを達成した。
これらのモデルのトレーニングデータは、通常、インターネット(例えばオープンソースのリポジトリから)から収集され、障害やセキュリティ上の脆弱性を含む可能性がある。
この不衛生なトレーニングデータは、言語モデルにこれらの脆弱性を学習させ、コード生成手順中にそれを伝播させる可能性がある。
論文 参考訳(メタデータ) (2023-02-08T11:54:07Z) - Precise Zero-Shot Dense Retrieval without Relevance Labels [60.457378374671656]
仮説文書埋め込み(英: hypothetical Document Embeddings, HyDE)は、ゼロショット高密度検索システムである。
我々は,HyDEが最先端の非教師付き高密度検索器であるContrieverを著しく上回っていることを示す。
論文 参考訳(メタデータ) (2022-12-20T18:09:52Z) - Pre-trained Encoders in Self-Supervised Learning Improve Secure and
Privacy-preserving Supervised Learning [63.45532264721498]
自己教師付き学習は、ラベルのないデータを使ってエンコーダを事前訓練するための新しいテクニックである。
我々は、事前訓練されたエンコーダがセキュア・プライバシ保護型学習アルゴリズムの限界に対処できるかどうかを理解するための、最初の体系的、原則的な測定研究を行う。
論文 参考訳(メタデータ) (2022-12-06T21:35:35Z) - VUDENC: Vulnerability Detection with Deep Learning on a Natural Codebase
for Python [8.810543294798485]
VUDENCはディープラーニングベースの脆弱性検出ツールである。
大規模で現実世界のPythonコーパスから脆弱性のあるコードの特徴を学ぶ。
VUDENCのリコール率は78%-87%、精度82%-96%、F1スコア80%-90%である。
論文 参考訳(メタデータ) (2022-01-20T20:29:22Z) - Automated Mapping of Vulnerability Advisories onto their Fix Commits in
Open Source Repositories [7.629717457706326]
実践経験と機械学習(ML)を組み合わせたアプローチを提案する。
アドバイザリから脆弱性に関する鍵情報を含むアドバイザリレコードを抽出する。
影響を受けるプロジェクトのソースコードリポジトリから、候補となる修正コミットのサブセットを取得する。
論文 参考訳(メタデータ) (2021-03-24T17:50:35Z) - D2A: A Dataset Built for AI-Based Vulnerability Detection Methods Using
Differential Analysis [55.15995704119158]
静的解析ツールによって報告されたラベル問題に対する差分解析に基づくアプローチであるD2Aを提案する。
D2Aを使用して大きなラベル付きデータセットを生成し、脆弱性識別のためのモデルをトレーニングします。
論文 参考訳(メタデータ) (2021-02-16T07:46:53Z) - SafePILCO: a software tool for safe and data-efficient policy synthesis [67.17251247987187]
SafePILCOは、強化学習による安全でデータ効率のよいポリシー検索のためのソフトウェアツールである。
これは、Pythonで書かれた既知のPILCOアルゴリズムを拡張し、安全な学習をサポートする。
論文 参考訳(メタデータ) (2020-08-07T17:17:30Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。