AIはDevSecOpsを再構成し、セキュリティをコードに近づけている

ソフトウェア開発におけるAIの加速的な利用は、コード作成時のセキュリティに関わるスコープ、スキル、戦略を急速に変えている。

人工知能ツールはDevSecOpsプロセスを刷新し、セキュリティチームと開発チームがソフトウェア製品に最初からセーフガードをより効果的に組み込むことを可能にしている。

しかし、AIのDevSecOpsへの影響はツールとプロセスを超えて、規律の基盤となるスコープ、スキル、戦略さえも変えている。

「AIはDevSecOpsを反応的な検証から継続的でインテリジェントな実装への根本的なシフトをもたらしている」と、エンジニアリング・建設会社MasTecのシニアAIエンジニアでAIシステムアーキテクトのSiddardha Vangalaは述べている。「エンタープライズ環境では、デプロイメント後ではなく開発ワークフローと並行して動作するオートメーションから最大の利益が得られている。」

DevSecOpsプロセスの刷新

AIは何よりもまず、開発の早い段階にセキュリティを組み込むことで、また問題の検出と修復方法を改善することで、DevSecOpsを再構成している。IDCのDevSecOpsおよびソフトウェアサプライチェーンセキュリティ研究実践のリサーチマネージャーであるKatie Nortonは述べている。

DevSecOpsプロセスへのAIの影響は3つの主な領域に分かれている。ノートンによると最初の領域はAI支援セキュアコーディングである。「最も明確な変化の1つは、サードパーティのセキュリティツールをコーディングアシスタントおよびエージェントに統合することである」と彼女は述べている。「AI生成コードがデフォルトでセキュアであると仮定する代わりに、組織はセキュリティ制御をコード生成ワークフロー自体に組み込むことがますます増えている。」

これらの制御は、ポリシーガイダンス、セキュアコーディングパターン、検証チェック、シークレット検出、承認された依存関係または構成推奨事項をコード製作中に提供する。ノートンは述べている。その結果、開発ライフサイクル内のセキュリティの位置が変わっている。

「セキュリティはコード作成後またはコード作成と並行して開発者とのみ相互作用しなくなった」とノートンは述べている。「それは次第にコードを生成しているエージェントとの相互作用を増やしている。それはDevSecOpsを実践的な方法で変える。セキュリティ制御は生成ポイントに近づいており、[アプリケーションセキュリティ]チームは人間開発者の行動だけでなく、AIシステムの行動を統治し始めている。」

2つ目の領域は大規模言語モデル(LLM)脆弱性スキャンニングである。「LLMはコード、構成、APIを脆弱性についてますます分析するために使用されており、固定ルールではなくコンテキスト推論を使用している」とノートンは述べている。「これにより、従来のスキャナーがしばしば見逃すロジックフローと不安全な使用パターンを特定することができる。これは、特に複雑なまたは最新のアプリケーションアーキテクチャで検出カバレッジを拡大する。」

同時にスキャンニング自体は進化していると、ノートンは述べており、より自律的になり、場合によっては分析を開始し、結果を確認し、明示的な人間活動を必要とせずに開発ワークフローに直接統合することができるようになっている。

3つ目の領域は自動化された修復提案と実行である。「AIはコード変更、依存関係の更新、設定調整を含む脆弱性の修正を生成するために次第に使用されている」とノートンは指摘している。「これらの提案は、プルリクエストやIDE[統合開発環境]などの開発者ワークフローに直接統合されることが多い。これは平均修復時間を短縮し、問題を解決するために必要な専門知識を低下させる。」

DevSecOpsプロセスへのAIの全体的な影響は、コード作成、脆弱性の発見、修復の間の距離を縮めることである。「これはDevSecOpsをより継続的にしますが、より機械仲介的にもします」とノートンは述べている。「現在の主な課題は、機械生成コード、機械識別の結果、機械提案修復を開発ライフサイクル全体で検証することになります。」

明示的なセキュリティ要件はAIの利点を高める

DevSecOpsでAIを導入することは開発ライフサイクルの早い段階でセキュリティの強調をシフトするのに役立つが、これには「正しくするための明示的な指示」が必要である。ビジネスソフトウェアプロバイダAgiloftのAIオペレーション担当副社長であるNoe Ramosは述べている。

「AIコーディングアシスタントは開発を大幅に加速させるが、セキュアなエンタープライズコードではなく、デフォルトで機能的なコードに最適化されている」とRamosは述べている。「これらは同じターゲットではない。我々は入力検証、シークレット管理、最小権限、脆弱性パターンを含むAIコーディングプロンプトおよびプロジェクトレベルの指示に明示的なセキュリティ要件を組み込む必要があった。なぜなら、それを指定しなければ、確実に現れないからである。」

その指示層が整備されると、「締め切りプレッシャーの下で働く人間開発者は行わない方法でスケール全体で一貫して適用される」とRamosは述べている。

AIツールは依存関係の脆弱性にフラグを立てたり、共通の脆弱性パターンを特定したり、修復を提案したりするのに次第に有用であり、これらのタスクは以前には専用のセキュリティレビュー周期を必要としていた。Ramosは述べている。「これはコード作成とセキュリティ問題の検出の間のフィードバックループを圧縮している」と彼女は述べている。

AIは脆弱性を優先順位付ける能力をチームが向上させている。「ノイズが多すぎることはDevSecOpsスペースで長年の問題である」と、通信プロバイダAT&ampTのリード データ/AIソフトウェアエンジニアであるMonika Malikは述べている。「情報に基づいた決定を下すために提供するほとんどコンテキストなしで多くの結果が生成される。」

AIツールは、コード、依存関係、構成、実行時動作全体で複数の種類の結果を相互に関連させることで価値を提供する。Malikは述べている。「これにより、チームは実際のエクスプロイトまたは運用上影響を受ける問題を表すアイテムに焦点を当てることができる」と彼女は述べている。「チームはスキャナー結果をすべて平等に扱わなくなっている。」

例えば、AI支援分析は、公開ファイシング機能、特権付きワークロード、または機密データに関連する実際のエクスポージャーを特定する。Malikは述べている。「これはセキュリティエンジニアリングに焦点を当てたチームが[に]関連する問題に対処することに時間を費やすことを可能にする」と彼女は述べている。

DevSecOpsを規律として変える

AIがより大きなスケールでDevSecOpsを変換するのに及ぼす影響を考えると、IT、セキュリティ、および開発のリーダーはAIが開発戦略に導入された場合に何が変わるかについて常に把握する必要がある。

「歴史的に、DevSecOpsはアプリケーションコードセキュリティ、インフラストラクチャセキュリティ、およびソフトウェアサプライチェーンセキュリティに焦点が当てられてきた」とMalikは述べている。「AIの導入により、懸念事項のスコープは大幅に拡大している。DevSecOpsはもはや単にソースコードセキュリティ、コンテナセキュリティ、パイプラインセキュリティ、クラウドインフラストラクチャセキュリティに対処することはできない。」

追加の懸念事項には、モデルアクセスエクスポージャー、プロンプトアビューズ/インジェクションリスク、機密データリーク、データ系統、サードパーティモデルとAPI依存関係、AI生成コードのデプロイメント、およびその他が含まれるとMalikは述べている。

戦略的影響と課題

「戦略的観点から、AIはDevSecOpsをより多くのリスクベースのオペレーティングモデルへと導いている」とMalikは述べている。「成熟した戦略は、異なるユースケースに異なるレベルのスクラティニを適用することになるだろう。チームはますます低リスク内部生産性ユースケースを顧客対応の決定、規制データ使用、認証フロー、特権操作などに基づいた高リスクユースケースから分離するだろう。」

Agiloftはコーディングガバナンスを「DevSecOps固有の問題」ではなく「DevSecOpsコンポーネント付きのエンタープライズガバナンスの問題」として扱っている」とAgiloftのRamosは述べている。これは、DevSecOpsが全体の新しい表面積を単独で吸収することを期待する代わりに、セキュリティ、IT、AIオペレーション、エンジニアリング、法務、および他の間のクロスファンクショナルアライメントを意味する。と彼女は述べている。

「これを正しく得る組織は、インシデントがそれを強要する前に、今ガバナンスインフラストラクチャを構築しているものである」とRamosは述べている。

従来のDevSecOpsプロセスは人間がコードを作成したと仮定している。Ramosは述べている。「AI著作権は新しい質問を提起する:レビューに合格し、後で侵害を引き起こすAI生成コードに誰が責任を負うのか」と彼女は述べている。「系統を追跡する方法は? 開発者がコンシューマツールからAI生成コードをエンタープライズコードベースにコピー&ペーストしているという現実を、潜在的にライセンス、セキュリティ、または準拠バゲッジを持ってどのように処理するのか?」

新しい脅威ベクトルが生じる

新しい脅威が出現しており、その多くはAIの増加する使用に由来している。

「DevSecOpsは現在、それが対処するために存在しなかった新しい攻撃表面をカバーする必要がある」とRamosは述べている。「AIモデル自体、それらに送信されるプロンプト、それらを微調整するために使用されるデータ、本番システムに供給される出力は、すべて脅威ベクトルである。これは既にストレッチされた規律の上に実質的なスコープ拡張である。」

DevSecOpsは「ファーストクラス」アセットとしてAIシステムを含める方法で、アプリケーションおよびクラウドセキュリティを超えて拡張している。IDCのノートンは述べている。「これには、モデル、トレーニングデータ、プロンプト、推論パイプラインの保護、ならびにプロンプトインジェクション、データリーク、モデル操作などの新しい攻撃ベクトルに対処することが含まれる。」と彼女は追加している。

戦略的レベルでは、「組織は開発者の行動のみを制御することから、システムとしてAI支援開発を統治することにシフトしている」とノートンは述べている。「これには、承認されたツールの標準化、使用方針の定義、および開発者環境とAIシステムへのセキュリティ制御の埋め込みが含まれる。」

アプリケーションセキュリティチームは、ダウンストリーム検出と修復のみに依存するのではなく、AIシステムの行動に影響を与えることで、コードがどのように生成されるかを形作る責任をますます負っている。ノートンは述べている。

スキルセットの進化

DevSecOpsへのAIの注入はスキルに大きな影響を与えるだろう。「セキュリティとエンジニアリングチームは、AIシステムの動作方法、データフローの流れ方、およびどこでリスクをもたらすかを理解することを含むより広いスキルセットが必要である」とノートンは述べている。

開発者がセキュアなコード自体の書き方についてより深い知識を持つ必要があるというシフトから離れており、その責任の多くはAIシステムと埋め込み制御を通じて仲介されているとノートンは述べている。

「開発者はAIコーディングツールを責任を持って使用する方法を理解する必要があり、一方[アプリケーションセキュリティ]チームはAIシステムが生成するもの形作るガードレール定義して実装する必要がある」と彼女は述べている。

DevSecOps実践者は「今はAI支援コードのリスクを評価するために十分なAIリテラシーを必要とし、単に『このコードはSQLインジェクションリスクがあるか?』ではなく『AIはこれを微妙なロジックエラーまたはトレーニング済みの脆弱性をもたらす方法で生成したか?』」とRamosは述べている。「それは異なる種類のコードレビュースキルであり、ほとんどのチームはまだ完全に開発していない。」

DevSecOpsチームの必要なスキルセットの中で、Malikは述べている。AIの脅威モデリング;モデルとプロンプトの悪用シナリオを調査し、コーディングコパイロットの安全な使用を確保する能力。データガバナンスと系統;およびサプライチェーンAIモデルとサービスを評価する方法を知っている。

従来のセキュリティ慣行とAIに固有のリスク(プロンプトインジェクション、データリーク、モデルの悪用など)を理解するエンジニアの需要が増加しているとVangalaは述べている。「チームはますますDevOps、アプリケーションセキュリティ、AIシステムアーキテクチャを組み合わせたハイブリッドスキルが必要である」と彼は述べている。

オーバードライブのオートメーション

AIがあらゆる領域で及ぼす最大の影響の1つはオートメーション増加であり、DevSecOpsにAIを適用することで今後数ヶ月間でオートメーションがますます一般的になるだろう。

DevSecOps慣行はより機械間、より厳密にループされつつあり、また懸念の分離を強化されている。IDCのノートンは述べている。「セキュリティチームは埋め込まれたガードレール通じてAIシステムがコードを生成する方法を形作っており、同時に自動ワークフロー通じて検出と修復をスケール独立している」と彼女は述べている。

その結果、手動の開発者仲介ハンドオフへの依存性が減少し、コード生成、分析、修復が自動化された相互作用を通じて発生する調整されたシステムへの依存性が増加し、人間は検証と監視に焦点を当てている。

「開発者がAIアシスタントを使用してコードを生成する場合、自動検証チェックは不安全なAPI呼び出し、不適切な認証ロジック、または公開されたシークレットなどの不安全なパターンにフラグを立てる」とVangalaは述べている。「これはダウンストリームテスト環境に到達するセキュリティ問題の数を減らす。」

セキュリティログは異常を識別しアラートを優先順位付けするためにAIモデルを使用してますます分析されている。Vangalaは述べている。「大量の遠隔測定を手動で確認する代わりに、自動化されたシステムは疑わしい活動パターンを強調し、関連する信号を実行可能な洞察にグループ化することでアラート疲労を減らす」と彼は述べている。

翻訳元: https://www.csoonline.com/article/4163355/ai-is-reshaping-devsecops-to-bring-security-closer-to-the-code.html

ソース: csoonline.com