論文の概要: Generating Adversarial Computer Programs using Optimized Obfuscations
- arxiv url: http://arxiv.org/abs/2103.11882v1
- Date: Thu, 18 Mar 2021 10:47:15 GMT
- ステータス: 処理完了
- システム内更新日: 2021-03-26 06:48:46.549244
- Title: Generating Adversarial Computer Programs using Optimized Obfuscations
- Title(参考訳): 最適化難読化を用いた逆プログラム生成
- Authors: Shashank Srikant, Sijia Liu, Tamara Mitrovska, Shiyu Chang, Quanfu
Fan, Gaoyuan Zhang, Una-May O'Reilly
- Abstract要約: コンピュータプログラムに逆らってそのような学習モデルをだます原則的な方法を検討する。
我々は,従来はリバースエンジニアリングプログラムの試みを避けるために用いられてきたプログラム難読化を用いる。
当社の最良の攻撃提案は、最先端の攻撃生成アプローチよりも52%$改善できることを示します。
- 参考スコア(独自算出の注目度): 43.95037234252815
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Machine learning (ML) models that learn and predict properties of computer
programs are increasingly being adopted and deployed. These models have
demonstrated success in applications such as auto-completing code, summarizing
large programs, and detecting bugs and malware in programs. In this work, we
investigate principled ways to adversarially perturb a computer program to fool
such learned models, and thus determine their adversarial robustness. We use
program obfuscations, which have conventionally been used to avoid attempts at
reverse engineering programs, as adversarial perturbations. These perturbations
modify programs in ways that do not alter their functionality but can be
crafted to deceive an ML model when making a decision. We provide a general
formulation for an adversarial program that allows applying multiple
obfuscation transformations to a program in any language. We develop
first-order optimization algorithms to efficiently determine two key aspects --
which parts of the program to transform, and what transformations to use. We
show that it is important to optimize both these aspects to generate the best
adversarially perturbed program. Due to the discrete nature of this problem, we
also propose using randomized smoothing to improve the attack loss landscape to
ease optimization. We evaluate our work on Python and Java programs on the
problem of program summarization. We show that our best attack proposal
achieves a $52\%$ improvement over a state-of-the-art attack generation
approach for programs trained on a seq2seq model. We further show that our
formulation is better at training models that are robust to adversarial
attacks.
- Abstract(参考訳): コンピュータプログラムの特性を学習し、予測する機械学習(ML)モデルの採用とデプロイが増えている。
これらのモデルは、コードの自動補完、大規模なプログラムの要約、プログラム内のバグやマルウェアの検出などのアプリケーションで成功している。
本研究では,このような学習モデルを騙すために,コンピュータプログラムの逆摂動を原理的に検討し,その逆の堅牢性を決定する。
我々は,逆エンジニアリングプログラムの試行を避けるために,従来のプログラム難読化手法を用いている。
これらの摂動は、機能を変更せずに、意思決定時にmlモデルをだますようにプログラムを変更することができる。
任意の言語でプログラムに複数の難読化変換を適用することができる敵プログラムの一般的な定式化を提供する。
プログラムのどの部分が変換し、どの変換を行うかという2つの重要な側面を効率的に決定する一階最適化アルゴリズムを開発した。
これら2つの側面を最適化して、最適な対向的摂動プログラムを生成することが重要であることを示す。
また,この問題の離散的性質から,ランダム化平滑化を用いた攻撃損失環境の改善と最適化の容易化を提案する。
我々は,プログラム要約の問題に関して,python と java プログラムの作業を評価する。
我々は,Seq2seqモデルでトレーニングしたプログラムに対して,最先端の攻撃生成アプローチに対して,最高の攻撃提案が5,2 %$の改善を実現していることを示す。
さらに、我々の定式化は敵の攻撃に対して堅牢な訓練モデルに優れていることを示す。
関連論文リスト
- Self-Taught Optimizer (STOP): Recursively Self-Improving Code Generation [23.31928097405939]
言語モデルに融合した足場プログラムを用いて自己改善を行う。
言語モデルにより、様々な自己改善戦略が提案されている。
これは、近代的な言語モデルであるGPT-4が、自分自身を改善のために呼び出すことができるコードを書くことができることを実証している。
論文 参考訳(メタデータ) (2023-10-03T17:59:32Z) - Learning to compile smartly for program size reduction [35.58682369218936]
プログラムサイズ削減のためのパスを選択するためのポリシーを学習する新しいアプローチを提案する。
提案手法では,有用なパスシーケンスを識別する検索機構と,最適なシーケンスを選択するための注意をカスタマイズしたGNNを用いる。
論文 参考訳(メタデータ) (2023-01-09T16:42:35Z) - Fault-Aware Neural Code Rankers [64.41888054066861]
サンプルプログラムの正しさを予測できる故障認識型ニューラルネットワークローダを提案する。
我々のフォールト・アウェア・ローダは、様々なコード生成モデルのpass@1精度を大幅に向上させることができる。
論文 参考訳(メタデータ) (2022-06-04T22:01:05Z) - Learning from Self-Sampled Correct and Partially-Correct Programs [96.66452896657991]
そこで本研究では,モデルが学習中にサンプリングを行い,自己サンプリングされた完全正当プログラムと部分正当プログラムの両方から学習することを提案する。
自己サンプリング型プログラムと部分修正型プログラムを併用することで,学習とサンプリングプロセスのガイドに役立てることができることを示す。
提案手法は,MLEを用いた単一の参照プログラムからの学習と比較して,パス@kの性能を3.1%から12.3%向上させる。
論文 参考訳(メタデータ) (2022-05-28T03:31:07Z) - Natural Language to Code Translation with Execution [82.52142893010563]
実行結果-プログラム選択のための最小ベイズリスク復号化。
そこで本研究では,自然言語からコードへのタスクにおいて,事前訓練されたコードモデルの性能を向上することを示す。
論文 参考訳(メタデータ) (2022-04-25T06:06:08Z) - Weighted Programming [0.0]
数学モデルを特定するためのプログラミングパラダイムである重み付けプログラミングについて研究する。
パラダイムとしての重み付きプログラミングは、確率分布を超えた数学的モデルを特定するのに利用できると論じる。
論文 参考訳(メタデータ) (2022-02-15T17:06:43Z) - Programming with Neural Surrogates of Programs [17.259433118432757]
本稿では,3つのサロゲート型設計パターンについて検討し,大規模CPUシミュレータのケーススタディでそれぞれを評価する。
サロゲートコンパイルでは、プログラマはエンドユーザにデプロイするプログラムの振る舞いを模倣するサロゲートを開発する。
サロゲート適応では、プログラマはプログラムのサロゲートを開発し、異なるタスクでサロゲートを再訓練する。
サロゲート最適化では、プログラムのサロゲートを開発し、サロゲートの入力パラメータを最適化し、最適化された入力パラメータを元のプログラムにプラグインする。
論文 参考訳(メタデータ) (2021-12-12T04:45:41Z) - Searching for More Efficient Dynamic Programs [61.79535031840558]
本稿では,プログラム変換の集合,変換プログラムの効率を評価するための単純な指標,およびこの指標を改善するための探索手順について述べる。
実際に、自動検索は初期プログラムの大幅な改善を見出すことができることを示す。
論文 参考訳(メタデータ) (2021-09-14T20:52:55Z) - Covert Model Poisoning Against Federated Learning: Algorithm Design and
Optimization [76.51980153902774]
フェデレーテッド・ラーニング(FL)はパラメータ伝達中にFLモデルに対する外部攻撃に対して脆弱である。
本稿では,最先端の防御アグリゲーション機構に対処する有効なMPアルゴリズムを提案する。
実験の結果,提案したCMPアルゴリズムは,既存の攻撃機構よりも効果的で,かなり優れていることが示された。
論文 参考訳(メタデータ) (2021-01-28T03:28:18Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。