ゼロトラスト実装の5ステップ(NSTACモデル)入門 ~ 第5回:ステップ5 — 監視と保守

2026年9月4日
ゼロトラストWGリーダー 諸角昌宏

この回のねらい

第1回で守る対象(プロテクトサーフェス)を定義し、第2回で流れを可視化し、第3回でアーキテクチャを構築し、第4回でポリシーを作った。これで一通りの実装は終わる。では、なぜまだステップ5「監視と保守」があるのか。答えは、ゼロトラストは「作って終わり」ではないからである。

図1:ゼロトラスト導入の5ステップ。ステップ5は、変化を検知したらステップ1へ戻る「反復」の入口でもある

ステップ5には2つの部分がある。監視(モニター):防御が正しく働いているか、異常が起きていないかを継続的に確かめることと、保守(メンテナンス):ポリシーや設定を、変化する環境に合わせて健全に保つことである。以下、順に見ていく。

よくある誤解:ステップ5から始めてはいけない

ステップ5はとかく忘れられがちだが、逆にステップ5から始めてしまう組織も多い。「とにかくログを全部集めて、何か悪いことが起きていないか探す」というやり方、いわゆるMDR的なアプローチである。だが、ログをすべてSIEMやデータレイクに放り込んで、そこから何かを見つけようとするのは骨が折れるうえ、それ自体は“防御”ではない

MDRは検知と対応(Detection & Response)であって、防御・予防(Prevention)がない。したがって常に後手に回ることが多い。つまり、「侵害されて、どこで何が起きたかは分かったが、すでに侵害されてしまっている」という事態になりやすい。ゼロトラストが目指すのは、侵害はいずれ起きるという前提に立ちながらも、それが実際の被害に広がる前に、できるだけ手前で食い止めることである。まずステップ1〜4で防御を築き、そのうえでステップ5の監視で「まだ健全か、対応が要るか」を確かめる。この順序が肝心である。

監視(モニター)

ゼロトラストの原則の一つに、「すべてのトラフィックを検査し、記録せよ(inspect and log all traffic)」がある。監視が要であることを示す言葉である。プロテクトサーフェスを小さく切り分けたことで、一つひとつについて「いま何が起きているか」という多くの情報(ログ)が得られる。配置したコントロール(ファイアウォールやEDRなど)が、その動作結果を、こちらに知らせてくれるようになる。

ログとイベントは違う

まず、ログイベントを区別したい。監視で主役になるのはイベントである。

ログイベント
中身見えたことの記録そのものセキュリティ機器が「意味のある出来事」を検知したもの
IP AがIP Bにアクセス/プロセスが起動/ボタン押下ブルートフォース検知、マルウェア検知、普段と違う国からのログイン、大量アップロード
扱い調査(根本原因の追跡)に使う。全部を長期保存はしない監視の主役。1件ずつ検査する。より長く保持できる

表1:ログとイベントの違い(Threat Talksを基に作成)(注:本ブログで参照しているThreat Talksは、Threat Talks(ON2IT × AMS-IX)の解説動画である)

なお、ここでいう「イベント」は、セキュリティ機器がフィルタして「意味がある」と判定したものを指す(無害な状態変化のログは含まない)。一般的な情報セキュリティの用語では、サービスの起動・停止や設定変更といった無害な状態変化も含めて「イベント」と呼ぶ、より広い使い方をすることが多い。本稿では、そのうち監視の対象として意味を持つものに絞って「イベント」と呼んでいる。

トラフィックのログをすべて7年間も保存する必要はない(保存コストばかりかさむ)。一方、セキュリティ機器が検知したイベントは、1件ずつ確かめる価値がある。ログは、イベントが起きたときに根本原因をたどるための材料として効いてくる。

プロテクトサーフェスの「文脈」を足す

ここでステップ1が効いてくる。ファイアウォールのイベントは、そのままではIPアドレスしか教えてくれない。だが、そのIPが「どのプロテクトサーフェスか」に翻訳できれば、第1回で記録したメタデータ(所有者・重要度・扱うデータ)が結びつき、「Active DirectoryからCRMへのアクセス」といった業務の文脈が見えてくる。

同じイベントでも、文脈が違えば対応が変わる。たとえば「ブルートフォース攻撃をブロックした」という同じイベントでも、インターネットから顧客向けWebへの攻撃ならよくあることでブロック済みなら無視してよいと考えられる。しかし、もしそれが社内のActive Directoryから発生していたら、たとえブロックされていても調査すべきである。すでに誰かが侵入して横移動を試みているのかもしれない(あるいは、サービスアカウントのパスワード期限切れによる誤検知かもしれない)。いずれにせよ、起きてはならないことなので確かめる必要がある。

IoG/IoC/Unknown で振り分ける

では、大量のイベントをどうさばくか。有効なのは、イベントを3つに振り分ける考え方である。文脈を足すことで、この振り分けができる。

図2:イベントに文脈を足して、IoG/IoC/Unknown に振り分ける(Threat Talks「監視」回を基に作成)

  • IoG(Indicator of Good/良い兆候):防御が正しく働いた合図(例:インターネットからの攻撃をブロック)。記録して次へ行く。
  • IoC(Indicator of Compromise/侵害の兆候):明らかに不正(例:重要なプロテクトサーフェスでEDRがマルウェアを検知)。即対応する。
  • Unknown(不明):断定できないもの(例:ADからWebメールへのブルートフォース)。SOCエンジニアが調査する。

多くのツールは、機器が出す「中身(コンテンツ)」だけを見るため、良い判断が難しい。ゼロトラストは、ここにステップ1の文脈を足せる点が強い。おすすめしたいのは、「ログを全部ためて、その中から怪しいものを拾う」のではなく、機器が出すイベントを1件ずつ、順に検査していくという発想である。コントロールはそれぞれ意味があって置かれているものなので、本来は良いイベントを上げてきてくれるはずである。もし何も上がってこないようなら、ツールの選び方や設定を見直すサインかもしれない。イベントの数は膨大になるため自動化が前提になるが、その自動化を支えるのが、いま述べた文脈「そのイベントがどのプロテクトサーフェスのものか(所有者・重要度・扱うデータ)」という背景情報である。同じイベントでも、文脈があれば振り分けやすくなるが、なければ判断がつきにくい。AIも助けにはなるが、この文脈を与えて初めて、より的確に働いてくれると思われる。

対応の自動化(Rules of Engagement)とキルスイッチ

振り分けの先には、対応の自動化(Rules of Engagement)がある。プロテクトサーフェスの重要度に応じて、どこまで自動で対応するかを決めておく。たとえば、ERPのような重要なプロテクトサーフェスで、EDRがランサムウェアだと判定したプログラムが動き出したら、そのプロテクトサーフェスをネットワークから隔離(キルスイッチ)して影響範囲(ブラスト半径)を抑える。

この隔離は、完全に自動化することも、人が承認する形にすることもできる。確度の高い脅威(明らかなIoC)で、かつランサムウェアのように広がる速度が速いものは、人の判断を待つ時間自体が被害を広げてしまうため、全自動で即座に遮断する運用が現実的である。一方、誤検知の影響が大きい場面などでは、自動化が「これを実行してよいか」という提案だけを整え、SOCが承認ボタンを押して実行する中間形(半自動)も取れる。どちらか一方に決める必要はなく、全自動が不安なら、まず承認を挟む形から始め、信頼度が上がったら段階的に自動化を広げる、という進め方もできる。ただし承認を待つ間にもランサムウェアは広がるため、承認フローを選ぶ場合でも、できるだけ素早く判断できる体制にしておく必要がある。

そして基本姿勢は防御優先(prevention first)である。IPS等は検知モードではなくブロックモードで使う。最良の対応ルールは「防いでブロックする」ことであり、最悪は「侵害されてから原因を探す」ことである。ブロックできたら、その結果をイベントとして受け取り、検査する。

キルスイッチは「セグメンテーションの通信簿」

あるプロテクトサーフェスを丸ごと遮断しようとすると、実はネットワークが十分に分離されておらず、「遮断したらネットワークの半分が止まる」と判明することがある。この予期しない巻き添えの大きさ(ブラスト半径の大きさ)は、次の2つのどちらか、あるいは両方が不十分だったことを教えてくれる。

  • ステップ1:守る対象を、他と混ざらない形で明確に切り分けて定義できていたか(プロテクトサーフェスの境界があいまいなままだと、1つを止めるつもりが他まで巻き込んでしまう)
  • ステップ3:その分離を、設計どおりマイクロセグメンテーションとして実装できていたか(設計は分離のつもりでも、実装が甘いと同じセグメントに相乗りしたままになる)

つまり、「これを止めたら他も止まる」と分かった瞬間は、分けたつもりで実は分かれていなかったことの証拠であり、実地で見落としを発見できる機会でもある。だからキルスイッチの検討は、なぜプロテクトサーフェスをきちんと分けるべきかを組織に示す良い材料にもなる。

保守(メンテナンス)

監視と並ぶもう一つの柱が保守である。作った防御は、放っておくと質が下がっていく。それに抗う仕組みが保守である。主な観点は次のとおりである。

ポリシーの検証

ここでいうポリシーは、いわゆる情報セキュリティ方針のたぐいのものではなく、実際に機器で動いている運用ポリシー、つまりファイアウォールのアクセス規則、EDRの設定などである。とくにファイアウォールでは、新しいアクセスは足されるが、不要になったアクセスは消えずに残りがちである。サーバーを撤去しても何も壊れないので誰も申告せず、「壊すのが怖い」ため規則は何年も放置される。今はネットワークセキュリティポリシー管理(NSPM)ツール(Tufin、AlgoSec、FireMon など)や、ファイアウォール自体に組み込まれた分析機能(例:Palo Alto NetworksのPanoramaが持つセキュリティポリシーオプティマイザ)を使えば、使われていない・重複した規則を検出できるので、変更のたび(少なくとも定期的)に、ポリシーが今も正しいかを点検する。ログが無効になっていないか、EDRでディスク全体をスキャン除外していないか、消し忘れの一時規則がないか、構成管理に近い実際に動いている設定の点検である。

ベンダー更新と“眠っている新機能”

ファイアウォール等は、クラウド経由で自動更新される。シグネチャだけでなく、新機能が配信されることもある。典型的なのは、新しいURLカテゴリ(例:登録されたばかりのドメイン)の追加である。ところがベンダーは、更新で通信を突然止めて障害を出さないよう、新機能を既定で「許可(=素通り)」にして配信することが多い。そのため多くの人が新機能に気づかず、有効化しないまま眠らせてしまう。すでに料金を払っている機能なので、更新のたびに点検し、そのプロテクトサーフェスに使えるものは有効化する。機器を新調したときも、古い設定をそのままコピーせず、新機能を評価し直すことが必要である。

トランザクションフローと実態の突き合わせ

第2回で「どのプロテクトサーフェス同士が通信してよいか」を(業務オーナーの合意のもとで)定義した。運用フェーズでは、定義したフローと、実際に観測されるフローを突き合わせる。定義したのに見えないフローがあれば、ステップ2の誤りか設定ミスを疑う。逆に、定義していないのに流れているフローがあれば、なぜかを調べる。つまり、正当なものか、それとも横移動の兆候かである。ステップ2〜4を正しくやれていれば、本来ここはきれいに一致するはずで、ずれはこれまでの仕事を検算する良い機会になる。

挙動分析(ベースライン)

ここで、監視の節との関係を整理しておきたい。両者は矛盾しているように見えて、実は役割が異なる、補完し合う仕組みである。

  • イベント検査(監視の節):機器が、その場・その1件について「これは意味がある」と判定したものを、その都度チェックする(リアルタイム・1件単位)。ここで人間(SOCエンジニア)が見るのは、あくまで機器が意味づけ・絞り込んだ結果である。
  • 挙動分析:時間をかけて蓄積したログ全体を、機械学習が処理し、統計的な「通常の姿(ベースライン)」を学習して、そこからの逸脱を見つける(蓄積・傾向単位)。ログ全体に目を通すのは機械学習であって、人間ではない。人間が見るのは、やはりベースラインから外れたという判定結果(アラート)だけである。

つまり、「全部のログを人間が精査する」というやり方には、どちらの仕組みでも戻らない。同じログという材料を、機器が1件ずつその場で判定する(イベント検査)か、機械学習が蓄積してから傾向として判定する(挙動分析)かの違いであり、いずれも人間が最終的に目にするのは、絞り込まれた結果だけである。

挙動分析が拾えるのは、単発のイベント検査では見えない、じわじわとした変化や、複数の小さな兆候の積み重ねである。やり方は、ログをXDR(あるいは次世代SIEM・SIEM 2.0とも呼ばれる仕組み)に集約し、機械学習にかける。すると「自分たちの環境では、ふだんこういう挙動が普通だ」という平常時の姿(ベースライン)を学習できる。そのうえで、ベースラインと大きくかけ離れた挙動、つまり普段と違う量・普段と違う相手・普段と違う時間帯のトラフィックなどが現れたら、アラートを上げる。

ただし、誤検知(false positive)が多くなりやすいという弱点も認識しておきたい。たとえば小売業なら、繁忙期(セール・年末商戦など)に通信量が跳ね上がるのは正常な変化だが、対策をしていなければベースラインから外れた「異常」として大量にアラートが出てしまう。同様に、システムの一部がフェイルオーバー(切り替え)しただけでも、普段と違うトラフィックパターンとして検知され、誤検知につながりやすい。

こうした誤検知を抑えるには、季節性やイベントごとの例外をあらかじめ調整しておく必要があり、ある程度の運用の作り込みが求められる。そのため挙動分析は、監視・保守の他の要素(イベントの振り分け、ポリシー検証、フロー突合)が一通り運用に乗ってから取り組む、成熟度の高い最後の一手として位置づけるのが現実的であると考える。

アーキテクチャの変化は「ステップ1へ戻る」合図

クラウド移行、VMからコンテナへ、オンプレのKubernetesからクラウドへ、サービスメッシュのサイドカー廃止など、こうしたアーキテクチャの変化は、可視性を変えてしまう。たとえばサイドカーがあれば見えていた通信が、廃止で見えなくなる。ネットワーク的には分離しているつもりでも、すべてが一つのプラットフォームに集約されれば、もはや分離ではなくなる。

怖いのは、クラウドチームが移行を進め、ネットワークチームが気づかないうちに「見えなくなる」ことである。監視で「これまで見えていた2つのプロテクトサーフェス間の通信が、急に見えなくなった」と気づいたら、それは大きな合図である。こうした変化を検知したら、ステップ1に戻ってやり直す。5ステップは反復であり、ステップ5は次の反復の引き金である。ただし大枠はできているので、多くの場合は所有者や一部のコントロールなど、変わるのはわずかな部分だけである。だからこそ、ゼロトラストの考え方をCISOの上まで含め、組織のあらゆる層に根づかせ、開発者が「クラウドネイティブな機能を使うと、セキュリティに影響するかもしれない」と気づける状態にしておくことが大切になる。

まとめ — そして、また1へ

最終回では、作った防御を健全に保つステップ5を扱った。要点は次のとおりである。

  • ステップ5から始めない。まずステップ1〜4で防御を築く(MDRだけでは常に後手)
  • 監視はイベントが主役。1件ずつ検査し、プロテクトサーフェスの文脈でIoG/IoC/Unknownに振り分ける(自動化+文脈)
  • 対応は自動化(Rules of Engagement)と防御優先。重要なPSはキルスイッチで隔離し、ブラスト半径を抑える
  • 保守で質を保つ:ポリシー検証・眠った新機能の有効化・フローと実態の突き合わせ・挙動分析
  • 大きな変化はステップ1へ戻る合図。5ステップは回り続ける

そして、ここまでの5ステップを、最初から全システムに広げる必要はない。第1回で示した「練習台から本命へ」がここでも効いてくる。まずは重要度の低い1つのプロテクトサーフェスで、定義・可視化・構築・ポリシー・監視保守という一連の流れを小さく回してみる。そこで運用を成熟させ、勘所をつかんでから、優先度の高いシステムへと広げていく。小さく始めて、回しながら育てるのが、5ステップを無理なく定着させる進め方である。

プロテクトサーフェスを定義し(1)、流れを可視化し(2)、アーキテクチャを構築し(3)、ポリシーを作り(4)、監視と保守で守り続ける(5)。そして、環境が変われば、また1に戻る。ゼロトラストは、一度きりのプロジェクトではなく、回し続ける取り組みである。この5ステップという実践的な地図があれば、その歩みを、着実に、そして繰り返し進めていける。全5回(+第1.5回)にわたる本シリーズを、実装の一助としていただければ幸いである。

以上

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です