2人の Secure DevOps プロからの価値あるインサイト
Fastly の CISO である Mike Johnson と Brave Software のシニア DevOps エンジニアである Ben Kero は、35年の経験を持ち、セキュリティに情熱を注いでいます。両者とも Secure DevOps を強く信じています。彼らは、それぞれの会社がさまざまな方法で製品をセキュアにし、可能な限り最高のユーザーエクスペリエンスを提供するのを目撃してきました。Mike が Fastly の安全性とコンプライアンスに関するビジョンを指揮し、製品チームと協力して開発者に役立つ Web アプリケーションのセキュリティツールを構築する一方、Ben は Web の最新セキュアブラウザを支える文化を推進背後にある文化を日々推進しています。Mike と Ben は最近、Secure DevOps (または DevSecOps) のコンセプトと、企業がセキュリティを開発パイプラインの中核にする方法について話ました。ここでは、そのハイライトをご紹介します。
トレードオフはあるが、それだけの価値がある。
開発プロセスの早い段階でセキュリティ対策を実装すると、その後の更新や改善により手間がかかる可能性があります。しかし、結果として安全の高いアプリになれば、追加した時間と労力はそれだけの価値があります。
Brave チームは最小権限の原則を実践し、タスクの実行に必要な最小限のアクセスレベルだけを与えています。Ben は、後で機能を変更する場合、機能が必要とする単一の新しい権限を追加しようとして「モグラたたきをする」かもしれない欠点があると言います。しかし、彼はまた、Brave のアプリケーションに提供するセキュリティレベルを上げるために、チームにとってこのトレードオフは受け入れる価値が十分にあると説明しています。これは、将来的にコストのかかるセキュリティ侵害から資産を保護できる可能性があるため、積極的に投資しようというプラクティスです。
Mike と Fastly チームは、この理論をスライディングスケールで見る傾向があります。脆弱性が明らかになったときに、開発プロセスのスケジュールが遅れるほど、潜在的な損害、費用、責任、およびコース修正のための全体的な労力が大きくなります。したがって、セキュリティプラクティスが早ければ早いほど、コード内でチームが実行しなければならない遺物が少なくなります。Mike はまた「絶対的なセキュリティ」を実現することは不可能に近く、企業文化を悪化させ、顧客ニーズを満たさない製品を生み出すような働き方を押し付ける可能性があることも指摘しています。
脅威モデリングがすべての人を成功に導く。
脅威モデリング (アプリケーションの潜在的な脆弱性を特定し、それらの脆弱性の重大度を理解し、それぞれに適切な対策戦略を割り当てるプロセス) は、Fastly が細心の注意を払って実践していることです。これは Fastly にとって最も重要なセキュリティツールの1つであり、作成するのはそれほど難しいことではありません。十分に考え抜かれた脅威モデルがあると、開発者はより迅速に製品を構築でき、セキュリティチームは実行時に何が起こるかを理解できます。また、両方の役割のある人は簡単に異常を識別できます。これは、アプリケーションをどのように実行すべきかを示す優れた設計図であり、脅威モデルの症状が発生した場合にソリューションのマップを提供します。
使用しているオープンソースコードのインベントリがあなたを救う。
あなたのカスタムコードは完璧であらゆる攻撃から保護されているかもしれません。しかし、コードライブラリやオープンソースモジュールから他人のコードを取り込んだ瞬間に、コードベースに潜在的な脆弱性が組み込まれます。さらに、その脆弱性は現時点では存在しない可能性もあります。脆弱性はそれ以降のバージョンのライブラリでのみ持ち込まれるかもしれません。ゼロからすべてをコーディングすることが答えではありません。コードの再利用とオープンソースは、最新のアプリや Web サイトの開発の基礎となるものであり、Fastly にも含まれています。Mike は、アプリ内で使用されるオープンソースコードのインベントリを構築し、管理することを推奨しています。そのコードのどこかに既知の脆弱性が発生したときに自動的にチームに警告できるのが理想です。これは、将来の問題を監視するためのプロアクティブな手法です。
開発者の人間工学が重要。
DevOps サイクルの早い段階でセキュリティ対策を確実に実施するには、開発者を念頭に置いてセキュリティツールを構築することが重要です。Mike によると、セキュリティコントロールベンダーは、ユーザーがセキュリティの専門家であることを前提にすべきではないが、初心者であることも前提にすべきではないとのことです。ユーザーの快適性の評価とセキュリティプラクティスの理解が鍵となります。Mike の著書では、ユーザーを理解するために同じくらい重要なのは可視性だということです。それは、開発者はセキュリティプロフェッショナルと同様に、自分のコードと製品の動作を明確に把握できることを評価するからです。開発者にコードとセキュリティマインドセットの両方の強化を支援できるツールを提供することは、双方にメリットをもたらします。
Ben と彼のチームが価値を見出している機能の中には、修正と新機能の両方の変更ログ、Travis や Terraform などのさまざまなワークフローとツールを統合する方法が記載されたドキュメント、優れた設定とともに何が達成できるかが示されたガイダンス (スクリーンショットにはボーナスポイント !) があります。つまり開発者が最終的なゴールを思い描くのに役立つものです。開発者を中心に考えられたツールは、多層防御セキュリティ戦略で追加のレイヤーを提供することもできます。例えば、Fastly のコードスニペット (設定に直接含めることができる VCL ロジックの短いブロック) は、Brave の S3 バケットをプライベートに保ちます。
Secure DevOps は、デプロイ後のセキュリティを置き換えるものではなく、セキュリティを強化するものである。
CI/CD セキュリティでの学びをデプロイ後のセキュリティの取り組みに応用することで、特に自動化を通じてチームが新たな効率性を構築することが可能になります。Brave チームは GitHub のカスタムアクションを使用して、デプロイされたコードをスキャンし、脆弱性が検出されたときにアラートを送信します。プルリクエストを自動的にオープンし、レビューを開始することもできます。Ben は、脆弱性の発見と修正までの時間を最小限に抑えるツールが、最良のツールであると考えています。
脅威モデルを覚えていますか ?Fastly の Mike のチームは、トラフィックを調べるとき、常に脅威モデルに立ち返り「これは予想される動作なのか、そうでない場合の最適な解決策は何か」を理解します。最初の計画から何らかのずれが見られた場合は、ずれを調査し、必要に応じて対策することができます。(プロのヒント : 対策を探す場合、最初に探す場所はあなたの既存のコントロールであるべきです。WAF はトラフィックの負荷に合わせて適切に設定されていますか。トラフィックが大量な場合、DDoS 対策は適切に適用されていますか) これが、優れた脅威モデルの真の強みです。CI/CD 内とデプロイ後に、総合的な2段階のセキュリティを実現し、最適な次のステップを指示してくれます。
熱心なコミュニティは隠れた役割を果たす。
Brave はコミュニティを活用して、CI/CD ワークフローと自社製品の両方を改善しています。Ben のチームは、パイプラインを合理化するために、他のチームにより構築された再利用可能なツールをセキュリティベンダーが見つけるのに期待しています。一方で、Brave の脆弱性報奨金制度は、ソフトウェアのバグを発見して報告したユーザーやセキュリティ研究者に報酬を与えます。フィードバックループは、ユーザーにとってアプリケーションがより安全になるだけでなく、Brave の信頼の価値にも大きく関わっています。
Fastly は、自社製品とインターネット全体の両方のセキュリティに相互に有益であることが証明されたコミュニティや組織に投資しています。Fastly のエンジニアは、H2O、Wasmtime、Knot DNS、Tokio-rs など、長年にわたって使用してきたオープンソースプロジェクトのいくつかに対して、セキュリティポリシーの開発とファジングの統合を促進してきました。また、IETF に参加して、TLS 1.3 の進化とリリースを支援しました。その一方で、Bytecode Alliance により、Fastly のサーバーレスコンピューティング環境である Compute@Edge の主要テクノロジーが提供されています。この環境で WebAssembly を使用することで、特に強力な分離を保証することができます。
これらの各インサイトに関するさらに技術的な詳細については、以下の動画をご覧ください。