論文の概要: UNGOML: Automated Classification of unsafe Usages in Go
- arxiv url: http://arxiv.org/abs/2306.00694v1
- Date: Thu, 1 Jun 2023 14:02:46 GMT
- ステータス: 処理完了
- システム内更新日: 2023-10-24 04:58:21.844385
- Title: UNGOML: Automated Classification of unsafe Usages in Go
- Title(参考訳): UNGOML: Goにおける安全でない使用の自動分類
- Authors: Anna-Katharina Wickert, Clemens Damke, Lars Baumg\"artner, Eyke
H\"ullermeier, Mira Mezini
- Abstract要約: 安全でないパッケージは、いくつかの目的のために現実世界のコードで頻繁に使用される。
本稿では,UNGOMLにおいて,安全でない使用のための最初の自動分類器を提案する。
UNGOMLは、グラフやセキュリティ監査のようなユースケースで、安全でない使用を効率的にフィルタするために使用することができる。
- 参考スコア(独自算出の注目度): 2.5338347389265294
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: The Go programming language offers strong protection from memory corruption.
As an escape hatch of these protections, it provides the unsafe package.
Previous studies identified that this unsafe package is frequently used in
real-world code for several purposes, e.g., serialization or casting types. Due
to the variety of these reasons, it may be possible to refactor specific usages
to avoid potential vulnerabilities. However, the classification of unsafe
usages is challenging and requires the context of the call and the program's
structure. In this paper, we present the first automated classifier for unsafe
usages in Go, UNGOML, to identify what is done with the unsafe package and why
it is used. For UNGOML, we built four custom deep learning classifiers trained
on a manually labeled data set. We represent Go code as enriched control-flow
graphs (CFGs) and solve the label prediction task with one single-vertex and
three context-aware classifiers. All three context-aware classifiers achieve a
top-1 accuracy of more than 86% for both dimensions, WHAT and WHY. Furthermore,
in a set-valued conformal prediction setting, we achieve accuracies of more
than 93% with mean label set sizes of 2 for both dimensions. Thus, UNGOML can
be used to efficiently filter unsafe usages for use cases such as refactoring
or a security audit. UNGOML: https://github.com/stg-tud/ungoml Artifact:
https://dx.doi.org/10.6084/m9.figshare.22293052
- Abstract(参考訳): goプログラミング言語は、メモリ破壊から強い保護を提供する。
これらの保護の脱出ハッチとして、安全でないパッケージを提供する。
以前の研究では、このunsafeパッケージは、シリアライズやキャスティングタイプなど、いくつかの目的で現実世界のコードで頻繁に使用されている。
これらの様々な理由から、潜在的な脆弱性を避けるために特定の使用法をリファクタリングすることが可能である。
しかし、安全でない使用の分類は困難であり、呼び出しのコンテキストとプログラムの構造を必要とする。
本稿では,unsafeパッケージで何がされたのか,なぜ使用されるのかを特定するために,goでunsafeを使用する最初の自動分類器ungomlを提案する。
UNGOMLのために、手動でラベル付けされたデータセットでトレーニングされた4つのカスタムディープラーニング分類器を構築しました。
我々は、goコードを強化制御フローグラフ(cfgs)として表現し、1つの単一頂点と3つのコンテキスト認識型分類器でラベル予測タスクを解決する。
3つのコンテキスト対応の分類器はいずれも、両方の次元で86%以上のtop-1精度を達成している。
さらに, 定値共形予測設定では, 両次元の平均ラベル集合サイズが2である場合, 93%以上の精度が得られる。
したがって、UNGOMLは、リファクタリングやセキュリティ監査のようなユースケースの安全でない使用を効率的にフィルタリングするために使用することができる。
UNGOML: https://github.com/stg-tud/ungoml Artifact: https://dx.doi.org/10.6084/m9.figshare.22293052
関連論文リスト
- Can You Trust Your Metric? Automatic Concatenation-Based Tests for Metric Validity [9.355471292024061]
GPTをベースとした有害度検出指標は、決定フリッピング現象を示す。
GPT-4oのような高度な計量でさえ、入力順序に非常に敏感である。
論文 参考訳(メタデータ) (2024-08-22T09:57:57Z) - What Makes and Breaks Safety Fine-tuning? A Mechanistic Study [64.9691741899956]
安全性の微調整は、大規模な言語モデル(LLM)を、安全なデプロイメントのための人間の好みに合わせるのに役立つ。
安全でない入力の健全な側面をキャプチャする合成データ生成フレームワークを設計する。
これを用いて,3つのよく知られた安全微調整手法について検討する。
論文 参考訳(メタデータ) (2024-07-14T16:12:57Z) - SORRY-Bench: Systematically Evaluating Large Language Model Safety Refusal Behaviors [64.9938658716425]
安全でないユーザリクエストを認識して拒否する、大規模な言語モデル(LLM)の既存の評価は、3つの制限に直面している。
まず、既存の手法では、安全でないトピックの粗い粒度を使い、いくつかのきめ細かいトピックを過剰に表現している。
第二に、プロンプトの言語的特徴とフォーマッティングは、様々な言語、方言など、多くの評価において暗黙的にのみ考慮されているように、しばしば見過ごされる。
第3に、既存の評価は大きなLCMに頼っているため、コストがかかる可能性がある。
論文 参考訳(メタデータ) (2024-06-20T17:56:07Z) - Enabling Memory Safety of C Programs using LLMs [5.297072277460838]
C言語で書かれた低レベルのコードのメモリ安全性違反は、ソフトウェア脆弱性の主要な原因のひとつであり続けています。
このような違反を建設によって除去する方法の1つは、安全なC方言にCコードを移植することである。
このような方言は、最小限のランタイムオーバーヘッドで安全性を保証するためにプログラマが提供するアノテーションに依存している。
この移植は、プログラマに多大な負担をかける手作業であり、そのため、このテクニックの採用は限られている。
論文 参考訳(メタデータ) (2024-04-01T13:05:54Z) - Zero-Shot Detection of Machine-Generated Codes [83.0342513054389]
本研究は,LLMの生成したコードを検出するためのトレーニング不要な手法を提案する。
既存のトレーニングベースまたはゼロショットテキスト検出装置は、コード検出に効果がないことがわかった。
本手法は,リビジョン攻撃に対する堅牢性を示し,Javaコードによく適応する。
論文 参考訳(メタデータ) (2023-10-08T10:08:21Z) - Certifying LLM Safety against Adversarial Prompting [75.19953634352258]
大規模言語モデル(LLM)は、入力プロンプトに悪意のあるトークンを追加する敵攻撃に対して脆弱である。
我々は,認証された安全保証とともに,敵のプロンプトを防御する最初の枠組みである消去・チェックを導入する。
論文 参考訳(メタデータ) (2023-09-06T04:37:20Z) - Towards Multiple References Era -- Addressing Data Leakage and Limited
Reference Diversity in NLG Evaluation [55.92852268168816]
BLEUやchrFのようなN-gramマッチングに基づく評価指標は、自然言語生成(NLG)タスクで広く利用されている。
近年の研究では、これらのマッチングベースの指標と人間の評価との間には弱い相関関係が示されている。
本稿では,これらの指標と人的評価の整合性を高めるために,テキストマルチプル参照を利用することを提案する。
論文 参考訳(メタデータ) (2023-08-06T14:49:26Z) - MultiGuard: Provably Robust Multi-label Classification against
Adversarial Examples [67.0982378001551]
MultiGuardは、マルチラベル分類に対する敵の例に対する証明可能な堅牢な防御である。
我々の主要な理論的貢献は、入力の基底真理ラベルの数が、MultiGuardによって予測されるラベルのセットで証明可能であることを示すことである。
論文 参考訳(メタデータ) (2022-10-03T17:50:57Z) - Identifying noisy labels with a transductive semi-supervised
leave-one-out filter [2.4366811507669124]
本稿では,LGC_LVOF(Local and Global Consistency (LGC) アルゴリズムに基づく一括フィルタリング手法)を導入する。
私たちのアプローチは、大量のラベルのないデータを持つデータセットに最も適していますが、ラベルは多くありません。
論文 参考訳(メタデータ) (2020-09-24T16:50:06Z) - Breaking Type Safety in Go: An Empirical Study on the Usage of the
unsafe Package [3.548075273599941]
我々は,2,438のGoプロジェクトにおいて,安全でないパッケージの使用に関する大規模な研究を行った。
我々の調査によると、安全でないプロジェクトはGoプロジェクトの24%で使われており、主にオペレーティングシステムやCコードとの通信によって動機付けられています。
クラッシュするエラーや非決定的な振る舞いから、デプロイを制限するまで、安全でないプロジェクトによって直面する現実的な問題を報告します。
論文 参考訳(メタデータ) (2020-06-17T16:38:40Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。