この記事の内容
実際に
DevSecOpsの スピードが 求められる 世界で、 脅威モデリングは どう 活用できる?
DevSecOpsの
この
脅威モデリングとは?
脅威モデリングでは、
第一人者の
何を
構築するのか?システム内の データの 流れ、 データが 通過する 境界、 各接続に 使われる 技術を 評価します。 何が
起こりうるのか?接続部分を 悪用する あらゆる 手段を 検討します。 それに
どう 対処するのか?それぞれのエクスプロイトに 対する 防御策を 設計します。 適切に
実施できたか?最後の、そして 最も 重要な 問いです。 プロセスを 振り返って 検証し、 作業に 終わりは なく、 常に 改善の 余地が ある ことを 思い出させてくれます。
その後、
脅威モデリングはいつ実施すべき?
脅威モデリングを
最初から
脅威モデリングの歴史
脅威モデリングの
それ以来、
Yahoo、
202
0年には 18,000件を 超える 脆弱性が 記録され、 その 約4分の 1が 深刻度の 高い ものでした。 企業が
データ侵害の 修復に 支払った 費用は、 平均386万ドルでした。 マルウェア攻撃と
ランサムウェア攻撃は、 それぞれ 358%、 435%増加しました。
脅威モデリングのヒント
脅威モデリングの
なりすまし
(Spoofing) :何者かに なりすまして 認証を 侵害する。 改ざん
(Tampering) :システムを 侵害し、 さらなる 悪用を 可能に する。 否認
(Repudiation) :攻撃の 痕跡を 隠して 検知を 妨げたり、 攻撃中の ログを 正常に 見えるよう 偽装したりして、 意図を 隠し、 攻撃を 継続させる。 情報漏えい
(Information Disclosure) :システム内の あらゆる 場所から 機密データを 抜き取る 方法を 見つけ、 機密性を 侵害する。 サービス拒否
(DoS) :システムを 適切に 動作させる ために 必要な リソースを 意図的に 枯渇させ、 ユーザーの システムアクセスを 妨げる。 権限昇格
(Elevation of Privilege) :システムを 欺いて アカウントに 過剰な 権限を 付与させ、 システムへの アクセスを 拡大する ことで 認可を 侵害する。
データフロー図
「何を
構築するのか?」DFDは、 システムと そのさまざまな 信頼境界を 図示する 方法の 一つです。 セキュリティ脅威を 理解する ための 第一歩と なります。 「何が
起こりうるのか?」STRIDEでは、 システムの 構成を 踏まえて 各攻撃タイプを 検討し、 この 問いに 焦点を 当てます。
たとえば
この
すべての
呼び出しに 対する ペイロードサイズの 上限 特定の
ユーザーまたは IPアドレスに 対する API 呼び出し回数の 上限
これに
こうした
従来の脅威モデリングがDevSecOpsの課題となる理由
従来の
しかし、
開発を
ビルドパイプラインのできるだけ
上流で、 自動化と テストを 推進する (「シフトレフト」)。 自動化の
対象は アプリケーションコードだけではありません。 新しい 技術に より、 システムインフラストラクチャも コードで 定義して テスト可能に なっています。 こうした
自動化に よって継続的インテグレーション/継続的デリバリー (CI/CD)が 加速し、 機能や バグ修正を より 頻繁に、 より 高い 信頼性で デプロイできます。
その
DevOpsプロセスに活かすための脅威モデリング教育
IBMの
脅威モデリング は
難しく ありません。開発者や マネージャーが 何を 実現できるか 理解できるよう、 説明する 機会を 活用しましょう。 システム開発の 現在の 状況から、 「今」 できる ことを 始めます。 システムに
関わる すべての 人が 学びから 恩恵を 受けます。各チームメンバーの 役割に 合った 脅威モデリングの 知識を 提供します。 理解を 深めれば、 スプリントの ストーリー計画で 解決策の 検討に 参加し、 適切に 優先順位を 付けられます。 教育も
「シフトレフト」 できます。脅威モデリングへの 認識を、 パイプラインのできるだけ 上流に 移します。 これに より DevSecOpsで 優れた プラクティスが 生まれ、 脅威の 特定と 緩和を できるだけ 早い 段階から 取り入れられます。 脅威モデリングツール で
「右に 拡張」 できます。サードパーティ製ツールを 使えば、 SDLCの 後 半段階でも 脅威の 自動検知や 緩和の 自動化が 可能に なります。 本番環境まで 保護を 続ける こともできます。
Jeanmarie氏は、
アジャイルのストーリー設計に脅威モデリングを取り入れる4つのステップ
セキュリティ推進者の
脅威モデリングの
この
新機能に
関わる 重要な 資産は 何か? 重要な
資産ごとに、 起こりうる 最悪の 事態は 何か?
話し合いを
重要な
機能F1およびF2を、 不正 使用から 保護する。 非
公開データXYZを、 漏えいから 保護する。 購入Pの
金銭取引を、 通信中の 盗難から 保護する。
こうした
このように
Miller氏は、
計画:セキュリティ要件を
ストーリーに 盛り込む。 構築:脅威緩和策
(セキュリティコントロール)を SDLCに 組み込む。 テスト:脅威緩和の
ユースケースを 含むストーリーを 作成し、 テストケースに する。 デプロイ:テストケースを
実装する モニターを 作成し、 アラートを 設定する。
Miller氏は、
まとめ
DevSecOpsの