AIイノベーションの恩恵を享受するには、安全なコードから始めることが重要

2024年04月09日発行
でSecure Code Warrior
ケーススタディ

AIイノベーションの恩恵を享受するには、安全なコードから始めることが重要

2024年04月09日発行
でSecure Code Warrior
リソースを見る
リソースを見る

ソフトウェア開発者たちは、コードを書くために生成人工知能(AI)を活用する用意があり、喜んでいることを示してきた。しかし、彼らが危険なゲームをしている可能性があるという兆候もたくさんある。

GitHubによる最近の調査によると、米国の開発者の90%以上がAIコーディングツールを使用しており、完了時間の短縮、インシデントの迅速な解決、より協力的な環境といった利点を挙げ、彼らが重要だと感じていることを挙げている。AIツールを使って作業することで、開発者はルーティンワークを手放すことができ、企業に利益をもたらすよりクリエイティブな仕事に取り組めるようになり、ついでに仕事中の燃え尽き症候群の可能性も減る。

しかし、AIツールにはコードを書く際に欠陥が生じやすいという研究結果もある。Snyk社の調査によると、回答者の75.8%がAIのコードは人間のコードよりも安全だと答えたものの、56.4%はAIがコーディングの問題を引き起こすことがあると認めている。驚くべきことに、回答者の80%が、開発中にAIコードのセキュリティポリシーを回避していると答えている。

OpenAIのChatGPTが2022年11月にデビューして以来、生成AIモデルの使用は、他の多くの分野と同様に、金融サービスのコード開発プロセス全体に電光石火の速さで広がっている。GitHub CopilotOpenAI Codex、そして増え続ける他のモデルのような他のモデルの急速な出現は、私たちがジェネレーティブAIにできること、そしてそれが持ちうるインパクトの表面をかすめたに過ぎないことを示唆している。しかし、その影響をポジティブなものにするためには、生成されるコードの安全性を確保する必要がある。

コーディングのバグはすぐに広がる

人間の開発者であれAIモデルであれ、コードには何らかのエラーが含まれる。AIは、高度に分散したクラウドベースのコンピューティング環境における増え続ける需要に対応するため、コード開発を加速させるのに役立っている。 

コードを書くように訓練されたAIモデルは、さまざまなタスクを実行するコードの何千ものサンプルを取り込み、それらのサンプルを参考にして独自のコードを作成することができる。しかし、そのサンプルに欠陥や脆弱性が含まれていた場合、それが元々人間によって作られたものであれ、他のAIによって作られたものであれ、モデルはそれらの欠陥を新しい環境に移す可能性がある。 

AIモデルが使用しているコードの欠陥を確実に認識する能力がないことが調査で明らかになっていることを考えると、欠陥や脆弱性の拡散に対する防御策はほとんど組み込まれていない。AIはコーディングでミスを犯すだけでなく、どこかで脆弱性が特定されるまで、自分自身のミスや他のソースからのミスを繰り返す。

コーディング欠陥の拡散に対する真の防御策は、人間とAIモデルが協力することだ。人間の開発者はAIのコード作成を監督し、安全でないコーディングのやり方や脆弱なコードに対するチェック機能を果たすべきである。しかしそのためには、開発者は安全なコード記述のベストプラクティスについて徹底的に訓練され、AIが犯すかもしれないコーディングミスを特定し、迅速に修正できるようになっていなければならない。

AIコードの作成と修復の課題

ChatGPTのような大規模言語モデル(LLM)の突然の爆発的な普及は、諸刃の剣のようなものだ。一方では、企業や日常的なユーザーは、時間のかかる、負担の大きい、または困難な雑務を処理するためにAIを使用することで、多大な生産性の向上を目にしている。もう一方では、AIに仕事を任せるとうまくいかない例もたくさんある。

AIモデルは明らかな間違いを犯し、バイアスを示し、まったくの幻覚を見せた。多くの場合、問題の根源は不十分な、あるいは無責任なトレーニングデータにあった。どのようなAIモデルも、学習させたデータと同程度の性能しか持たないため、学習データを包括的かつ慎重に吟味することが不可欠だ。しかし、それでもミスは犯すものだ。

AIをコーディングに利用することは、多くの同じハードルに直面している。AIが生成するコードには、クロスサイト・スクリプティングやコード・インジェクションの脆弱性、プロンプト・インジェクションのようなAIや機械学習(ML)特有の攻撃など、さまざまな欠陥が含まれていることが明らかになっている。また、AIモデルは、そのプロセスが透明ではないため、ブラックボックスの中で動作し、セキュリティチームや開発チームは、AIがどのように結論に達するかを見ることができません。その結果、モデルは同じ間違いを何度も繰り返すことになる。コード記述に影響を及ぼす可能性のある同じ欠点は、コードの修復やコンプライアンス要件への対応にAIを使用する場合にも当てはまります。 

AIモデルによって欠陥が作られたり繰り返されたりする可能性は、LLMが独自のオープン・ウェブ・アプリケーション・セキュリティ・プロジェクト(OWASP)のトップ10脆弱性リストを持つまでになった。

開発者とAIが協力して安全なコードを作成できる

AIが生成するコードの潜在的な欠陥についての懸念は、一部の組織に、このテクノロジーを進めることについて、一時的ではあるが、躊躇させるかもしれない。しかし、特にAI開発者がそのモデルを革新し、改善し続ける中で、潜在的なメリットは無視できないほど大きい。金融サービス業界は、AIを瓶に戻すことはないだろう。銀行や金融サービス企業はすでにテクノロジー主導型であり、常に競争上の優位性を求めている分野で事業を展開している。 

重要なのは、リスクを最小限に抑える方法でAIモデルを実装することだ。つまり、セキュリティーを意識し、セキュアコーディングのベストプラクティスについて徹底的なトレーニングを受けた開発者が、自らセキュアなコードを記述し、AIモデルが生成するコードを注意深く監視できるようにすることだ。AIエンジンと人間の開発者が緊密なパートナーシップで協力し、開発者が最終的な決定権を持つことで、企業は生産性と効率の向上というメリットを享受しながら、セキュリティの向上、リスクの抑制、コンプライアンスの確保を実現することができる。 

セキュアコーディングが金融サービス企業の成功、セキュリティ、利益の確保にどのように役立つかの包括的な概要については、新たに発表されたSecure Code Warrior :金融サービスにおけるセキュリティトレンドの究極のガイド

ブログ Secure Code Warriorサイバーセキュリティ、ますます危険になる脅威の状況、そして組織と顧客をよりよく守るために革新的なテクノロジーとトレーニングを採用する方法についての詳しい洞察については、ブログページをご覧ください。

リソースを見る
リソースを見る

著者

Secure Code Warrior

Secure Code Warrior は、セキュアなコードを書くためのスキルを開発者に提供することで、セキュリ ティを重視する開発者文化を構築する。当社の主力製品であるアジャイルLearning Platform は、開発者がセキュアなコードを記述するためのスキルを短期間で習得し、構築し、適用できるように、適切なスキルに基づくパスウェイ、実践的なmissions 、状況に応じたツールを提供します。

もっと知りたい?

セキュアコーディングに関する最新の知見をブログでご紹介しています。

当社の豊富なリソースライブラリは、安全なコーディングアップスキルに対する人間的なアプローチを強化することを目的としています。

ブログを見る
もっと知りたい?

開発者主導のセキュリティに関する最新の研究成果を入手する

ホワイトペーパーからウェビナーまで、開発者主導のセキュアコーディングを始めるために役立つリソースが満載のリソースライブラリです。今すぐご覧ください。

リソース・ハブ

AIイノベーションの恩恵を享受するには、安全なコードから始めることが重要

2024年04月09日発行
BySecure Code Warrior

ソフトウェア開発者たちは、コードを書くために生成人工知能(AI)を活用する用意があり、喜んでいることを示してきた。しかし、彼らが危険なゲームをしている可能性があるという兆候もたくさんある。

GitHubによる最近の調査によると、米国の開発者の90%以上がAIコーディングツールを使用しており、完了時間の短縮、インシデントの迅速な解決、より協力的な環境といった利点を挙げ、彼らが重要だと感じていることを挙げている。AIツールを使って作業することで、開発者はルーティンワークを手放すことができ、企業に利益をもたらすよりクリエイティブな仕事に取り組めるようになり、ついでに仕事中の燃え尽き症候群の可能性も減る。

しかし、AIツールにはコードを書く際に欠陥が生じやすいという研究結果もある。Snyk社の調査によると、回答者の75.8%がAIのコードは人間のコードよりも安全だと答えたものの、56.4%はAIがコーディングの問題を引き起こすことがあると認めている。驚くべきことに、回答者の80%が、開発中にAIコードのセキュリティポリシーを回避していると答えている。

OpenAIのChatGPTが2022年11月にデビューして以来、生成AIモデルの使用は、他の多くの分野と同様に、金融サービスのコード開発プロセス全体に電光石火の速さで広がっている。GitHub CopilotOpenAI Codex、そして増え続ける他のモデルのような他のモデルの急速な出現は、私たちがジェネレーティブAIにできること、そしてそれが持ちうるインパクトの表面をかすめたに過ぎないことを示唆している。しかし、その影響をポジティブなものにするためには、生成されるコードの安全性を確保する必要がある。

コーディングのバグはすぐに広がる

人間の開発者であれAIモデルであれ、コードには何らかのエラーが含まれる。AIは、高度に分散したクラウドベースのコンピューティング環境における増え続ける需要に対応するため、コード開発を加速させるのに役立っている。 

コードを書くように訓練されたAIモデルは、さまざまなタスクを実行するコードの何千ものサンプルを取り込み、それらのサンプルを参考にして独自のコードを作成することができる。しかし、そのサンプルに欠陥や脆弱性が含まれていた場合、それが元々人間によって作られたものであれ、他のAIによって作られたものであれ、モデルはそれらの欠陥を新しい環境に移す可能性がある。 

AIモデルが使用しているコードの欠陥を確実に認識する能力がないことが調査で明らかになっていることを考えると、欠陥や脆弱性の拡散に対する防御策はほとんど組み込まれていない。AIはコーディングでミスを犯すだけでなく、どこかで脆弱性が特定されるまで、自分自身のミスや他のソースからのミスを繰り返す。

コーディング欠陥の拡散に対する真の防御策は、人間とAIモデルが協力することだ。人間の開発者はAIのコード作成を監督し、安全でないコーディングのやり方や脆弱なコードに対するチェック機能を果たすべきである。しかしそのためには、開発者は安全なコード記述のベストプラクティスについて徹底的に訓練され、AIが犯すかもしれないコーディングミスを特定し、迅速に修正できるようになっていなければならない。

AIコードの作成と修復の課題

ChatGPTのような大規模言語モデル(LLM)の突然の爆発的な普及は、諸刃の剣のようなものだ。一方では、企業や日常的なユーザーは、時間のかかる、負担の大きい、または困難な雑務を処理するためにAIを使用することで、多大な生産性の向上を目にしている。もう一方では、AIに仕事を任せるとうまくいかない例もたくさんある。

AIモデルは明らかな間違いを犯し、バイアスを示し、まったくの幻覚を見せた。多くの場合、問題の根源は不十分な、あるいは無責任なトレーニングデータにあった。どのようなAIモデルも、学習させたデータと同程度の性能しか持たないため、学習データを包括的かつ慎重に吟味することが不可欠だ。しかし、それでもミスは犯すものだ。

AIをコーディングに利用することは、多くの同じハードルに直面している。AIが生成するコードには、クロスサイト・スクリプティングやコード・インジェクションの脆弱性、プロンプト・インジェクションのようなAIや機械学習(ML)特有の攻撃など、さまざまな欠陥が含まれていることが明らかになっている。また、AIモデルは、そのプロセスが透明ではないため、ブラックボックスの中で動作し、セキュリティチームや開発チームは、AIがどのように結論に達するかを見ることができません。その結果、モデルは同じ間違いを何度も繰り返すことになる。コード記述に影響を及ぼす可能性のある同じ欠点は、コードの修復やコンプライアンス要件への対応にAIを使用する場合にも当てはまります。 

AIモデルによって欠陥が作られたり繰り返されたりする可能性は、LLMが独自のオープン・ウェブ・アプリケーション・セキュリティ・プロジェクト(OWASP)のトップ10脆弱性リストを持つまでになった。

開発者とAIが協力して安全なコードを作成できる

AIが生成するコードの潜在的な欠陥についての懸念は、一部の組織に、このテクノロジーを進めることについて、一時的ではあるが、躊躇させるかもしれない。しかし、特にAI開発者がそのモデルを革新し、改善し続ける中で、潜在的なメリットは無視できないほど大きい。金融サービス業界は、AIを瓶に戻すことはないだろう。銀行や金融サービス企業はすでにテクノロジー主導型であり、常に競争上の優位性を求めている分野で事業を展開している。 

重要なのは、リスクを最小限に抑える方法でAIモデルを実装することだ。つまり、セキュリティーを意識し、セキュアコーディングのベストプラクティスについて徹底的なトレーニングを受けた開発者が、自らセキュアなコードを記述し、AIモデルが生成するコードを注意深く監視できるようにすることだ。AIエンジンと人間の開発者が緊密なパートナーシップで協力し、開発者が最終的な決定権を持つことで、企業は生産性と効率の向上というメリットを享受しながら、セキュリティの向上、リスクの抑制、コンプライアンスの確保を実現することができる。 

セキュアコーディングが金融サービス企業の成功、セキュリティ、利益の確保にどのように役立つかの包括的な概要については、新たに発表されたSecure Code Warrior :金融サービスにおけるセキュリティトレンドの究極のガイド

ブログ Secure Code Warriorサイバーセキュリティ、ますます危険になる脅威の状況、そして組織と顧客をよりよく守るために革新的なテクノロジーとトレーニングを採用する方法についての詳しい洞察については、ブログページをご覧ください。

弊社製品や関連するセキュアコーディングのトピックに関する情報をお送りする許可をお願いします。当社は、お客様の個人情報を細心の注意を払って取り扱い、マーケティング目的で他社に販売することは決してありません。

送信
フォームを送信するには、「Analytics」のCookieを有効にしてください。完了したら、再度無効にしてください。