ユーザーによる「曖昧な指示」や「不十分な依頼」、コード生成にどう影響する
本記事では、LLMがコードを生成する際に、プロンプトの質がセキュリティにどう影響するかを取り上げます。10種類のLLMで大規模な実験が行われています。
問題を指摘するだけでなく、この問題の緩和にプロンプト手法が有効かどうかも検証しています。

背景
最近、プログラミングの分野ではLLMの登場によって大きな変化が起きています。「こんな機能を作ってほしい」といった自然な言葉で伝えるだけで、動くプログラムコードを自動で作ってくれます。たとえば「ユーザーのログイン機能を作って」と言うだけで、それらしいコードが数秒で出てきます。世界中の開発者に使われており、生産性を高めるために欠かせない存在になっています。
ただ、ここで見逃せない問題があります。LLMが出力するコードの中には、セキュリティの弱点が含まれていることが少なくないのです。
これまで、主に次の2つの観点からこの問題の調査が進められてきました。ひとつは、LLMの知識の限界やもともとの欠陥を明らかにすること。もうひとつは、攻撃者がLLMに危険なコードを出させるよう仕向ける「プロンプトインジェクション攻撃」への対策です。
しかし、もっと身近で重要な観点が見過ごされていました。それは、悪気のないユーザーによる「曖昧な指示」や「不十分な依頼」が、コード生成にどんな影響を与えるかという点です。たとえば、初心者が「ユーザー認証機能を作って」とだけ頼むのと、経験あるエンジニアが細かい仕様も含めて伝えるのとでは、出てくるコードの安全性が違ってくるのではないか。
そんな素朴な疑問に、体系的に向き合った事例を以下で取り上げます。
また記事の購読には、アカウント作成後の決済が必要です。
※ログイン/初回登録後、下記ボタンを押してください。
AIDBとは
プレミアム会員(記事の購読)について
■サポートのお願い
AIDBを便利だと思っていただけた方に、任意の金額でサポートしていただけますと幸いです。


PAGE TOP