生成 AI を活用した開発でセキュリティを確保するための 4 つのヒント
Sarah Conway
2024年12月18日
4 分で読めますGartner の予測では、生成 AI は来年までに、90% の企業にとって重要な労働パートナーになるとされています。特にアプリケーション開発では、開発者が Github Copilot や Google Gemini Code Assist などのコードアシスタントを利用して、これまでにないスピードでソフトウェアを構築しています。
しかし、生成 AI は生産性とスピードを新たなレベルに引き上げる一方で、アプリケーションセキュリティチームに新たな脅威と課題をもたらします。大規模言語モデル (LLM) が使用するトレーニングデータには、質の高いコードと質の低いコードが混在しているため、新人開発者と同じように脆弱性や欠陥が生じる可能性があります。ただし、この技術は新人開発者とは異なり、数秒以内にコードを生成します。
また、生成 AI は組織のポリシーやベストプラクティスを考慮していないため、コンプライアンス規制や組織固有のセキュリティガイドラインに準拠できません。また、チームメンバーが LLM に機密データを入力すると、意図せず情報を漏洩してしまう可能性もあります。
このように、新しい技術は、考慮する必要がある多くのセキュリティ上の課題をもたらします。今日のアプリケーションセキュリティチームは、生成 AI のスピードと影響範囲に合わせて拡張可能で、なおかつ開発チームの作業ペースを妨げずにサポートするための戦略を実施する必要があります。
生成 AI 開発のスピードに対応したセキュリティ
アプリケーションセキュリティプログラムを拡張しつつ、生成 AI 主導の開発サイクルのあらゆる側面に適応させるには、どのような方法が最適でしょうか?
Snyk は Deloitte のアプリケーションセキュリティ専門家チームと連携して、組織が生成 AI の使用増加による影響を理解するのに役立つ新しいガイドを作成しました。アプリケーションセキュリティの拡張に重点を置きながら、生成 AI の継続的な成長と安全な使用を確保する方法について、Deloitte と Snyk がまとめた重要ポイントをご紹介します。
開発者ファーストの技術で障害を取り除く
生成 AI を活用したコーディングツールは非常に使いやすく、開発者に人気があります。開発者がプロンプトを入力すると、ほぼ瞬時に回答が生成されるので、その新しく生成されたコードをリポジトリに追加できます。このプロセスがセキュリティ対策によって何らかの形で妨げられた場合、開発者は対策に準拠しなくなる可能性が高くなります。よくある技術的な障害として、パイプラインの後半で脆弱性が発見されたため、開発者が後戻りを強いられるセキュリティツールや、問題を解決するために開発チームがさまざまなプラットフォームを行き来する必要がある、セキュリティチーム中心の UI などが挙げられます。対照的に、開発者ワークフローにシームレスに適合し、AI コーディングツールと連携して動作する開発者ファーストのセキュリティツールを組み込むことで、生成 AI を活用した安全なソフトウェア開発が促進されます。
トレーニングを実施してガードレールの「理由」を説明する
調査によると、開発者の 80% は AI コードに関するセキュリティ対策に準拠していないことが分かっています。これは、人間が記述したコードよりも、生成 AI によるコードを信頼する傾向があるためです。そのため、こうした開発者に対してトレーニングを実施し、AI コーディングアシスタントとリアルタイムセキュリティツールを併用する必要がある理由を理解してもらうことが不可欠です。セキュリティチームは、開発者がプロンプトにコピー & ペーストしてもよいデータの種類など、LLM の使用方法 (および使用しない方法) に関するトレーニングも検討する必要があります。
生成 AI と連携したプロセスを作成する
チームはすでに、生成 AI によってリポジトリに投入されるコードの量が大幅に増加していることを実感しているでしょう。そのため、コード量の増加に対応できるスピードでセキュリティ上の問題を検出し、修正するためのシンプルなプロセスを確立することがこれまで以上に重要になっています。開発チームとセキュリティチーム間のコミュニケーション、コードスキャンのレビュー、そして脆弱性の優先順位付けに関するプロセスの改善と強化を検討してください。
生成 AI ツールに合わせてポリシーを更新する
生成 AI に関する明確なポリシーを定義することも重要です。適切なポリシーを設けると、日々のワークフローにおけるチームの AI 活用水準が引き上げられ、強固なセキュリティチェックポイントが必要になります。AI ポリシーの例としては、許容されるユースケース、データの選択と使用、データのプライバシーとセキュリティ、規制コンプライアンス要件との関係に関するガイダンスなどが挙げられます。また、新しいツールの導入や、開発手法の進化に伴い、こうしたポリシーを定期的に更新することもお勧めします。
アプリケーションセキュリティプログラムを拡張してAI の課題に対応
チームが強固な AI ポリシーとガードレールの基盤を確立することで、組織は AI 技術における今後のイテレーションや進化に対応できるようになり、成功につながります。Deloitte の Secure by Design による自動化およびオーケストレーションサービスと、開発ライフサイクルの早期に、重大な脆弱性やゼロデイ攻撃といった問題の検出および自動修正を行うアプリケーションセキュリティプラットフォームを組み合わせることで、組織は次のことを実現できます。
ソフトウェア開発ライフサイクル全体でアプリケーションセキュリティを安全に拡張し、単一のプラットフォームで自動化されたワークフローを使用できます。
ツールと自動化プロセスを統合することで、開発者が採用しやすくなります。
AI を活用したセキュリティツールと自動化を導入することで、開発者とセキュリティチームが協力して、問題を早期に (発生した時点で) 修正できます。その上、修正対応が通常よりも圧倒的に短時間かつ簡単になり、リスクが軽減されます。
脆弱性への対策に関するサポートが受けられるため、バックログが削減されます。
アプリケーションセキュリティプラットフォームの迅速かつ一貫した有効化により、オンボーディングと採用を促進し、ファーストパーティのコードを保護します。保護対象には、AI コーディングアシスタントによって作成されたコード、オープンソースの依存関係、コンテナ、Infrastructure as Code (IaC) なども含まれます。
生成 AI 主導の開発における新たな課題に対応できるよう、アプリケーションセキュリティプログラムを拡張する方法の詳細については、ホワイトペーパー Application Security at Scale for GenAI (生成 AI に対応したアプリケーションセキュリティの拡張)をダウンロードしてください。
Protect your software development
Understand the effects of increasing GenAI usage in our new guide.