Skip to main content

AIはアプリケーションセキュリティを地獄にも楽園にも変えるのか?

blog feature ai blue

2023年10月3日

0 分で読めます

論文の執筆から重要インフラの保守、製品の製造まで、あらゆる分野での人工知能の活用は議論を呼んでいます。AI/ML技術がもたらす可能性に期待する人がいる一方で、不安を感じ、慎重な姿勢を取る人もいます。こうした意見の違いは、根本的な問いを投げかけます。AIは現代社会をユートピアにするのでしょうか。それともディストピアにするのでしょうか。

こうした議論は、私たちの業界により密接な問いも提起しています。アプリケーションの開発やセキュリティ確保にAIを活用するのは良い考えなのでしょうか。それとも、かえって大きな問題を招くのでしょうか。プロダクトマーケティング担当バイスプレジデントのRavi Mairaと、DevRel & Community責任者のRandall Deggesが、2023年6月にLinkedInライブで、アプリケーションセキュリティにおけるAIの活用について語りました。

対談のハイライトをお読みください。AIがビジネスにどう役立つのか、AIに内在する欠点にどう注意すべきか、そして今後、アプリケーション開発とセキュリティの分野でAIに何が期待できるのかをご紹介します。 

今のビジネスにAIが必要な理由

人工知能を適切に活用すれば、開発の生産性とイノベーションを高められます。AIがコーディング、セキュリティ、生産性をどのように向上させるのか、いくつかご紹介します。

AIは生産性を大きく高める

AIは、より的確な回答を生み出し、調査の際に情報を結び付けることで、開発者やセキュリティ担当者の生産性を大幅に向上させます。 

Randallは、調査にAIを活用した実例を紹介しました。「昨夜、あるプロジェクトに取り組んでいて、以前収録したポッドキャストのエピソードをダウンロードしたんです。でも、使っていたツールではファイルが大きすぎました。普段ならGoogleで『mp3ファイルを小さなmp3ファイルに分割するにはどうすればいい?』と検索していたでしょう。大規模な音声編集ツール一式を使う方法もありますが、かなり手間がかかります。そこでChatGPTに質問したら、出力全体を生成できるFFmpegのコマンドラインコマンドを返してくれました。自分で調べていたら、かなり時間がかかったはずです。」

AIで開発者のコーディングをより効率的に

調査にAIを使うだけでなく、開発者はAIを活用したツールで複雑なコードを理解できます。検索エンジンで新しいコードを見つけても、理解するには多くの時間と労力を要します。一方、Betoのようなソリューションは、コードの各行をAIで解説するため、開発者は新しいコードをより簡単に理解し、活用できます。

最先端のアプリケーションセキュリティツールを支えるAI

AIはアプリケーションセキュリティの強化にも役立ちます。単一のLLMモデルだけでは、単独で機能するにはまだ十分に高度でないことは明らかです。しかし、ほかの技術と組み合わせれば強力なソリューションになります。Raviは次のように話しました。「一つのモデルだけを使うのではなく、特定の目標に対して、適切なタイミングで異なる機械学習やAIの手法を使うという考え方です。」  

アプリケーションセキュリティにAIを使うリスク

AIは役立つ一方で、新しい技術への期待に夢中になりすぎないことも大切です。使い方を誤れば、AIは大きな損害を引き起こしかねません。RaviとRandallは、アプリケーションのセキュリティや開発にAIを使う際のリスクをいくつか挙げました。

ハルシネーション

ハルシネーションとは、AIが誤った情報を生成する現象を指します。コーディングやセキュリティ対策を含め、AIが使われるあらゆる場面で問題を引き起こす可能性があります。そのため、調査への回答やコードなどをAIに生成させる際には、開発者もセキュリティ担当者も十分に注意しなければなりません。 

このように信頼性が十分でない以上、チームは引き続き、自ら調査やトレーニング、知識共有を行う必要があります。また、「信頼するが、検証する」という姿勢を持つことも重要です。単一のAIツールが生成した情報は、人による調査やセキュリティツールなど、ほかの手段で裏付ける必要があります。 

質の低いAIへの入力

RaviとRandallは、AIの出力は入力の質に左右されるとも指摘しました。Randallはこう説明しています。「LLMを使ううえでの基本的なルールの一つは、与えるコンテキストが多いほど、出力の質が上がるということです。空のChatGPTセッションで『これを実行するPython関数を作って』と曖昧に指示すれば、基盤モデルのtemperature設定をいくら調整しても、おそらくランダムな出力が返ってきます。代わりに、『このファイル全体、あるいはこのディレクトリ内のファイル一式があります』というように、もっと多くのコンテキストを与えてください。」 

ただし、詳細なプロンプトを書くのが難しい場合もありますし、指示を具体的にしても、完璧な結果が得られる保証はありません。AIが生成する結果の質は、モデルが学習したサンプルの質に左右されます。Raviによると、「AIは安全でないコードを学習しています。ですから、『ChatGPTは安全でないコードの問題を解決してくれるのか?』という問いへの答えは、今のところ『いいえ』です。安全でないコードで学習したため、安全でないコードを生成してしまうのです。」 

さらに、大規模言語モデル(LLM)の仕組み上、AIへの入力にはさまざまなセキュリティ上の懸念があります。リスクには、プロンプトインジェクション(ユーザー向けアプリケーションの場合)に加え、誤解を招く「誘導的な」入力に関する、より複雑な問題もあります。たとえば、ChatGPTにコードを渡して関連するセキュリティ上の問題を探すよう依頼した場合、コード内の変数名やクラス名が誤解を招くものだと、生成モデルが予想外の出力や誤解を招く情報を返す可能性があります。

アプリケーション開発におけるAIの未来

AIが社会に普及し続け、とりわけアプリケーション開発やセキュリティで活用されるなか、RaviとRandallはいくつかのトレンドが現れると見ています。まず、これまで開発経験のなかった人がこうしたツールでコードを作成する「市民コーダー」を、AIが支援するようになると予測しています。 

また、強力なアプリケーションセキュリティツールへの需要は、今後も高まり続けると見ています。とりわけ、AIを巧みに活用するツールが求められるでしょう。進化を続けるこの業界で主流となるのは、イノベーションにAIを活用しつつ、AIが生成した主張をすべて人間や追加のテクノロジーで照合するツールです。

アプリケーションセキュリティにおけるAIについて詳しく知りたい方は、RaviとRandallのLinkedInでの対談全編をご覧ください。 

カテゴリー:

続きを読む

Blog

フロンティアモデルは脆弱性を発見した。攻撃者だけがエクスプロイトチェーンを見つけた。

静的解析で欠陥は見つかりましたが、ライブ攻撃テストで侵害につながる連鎖を実証できたのは唯一でした。Evo COS、Claude Security、Claude Code Securityを比較します。

feature insights context
Blog

自律型攻撃はすでに始まっている。防御もそのスピードに追いつかなければならない。

自律型攻撃者によって、防御に使える時間は短くなっています。継続的な検出、修復、検証、予防で、セキュリティチームが攻撃に歩調を合わせる方法をご紹介します。

Blog

AIコーディングエージェントが不適切なアクセス制御を繰り返し実装する理由

AIコーディングエージェントは、コンパイルが通りレビューも通過する一方で、あるテナントのデータを別のテナントに公開してしまう認可ロジックを生成することがあります。不適切なアクセス制御が検出しにくい理由と、その防止策をご紹介します。