セキュリティと開発:優先順位をめぐる駆け引き
Andrew MacKenzie
2023年11月6日
0 分で読めます今日の変化の激しいテクノロジー環境では、AppSecプログラムを大規模に管理することが極めて重要です。コードベースが拡大し、脅威がますます巧妙化するなか、単一の脆弱性への対処から、すべての開発チームにわたる一貫したセキュリティ体制の構築へと重点が移りつつあります。アプリケーションセキュリティ態勢管理(ASPM)などの新しいアプローチにより、組織は個々の脆弱性への対応にとどまらず、重要なビジネスリスクの管理に重点を置いた包括的なプログラムを統括できるようになります。こうしたツールは、セキュリティコントロールの自動化、リスク分析の強化、脆弱性の優先順位付けを通じて、プロセスを効率化します。
ASPMは新しいアプローチに思えるかもしれませんが、Snykはすでに8年前からこの方向に取り組んできました。Snykは創業当初から、「開発者ファースト」のAppSecツールの先駆者です。私たちの目標は、従来のAppSecツールで単に「左にシフト」するだけでなく、AppSecを真に効果的なものにするには、企業がセキュリティに関するより大きな責任を開発者に委ねる必要があるとチームに伝えることでした。そのためには、開発者向けに構築された、まったく新しいカテゴリーのセキュリティツールが必要でした。
セキュリティの責任を開発者に委ねても、企業のアプリケーションリスク態勢に対する説明責任はセキュリティチームにあります。開発者のツールとセキュリティツールを統合することは、Snykの取り組みの一部にすぎません。それ以上に重要なのは、セキュリティチームと開発チームが協力し、予防を重視したセキュリティに取り組めるよう支援することです。もちろん、Snykのツールの活用に加え、教育やセキュリティチャンピオンプログラムの実施、AppSecの成功指標の定義と測定、最初のアプリケーションチームでの成功をすべてのアプリケーションとチームに広げることも含まれます。この間、お客様を支援してきたなかで、ASPMはアプリケーションセキュリティへの私たちの献身と、蓄積してきた専門知識を製品化した成果を示すものであり、業界のベンチマークとなっています。
ASPMとは?
アプリケーションセキュリティポスチャ管理(ASPM)は、アプリケーション環境全体の可視性、自動化、包括的なセキュリティ対策を活用し、アプリケーションセキュリティプログラムの実施、測定、改善を実現するアプローチです。
ASPMは、ソフトウェアの開発、デプロイ、運用のライフサイクル全体にわたるセキュリティシグナルを集約、相関分析、評価します。その目的は、可視性を高め、脆弱性を管理し、ポリシーの適用を制御することで、アプリケーションセキュリティの有効性とリスク管理を向上させることです。
こうしたツールの可能性を最大限に引き出すには、開発部門とセキュリティ部門の戦略的な連携が不可欠です。セキュリティと開発は別々の領域で動いているように見えることがあり、この連携はしばしば課題となります。ASPMがもたらすメリットを踏まえると、それぞれのチームが何を動機としているのかを理解することが、いっそう重要になります。
各チーム固有の動機を理解することは、Snykのようなセキュリティツールを開発者に広く導入してもらうための鍵です。
チームのニーズ

ニーズが衝突する場面
優先事項:重要なセキュリティパッチと重要な新機能。
スピード:セキュリティの慎重さと開発のスプリント。
ツールの導入:新しいツールをすぐに使いたい開発者が、セキュリティ審査の順番を飛ばしてしまうことがあります。
コミュニケーション:両者が異なる言語で話していることもあります。一方にとってのドキュメントが、もう一方には意味不明に感じられることもあります。
トレーニング:開発者にとって、セキュリティトレーニングは遠回りに思えることがあります。
現状を振り返る:連携のずれを見つける
開発者によるセキュリティツールの導入に関する課題を解決するには、まず既存の連携のずれを把握しましょう。
セキュリティリーダーが自問すべきこと
戦略:セキュリティビジョンに開発者をどのように組み込んでいるか?
ツール:開発者がセキュリティを組み込めるよう、どのように支援しているか?
学習:開発者向けのセキュリティ教育計画はどのようなものか?
フィードバックループ:開発者とセキュリティチームのコミュニケーションはどうか?
エンジニアリングリーダーが自問すべきこと
開発者の視点:開発者はセキュリティにおける自分の役割をどう捉えているか?
課題:開発者向けセキュリティツールの利用に、どのような障壁があるか?
セキュリティチームと開発チームの関係:現在の両チームの関係をどのように定義するか?
失敗から学ぶ:セキュリティインシデントの発生後、教訓をどのように反映しているか?
スプリントの割り当て:スプリントの何パーセントをセキュリティに充てているか?
連携を生み出す:開発者によるセキュリティツールの導入を促進する
連携のずれを特定したら、次はその溝を埋めましょう。
対話
セキュリティリーダー:定期的にセキュリティ情報を開発者に共有し、フィードバックに耳を傾けましょう。
重要な更新を優先する:定期的な連携は重要ですが、開発者に負担をかけないよう、重大なセキュリティ通知と重要度の低いアラートを区別することも大切です。
定期的に会う:開発者との月次または四半期ごとの会議を設け、個別の事象ではなく傾向に焦点を当てて、セキュリティに関する知見を話し合いましょう。
エンジニアリングリーダー:開発者がこうした話し合いに積極的に参加できるよう促しましょう。セキュリティツールのベンダーと直接連携できる担当者を任命します。
シームレスな統合
セキュリティリーダー:SCMやCI/CDにセキュリティツールのチェックを組み込むのは第一歩です。セキュリティデータが可視化され、実際の対応につながるようにしましょう。導入初期はPRのセキュリティチェックやビルドを失敗させず、強制ではなく教育を通じて開発者の信頼を築きましょう。
エンジニアリングリーダー:セキュリティツールを活用するための知識を開発者に提供しましょう。脆弱性アラートへの対応、トリアージ、ポリシーの計画を連携して進めます。
継続的な学習
セキュリティリーダー:開発者向けセキュリティツールを活用し、対象を絞ったセキュリティワークショップを実施しましょう。
エンジニアリングリーダー:ワークショップの内容が業務に直結する場合は、開発者に参加を促しましょう。開発者にとって有益で、関心を引く内容に保てるよう、セッションについてセキュリティチームに定期的にフィードバックを提供します。
共通の指標
セキュリティリーダー: 脆弱性に関するKPIを設定しましょう。指標を共有し、成果を称え、開発者からのフィードバックを歓迎します。
エンジニアリングリーダー:既存の問題を修正するため、スプリントの一定割合を割り当て、技術的負債の解消にかける工数の一部をセキュリティに充てましょう。特に新機能をリリースする際は、スプリント計画にセキュリティ目標を組み込みます。セキュリティアラートについて開発者から継続的にフィードバックを集め、重大な問題とノイズを区別しましょう。
優先順位を付けてセキュリティを維持する
結論として、AppSecプログラムを大規模に最適化するには、個々の脆弱性への対処だけにとどまらず、すべての開発施策に統合されたセキュリティ戦略を確立する必要があります。そのためには、開発者とセキュリティチームそれぞれの動機を理解することが重要です。
Snykのようなプラットフォームは、可視性の向上、セキュリティコントロール、詳細なリスク分析、戦略的な優先順位付けを通じて、セキュリティチームと開発チームの協業を促進できます。脅威を特定するだけでなく、開発者と協力して先を見越した防御を設計し、統一された俊敏で安全なテクノロジー環境を実現する。これが、協働によるアプローチの未来です。
セキュアな開発を加速
Snykは開発者とセキュリティチームをつなぎ、スピードとセキュリティを大規模に両立します。



