論文の概要: Controlling Large Language Models to Generate Secure and Vulnerable Code
- arxiv url: http://arxiv.org/abs/2302.05319v1
- Date: Fri, 10 Feb 2023 15:28:55 GMT
- ステータス: 処理完了
- システム内更新日: 2023-02-13 15:35:10.922554
- Title: Controlling Large Language Models to Generate Secure and Vulnerable Code
- Title(参考訳): セキュアで脆弱なコードを生成するための大規模言語モデル制御
- Authors: Jingxuan He and Martin Vechev
- Abstract要約: 大規模言語モデル(LM)は、オープンソースプログラムの膨大なコーパスに事前訓練され、プログラムタスクの解決に応用されている。
しかし、LMの基本的な制限は、事前訓練や推論中にセキュリティや脆弱性を認識できないことである。
この作業はコード生成と呼ばれる新しい問題を定式化し、LMがセキュアまたは脆弱なコードを生成するかどうかをユーザが制御できるようにする。
- 参考スコア(独自算出の注目度): 5.33024001730262
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Large language models (LMs) are increasingly pretrained on massive corpora of
open-source programs and applied to solve program synthesis tasks. However, a
fundamental limitation of LMs is their unawareness of security and
vulnerability during pretraining and inference. As a result, LMs produce secure
or vulnerable programs with high uncertainty (e.g., around 60%/40% chances for
GitHub Copilot according to a recent study). This greatly impairs LMs'
usability, especially in security-sensitive scenarios.
To address this limitation, this work formulates a new problem called
controlled code generation, which allows users to input a boolean property into
an LM to control if the LM generates secure or vulnerable code. We propose
svGen, an effective and lightweight learning approach for solving controlled
code generation. svGen leverages property-specific continuous vectors to steer
program generation toward the given property, without altering the weights of
the LM. svGen's training optimizes those continuous vectors by carefully
applying specialized loss terms on different regions of code.
Our extensive evaluation shows that svGen achieves strong control capability
across various software vulnerabilities and LMs of different parameter sizes.
For example, on 9 dangerous vulnerabilities, a state-of-the-art CodeGen LM with
2.7B parameters generates secure programs with a 57% chance. When we use svGen
to control the LM to generate secure (resp., vulnerable) programs, the chance
is significantly increased to 82% (resp., decreased to 35%).
- Abstract(参考訳): 大規模言語モデル(LM)は、オープンソースプログラムの膨大なコーパスに事前訓練され、プログラム合成タスクの解決に応用されている。
しかし、LMの基本的な制限は、事前訓練や推論中にセキュリティや脆弱性を認識できないことである。
その結果、lmsは高い不確実性を持つセキュアまたは脆弱なプログラムを生成する(最近の研究によれば、github copilotの約60%/40%の確率)。
これは特にセキュリティに敏感なシナリオにおいて、lmsのユーザビリティを著しく損なう。
この制限に対処するため、この研究は制御コード生成と呼ばれる新しい問題を定式化し、ユーザはLMにブールプロパティを入力して、LMがセキュアまたは脆弱なコードを生成するかどうかを制御することができる。
制御されたコード生成を解決するための効果的で軽量な学習手法であるsvGenを提案する。
svGenはプロパティ固有の連続ベクトルを利用して、LMの重みを変更することなく、プログラム生成を与えられたプロパティに向けて操る。
svGenのトレーニングは、コードの異なる領域に特別な損失項を慎重に適用することで、これらの連続ベクトルを最適化する。
我々の広範な評価は、svGenが様々なソフトウェア脆弱性や異なるパラメータサイズのLMに対して強力な制御能力を発揮することを示している。
例えば、9つの危険な脆弱性では、2.7Bパラメータを持つ最先端のCodeGen LMが57%の確率でセキュアなプログラムを生成する。
セキュアな(脆弱性のある)プログラムを生成するためにsvGenを使用すると、その確率は82%に向上する(resp., 35%に低下する)。
関連論文リスト
- Software Vulnerability and Functionality Assessment using LLMs [0.8057006406834466]
我々は,Large Language Models (LLMs) がコードレビューに役立つかどうかを検討する。
我々の調査は、良質なレビューに欠かせない2つの課題に焦点を当てている。
論文 参考訳(メタデータ) (2024-03-13T11:29:13Z) - Exploring Safety Generalization Challenges of Large Language Models via Code [126.80573601180411]
本稿では,自然言語入力をコード入力に変換するフレームワークであるCodeAttackを紹介する。
調査によると、CodeAttackは全モデルの80%以上の安全ガードレールを一貫してバイパスしている。
CodeAttackと自然言語の間の大きな分散ギャップは、安全性の一般化を弱める。
論文 参考訳(メタデータ) (2024-03-12T17:55:38Z) - ROSE Doesn't Do That: Boosting the Safety of Instruction-Tuned Large
Language Models with Reverse Prompt Contrastive Decoding [95.49128988683191]
本稿では,既存の命令調整LDMの安全性を高めるための簡易な手法であるROSE(Reverse prompt contrastive decoding)を提案する。
6つの安全性と2つの汎用タスクの実験から、ROSEは5種類の命令調整LDMに対して、一貫した、重要な安全性向上(+13.8%の安全性スコア)をもたらすだけでなく、LLMの汎用能力にも恩恵をもたらすことが示されている。
論文 参考訳(メタデータ) (2024-02-19T06:58:42Z) - Instruction Tuning for Secure Code Generation [6.602118206533142]
既存の命令チューニングスキームは、生成されたコードのセキュリティという重要な側面を見落としている。
SafeCoderは、多種多様な高品質データセットを使用して、セキュリティ中心の微調整を実行する。
ユーティリティを保ちながら、セキュリティを大幅に改善できます(約30%)。
論文 参考訳(メタデータ) (2024-02-14T15:47:46Z) - NoFunEval: Funny How Code LMs Falter on Requirements Beyond Functional
Correctness [11.26732084588476]
既存のコード言語モデルの評価ベンチマーク(コードLM)は、LMが機能的に正しいコードを生成することができるかどうかにのみ焦点を絞っている。
非機能要件と非機能要件の両方に対する単純な分類インスタンスに基づいて、コードLMを評価するため、新しいベンチマークNoFunEvalを提案する。
論文 参考訳(メタデータ) (2024-01-29T08:47:31Z) - Code Security Vulnerability Repair Using Reinforcement Learning with
Large Language Models [1.5457286059556397]
大規模言語モデル(LLM)から生成されたコードのセキュリティ強化と強化のための強化学習に基づく手法を提案する。
本研究では,コードにセキュリティと機能的対策を加えることに集中する意味的報酬機構と統語的報酬機構を組み合わせることで,プログラム固有の修復を行うための強化学習手法を提案する。
論文 参考訳(メタデータ) (2024-01-13T10:19:26Z) - Generate and Pray: Using SALLMS to Evaluate the Security of LLM
Generated Code [0.7451457983372032]
大規模言語モデルによって生成されたコードが正しいだけでなく、脆弱性もないことを保証することが重要です。
LLM(Large Language Models)を評価するために使われる既存のデータセットは、セキュリティに敏感な真のソフトウェアエンジニアリングタスクを適切に表現していない。
生成されたコードのセキュリティを評価することに焦点を当てたベンチマークが明らかに欠落している。
論文 参考訳(メタデータ) (2023-11-01T22:46:31Z) - Identifying the Risks of LM Agents with an LM-Emulated Sandbox [70.83306884808988]
言語モデル(LM)エージェントとツールは、豊富な機能セットを可能にすると同時に、潜在的なリスクを増幅する。
これらのエージェントを高いコストでテストすることは、高いリスクと長い尾のリスクを見つけるのをますます困難にします。
ツール実行をエミュレートするためにLMを使用し、さまざまなツールやシナリオに対してLMエージェントのテストを可能にするフレームワークであるToolEmuを紹介します。
ツールエミュレータと評価器の両方を人体評価によりテストし,ToolEmuで特定されたエラーの68.8%が実世界のエージェントの失敗であることを確認した。
論文 参考訳(メタデータ) (2023-09-25T17:08:02Z) - Safe Deep Reinforcement Learning by Verifying Task-Level Properties [84.64203221849648]
コスト関数は、安全深層強化学習(DRL)において一般的に用いられる。
このコストは通常、国家空間における政策決定のリスクの定量化が難しいため、指標関数として符号化される。
本稿では,ドメイン知識を用いて,そのような状態に近接するリスクを定量化するための代替手法について検討する。
論文 参考訳(メタデータ) (2023-02-20T15:24:06Z) - Online Safety Property Collection and Refinement for Safe Deep
Reinforcement Learning in Mapless Navigation [79.89605349842569]
オンラインプロパティのコレクション・リファインメント(CROP)フレームワークをトレーニング時にプロパティを設計するために導入する。
CROPは、安全でない相互作用を識別し、安全特性を形成するためにコストシグナルを使用する。
本手法をいくつかのロボットマップレスナビゲーションタスクで評価し,CROPで計算した違反量によって,従来のSafe DRL手法よりも高いリターンと低いリターンが得られることを示す。
論文 参考訳(メタデータ) (2023-02-13T21:19:36Z) - Evaluating Model-free Reinforcement Learning toward Safety-critical
Tasks [70.76757529955577]
本稿では、国家安全RLの観点から、この領域における先行研究を再考する。
安全最適化と安全予測を組み合わせた共同手法であるUnrolling Safety Layer (USL)を提案する。
この領域のさらなる研究を容易にするため、我々は関連するアルゴリズムを統一パイプラインで再現し、SafeRL-Kitに組み込む。
論文 参考訳(メタデータ) (2022-12-12T06:30:17Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。