Infosec Europeセッション:AIをより安全に導入するための4つのヒント
Gerald Crescione
2024年8月1日
0 分で読めます
Coatueのレポートによると、世界中の企業でAIの導入が驚異的なスピードで進んでいます。同レポートはAIの導入をインターネット黎明期と比較し、AIの成長速度は当時の2倍であることを明らかにしました。
企業がAIを活用したソフトウェア開発ソリューションを導入するなか、セキュリティチームはイノベーションを推進しつつ、必要に応じて「ブレーキをかけ」、安全でないコードの提案やライブラリの幻覚など、AIツールに伴うリスクを防ぐという課題に直面しています。
Snykのシニアプロダクトマーケティングマネージャー、Liqian Limは、Infosecurity Europe 2024でSnykのお客様であるNatWest Boxed & MettleのCISO、Kevin Fielderと対談しました。AIに伴う多くのリスクと可能性を掘り下げ、安全にこうした強力なテクノロジーを導入したいCISOに向けてアドバイスを紹介しました。主な提案をいくつかご紹介します。
1. ビジネスへの影響度に応じてAIの利用を分類する
ビジネスの各領域では、リスクと重要度が異なります。重要度の低い領域でAIを導入してもセキュリティレベルに影響しないかもしれませんが、事業に不可欠な領域で導入すれば、リスク態勢全体が変わり、機密資産が危険にさらされる可能性があります。AI関連のセキュリティを管理する際、CISOは潜在的なリスクが最も大きい領域に注力することで、時間とリソースを節約できます。
Fielderは次のように述べています。「たとえば、[AIを使って]カスタマーサポートを改善するケースを考えてみましょう。AppSecに関連する被害という観点では、実はかなり低リスクです。しかし、業種によっては、よりリスクの高い領域もあります。そうしたものについては、非常に慎重に、ゆっくり進めてください。」
コードが安全かどうかの判断をLLMだけに頼らず、AIガードレールを活用する
大規模言語モデル(LLM)は過去のプロンプトから学習するため、人間が何を見たいのかを驚くほど巧みに読み取り、それに似た情報を生成します。驚くべきことに、特定の結論に至った理由について、AIが誤解を招く説明をすることもあります。プロンプトを通じて、私たちが聞きたい答えをAIに教えてしまっているからです。そのため、企業はLLM自体にセキュリティレベルや、特定の判断を下した理由などを説明させて、それを鵜呑みにすることはできません。
代わりに、AI生成コードのセキュリティと品質を評価するため、ほかのリソースを活用する必要があります。この点についてFielderは、適切な方法でAI生成情報をテストすること、そしてリスクの高い領域では人間をプロセスに介在させることの重要性を指摘しました。AI生成コードのテスト方法は、ほかの種類のコードと似ていますが、AI生成コードの速度と規模に対応しなければならないなど、重要な違いもあります。Fielderは次のように説明しています。「AIがコードを生成する場合、すでに整備されているべき適切なガードレールで囲まれていることを確認してください。そうすれば、出力を適切にテストし、保護できます。」
重要なガードレールを、次の3つのステップにまとめました。
コードレビューを実施する
ピアレビューを追加する
コードをスキャンし、ユニットテストを行う
AIのスピードと専門家レベルの精度を兼ね備えたSASTツール、Snyk Codeなら、人間が作成したコードとAIが生成したコードの両方をリアルタイムで検出し、自動修正できます。開発者のIDE内で完結するため、コンテキストの切り替えやワークフローの中断を最小限に抑えられます。
トレーニングモデルに注意を払い、攻撃から保護する
登壇者は、AIツールが出力の生成にどのトレーニングモデルを使用しているかを把握し、トレーニングを担当するチームに予防策を講じるよう促すことの重要性にも触れました。トレーニングデータを慎重に選ばないと、攻撃者はプロンプトインジェクションなどの攻撃手法を使ってシステムを悪用できるため、AIツールのトレーニングモデルには注意が必要です。こうした攻撃は、悪意のあるユーザーがLLMに意図された範囲外のタスクを実行させるよう、戦略的にプロンプトを入力することで発生します。スキルのある人間をプロセスに介在させ、悪意ある活動の兆候が見られるプロンプトを入力検証でブロックすれば、トレーニングモデルが悪意あるプロンプトを取り込み、使用するのを防げます。
Fielderは次のように述べています。「セキュリティチームがトレーニングに直接関わるとは限りませんが、トレーニングの進め方や考慮すべき点について助言できます。誰かが不適切な質問をしたらどうなるか。誤った情報が取り込まれたらどうなるか。どう管理するのか。誤ったことを学習した場合、どうすれば忘れさせられるのか、といった点です。」
さらに、こうした提案は、サードパーティベンダーのAIソリューションについて質問し、そのトレーニングモデルを深く掘り下げる際にも役立ちます。一般に、AIモデルのトレーニングにおける「ブラックボックス」方式は危険信号です。
現在のテクノロジースタックでAIが使われている場所を把握する
組織内ですでに多くのAIソリューションが使われている可能性が高いことを認識するのも重要です。しかし、多くのサードパーティ製アプリケーションが、顧客に十分な説明をしないままAI機能を導入しているため、社内ですでに使われているAI搭載ソリューションを特定するのは困難な場合があります。
Fielderは次のように述べています。「AIはビジネスアプリに徐々に入り込んでいます。ベンダーがAIを導入していますが、必ずしも利用しない選択肢が用意されているとは限りません。[オプトアウト]できる場合でも、AI機能を使わないために複雑な手続きを踏まなければならないことがあります。たとえば、あるターミナルエミュレーターが、より適切なプロンプトを提示するためにLLMを使っていました。ターミナルエミュレーターは最もリスクの低いツールだと思うかもしれませんが、気づけばそこにもAIが組み込まれているのです。」
そのため、企業が継続的に取り組むべき課題は、こうしたサードパーティ製アプリケーションをすべて棚卸しし、それぞれのどこで、どのようにAIが使われているかを把握することです。ここでも、組織のビジネス上最も重要な領域から着手し、対象を広げていくとよいでしょう。
Snyk:AIツールを支えるセキュリティパートナー
テクノロジーの進化と「AI競争」の勝利を急ぎたくなるかもしれませんが、セキュリティを守るために慎重に進める価値はあります。そのためにイノベーションを止めたり、開発チームの妨げになったりする必要はありません。既存の開発ワークフローに溶け込み、AIのスピードに対応できるセキュリティソリューションを使うことが、大きな違いを生みます。
Snykは、AIコーディングアシスタントを補完する、AIのスピードに対応したSASTスキャンと、ワンクリックで脆弱性を自動修正する機能を提供します。さらに、次の機能もご利用いただけます。
AI生成コードの作成・コミット速度の向上に対応する、追加の安全策としてのプルリクエストチェック
脆弱性の検出時に、開発者が普段使っているIDE内で提示される推奨アクションと説明
組織固有のビジネス状況とリスクプロファイルに基づく、コンテキストに応じたインサイト
急速に変化する現在のAI環境への対応について詳しくは、AIを活用した安全な開発のためのチートシートをご覧ください。



