AIイノベーションの恩恵を享受するには、セキュアなコードから始めることが不可欠です

ソフトウェア開発者は、生成AIを活用してコードを記述することに意欲的であり、実際に一定の成果を上げています。しかし、その一方で、危険な賭けに出ている可能性を示唆する兆候も数多く見受けられます。
GitHubによる最近の調査によると、米国の開発者の90%以上がAIコーディングツールを利用しています。その理由として、開発スピードの向上、インシデントの迅速な解決、そして重要視されているコラボレーション環境の改善などが挙げられます。AIツールを活用することで、開発者はルーチンワークをAIに任せ、より創造的な業務に集中できるようになります。これは企業にとって有益であるだけでなく、開発者の燃え尽き症候群(バーンアウト)を防ぐ効果も期待できます。
しかし、研究によってAIツールには欠陥を生み出す傾向があることも明らかになっています。Snykの調査では、回答者の75.8%が「AIが書くコードは人間が書くコードよりも安全だ」と答えた一方で、56.4%が「AIは時折コーディング上の問題を引き起こす」と認めています。さらに驚くべきことに、回答者の80%が開発中にAIコードのセキュリティポリシーを回避していると回答しました。
2022年11月にOpenAIのChatGPTが登場して以来、金融サービス業界のコード開発プロセスにおいて、生成AIモデルの利用は他の多くの分野と同様、爆発的な勢いで広がりました。GitHub Copilot、OpenAI Codex、そしてGitHub Copilot、OpenAI 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には現在、Open Web Application Security Project(OWASP)によるトップ10の脆弱性リストが存在するほどです。
開発者とAIが協力してセキュアなコードを作成する
AI生成コードの潜在的な欠陥に対する懸念から、この技術の導入を一時的に躊躇する組織もあるかもしれません。しかし、特にAI開発者が革新を続け、モデルを改善している現状において、その潜在的なメリットは無視できないほど大きなものです。少なくとも金融サービス業界において、一度開いたパンドラの箱を閉じることは難しいでしょう。銀行や金融サービス企業はすでにテクノロジー主導であり、常に競争優位性を追求する分野で活動しているからです。
重要なのは、リスクを最小限に抑える形でAIモデルを導入することです。そのためには、セキュリティ意識が高く、セキュアコーディングのベストプラクティスを十分に習得した開発者が不可欠です。開発者自身がセキュアなコードを書けるだけでなく、AIモデルが生成するコードを厳密に監視できるようにするためです。AIエンジンと人間の開発者が緊密に連携し、最終的な判断を開発者が下す体制を整えることで、企業は生産性と効率の向上という恩恵を享受しながら、セキュリティを強化し、リスクを抑制し、コンプライアンスを確実に遵守することができます。
金融サービス企業がセキュアコーディングを通じて成功、セキュリティ、利益を確保する方法についての包括的な概要は、Secure Code Warriorが新たに公開したガイドをご覧ください: 金融サービスにおけるセキュリティトレンドの究極ガイド。
サイバーセキュリティやますます危険性を増す脅威の状況に関する詳細な洞察、そして革新的な技術やトレーニングを活用して組織と顧客をより強固に保護する方法については、Secure Code Warriorのブログページをご覧ください。
AI主導の開発をリリース前にガバナンスする
AIを活用したリスク測定、コミット時のセキュアコーディングポリシーの強制、そしてSDLC全体を通じたセキュアなデリバリーの加速を実現します。
他のブログ記事を見る
セキュアコーディング、AIガバナンス、ソフトウェアリスク管理に関する専門的なコンテンツをご覧ください。
%252520%252520(3).avif)
Supercharged Security Awareness: How Tournaments are Inspiring Developers at Erste Group
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

Security as culture: How Blue Prism cultivates world-class secure developers
Learn how Blue Prism, the global leader in intelligent automation for the enterprise, used Secure Code Warrior's agile learning platform to create a security-first culture with their developers, achieve their business goals, and ship secure code at speed
AIを活用した開発をリリース前にセキュアに
開発者のリスクを可視化し、ポリシーを適用することで、ソフトウェア開発ライフサイクル全体における脆弱性を未然に防ぎます。



.avif)