アプリケーション侵入テストについて理解する
設計によるセキュリティと自動化されたセキュリティ テストでは、悪用される前に脆弱性を修正することで侵害を防ぐことに重点を置いています。 Microsoft では、侵害想定戦略を使用して侵害の可能性に備えてサービスを準備することで、これらの実践を補完しています。 侵害想定は、内部および外部のアプリケーション、サービス、ID、ネットワークのすべてについて安全ではないもの、すでに侵害されているものと仮定してアプローチすることで、これらに置く信頼を制限します。 これらの原則は、敵対者が与えうる被害を軽減し、セキュリティ上の脅威を迅速に検出して対応できるようにすることで、セキュリティの脆弱性の影響を制限するのに役立ちます。
SDL 侵入テスト
SDL では、自動化された動的コード テストに加えて、すべてのアプリケーションに対する定期的な侵入テストが必要です。 サービス チーム アプリケーションの通常の侵入テストは、定期的に実施されます。 アプリケーションの侵入テストでは、他のテスト方法では検出されなかったセキュリティ上の欠陥を検出する場合があります。 また、ログ記録と検出機能をテストして、実際の攻撃者から運用システムを保護するために必要なデータを Microsoft のセキュリティ対応チームに提供します。
また、サービス チームは、セキュリティ レビューの一環として、必要に応じてソフトウェア インターフェイスに対してターゲット侵入テストを実行します。 標的型の侵入テストは、特定の種類の脆弱性を検出するように設計されています。 これらのテストは、主なソフトウェアの機能やデータフローの潜在的な脆弱性に対する保護を追加で提供します。
攻撃シミュレーション
コードのリリースが承認され、運用環境で実装された後は、運用システムに対する攻撃をシミュレートして、運用上のセキュリティのテストを継続します。 攻撃シミュレーションでは、運用上の SDL 要件に対する DevOps モデルの運用側のテストを行います。 攻撃シミュレーションの主な目的は、検出能力や対応能力を検証することです。 攻撃シミュレーションが新しい脆弱性やサービスへの抜け道を特定するために使用されるその一方で、主な優先事項は、侵害された後に何が起こるかをテストすることです。 攻撃を迅速に検出することができるのか? 効果的に修復し、攻撃者を排除することができるのか? 攻撃シミュレーションやその他の形式のペネトレーション テストによって、これらの質問に継続して回答することが可能です。
Microsoft では、フルタイムの従業員の社内攻撃的なセキュリティ チームを利用して、システムに対する攻撃をシミュレートすることで、継続的な侵入テストを実施しています。 これらのチームを Red Team と呼びます。 レッド チームは、脆弱性やセキュリティの構成ミスを検出して利用することで、検出されずに Microsoft のシステムの侵害を試みます。 Red Team の取り組みは、実際の攻撃をシミュレートし、Microsoft のセキュリティ対応チームの機能をテストします。 内部侵入テストのコンテキストでは、Microsoft のセキュリティ対応チームは Blue Team と呼ばれます。 ブルー チームの業務は、セキュリティ監視システムおよびセキュリティ インシデント対策プロセスを使用して、レッド チームの攻撃を回避し、検出して、対応することです。
Red Team は、実際の敵対者と同じ戦術、手法、手順を使用して、Microsoft Online Services のシステムと運用を攻撃します。 レッド チームの攻撃は、Microsoft のセキュリティ検出や対応能力をテストし、製品の脆弱性、構成エラー、無効な想定、その他のセキュリティの問題を制御の範囲内で特定するのに役立ちます。 レッド チームによる侵害が発生するたびに完全な情報開示が行われ、両チームが協力して運用上のセキュリティ ギャップを特定して解決し、バグをサービス チームに割り当ててコード レベルで脆弱性に対処し、侵害の検出や対応について改善を進めていきます。
レッド チームによる攻撃シミュレーションは、お客様に悪影響を与えることなく、現実的な攻撃をシミュレートするように設計されています。 お客様のテナントが Red Team 攻撃の対象になることは決してありません。Red Team 侵入テストは、セキュリティ上の脅威を防ぎ、検出し、対応するために Microsoft Online Services を確実に準備するのに役立ちます。