ゼロトラスト
「社内ネットワークだから安全」をやめる設計思想。誰であろうとどこからであろうと、アクセスのたびに本人・端末・権限を検証し、侵害は起きる前提で被害を封じ込める。
- 1.前提が逆。「社内=信頼、社外=危険」という境界の内外で線を引くのをやめ、内側からの通信も含めて毎回検証する。
- 2.3原則は「明示的に検証する/最小権限を与える/侵害を前提に設計する」。VPN で中に入れたら勝ち、ではない。
- 3.実装は ID(多要素・継続認証)+端末の状態+アクセスごとの認可が軸。サービス間は mTLS で双方向に身元を証明し合う。
何が問題だったのか:境界防御の限界
従来のセキュリティは「境界防御(ペリメータモデル)」でした。社内ネットワークを城壁とお堀で囲み、ファイアウォールや VPN という“関所”を1か所だけ置く。関所を通って中に入れた相手は信頼する、という考え方です。
この前提は、今のシステムでは成り立ちません。
- 一度突破されると横移動し放題:攻撃者は1台の PC をフィッシングで乗っ取り、関所を正規に通過してしまえば、あとは「信頼された内部」として社内のサーバを次々に渡り歩けます(これをラテラルムーブメント/横移動と呼びます)。お堀の内側はノーチェックだからです。
- そもそも“内と外”の境目が消えた:クラウド(SaaS / IaaS)、リモートワーク、私物端末(BYOD)が当たり前になり、データもユーザーも社外にいる。守るべき城壁の“外側”に本体が出てしまった。
- 内部犯行・認証情報の盗難:脅威は外からだけではありません。盗まれた正規アカウントや内部の悪意は、境界の内側から始まります。
ゼロトラストを「VPN を高機能なものに置き換えること」と誤解しがちですが、逆です。VPN は典型的な境界防御で、「トンネルを通れば内部ネットに丸ごとアクセスできる」という“通したら信頼”の発想そのもの。ゼロトラストはこの「一度通れば中は自由」を否定し、VPN の内側でもリソース単位で毎回認可する方向に進みます。製品を1つ買えば達成、ではなく継続的な検証の仕組みです。
境界防御とゼロトラストの違い
同じ「守る」でも、信頼の置き方が正反対です。
| 観点 | 境界防御(従来) | ゼロトラスト |
|---|---|---|
| 信頼の基準 | ネットワークの場所(社内なら信頼) | 場所では信頼しない。都度の検証結果で判断 |
| 検証のタイミング | 入口で1回(VPN/FW を通過時) | リソースへのアクセスごとに毎回 |
| 突破後の被害 | 内部は素通り → 横移動し放題 | 次の1歩でも再検証 → 封じ込めやすい |
| 権限の渡し方 | 中に入れたら広く付与しがち | 必要な分だけ・必要な時だけ(最小権限) |
| 前提 | 境界を守り切れば安全 | いつか侵入される前提で被害を最小化 |
ゼロトラストの3原則
NIST SP 800-207 をはじめ、各社の定義に共通する核は次の3つです。これがゼロトラストの“背骨”です。
- ① 明示的に検証する(Verify explicitly):すべてのアクセスを、入手できる情報を総動員して認証・認可する。ユーザー ID とパスワードだけでなく、多要素認証(MFA)/端末の状態/場所/時刻/普段と違う挙動かまで見て判断する。「いつもの社内 IP だから OK」のような暗黙の信頼を排除します。
- ② 最小権限(Least privilege):与える権限は必要最小限・必要な時だけ。管理者権限を常時持たせず、必要なときだけ昇格させる(最小権限の原則そのもの)。万一アカウントが乗っ取られても、できることが小さければ被害も小さい。
- ③ 侵害を前提にする(Assume breach):「いつか必ず破られる」前提で設計する。ネットワークを細かく区切り(マイクロセグメンテーション)、横移動を止め、すべてのアクセスを記録・監視して異常を素早く検知する。
「決して信頼せず、常に検証せよ」。これがゼロトラストを一言で表すスローガンです。ポイントは “always”――1回検証して終わりではなく、セッションの途中でも条件が変わったら再評価すること。たとえば「ログイン後に端末のウイルス対策が無効化された」「急に海外からのアクセスに変わった」なら、その場でアクセスを止める。これが次に出てくる“継続認証”の考え方です。
どう適用するか:ID・端末・認可・通信
抽象論で終わらせないために、実装の柱を4つに分けて見ます。守る対象が「人のアクセス」なのか「サービス間通信」なのかで、効く道具が変わります。
1. アイデンティティ(誰か)を強くする
すべての起点は「本人確認」です。パスワードだけは脆いので MFA を必須にし、可能ならパスワード保存の弱点ごと避けられるパスキー(FIDO2 / WebAuthn)やフィッシング耐性のある方式へ寄せる。さらに SSO + IdP(ID プロバイダ)に認証を集約し、「誰が・いつ・何にアクセスしたか」を一元的に検証・記録できるようにします。
2. 端末(どの端末か)の状態を見る
正しいユーザーでも、マルウェア感染した端末からなら危険です。そこで「OS が最新か」「ディスク暗号化されているか」「EDR / ウイルス対策が動いているか」といった**端末の健全性(デバイスポスチャ)**をアクセス条件に組み込みます。条件を満たさない端末は、たとえ本人でもブロックや限定アクセスに落とす。
3. アクセスごとに認可する(継続認証)
ゼロトラストの肝は、1回ログインしたら終わりにしないことです。ポリシーエンジンがリクエストごとに「ユーザー × 端末 × リソースの機密度 × 文脈(時刻・場所・挙動)」を評価し、その都度 許可/拒否/追加認証(MFA を再要求) を決めます。これを継続認証(Continuous Authentication)/適応型アクセスと呼びます。
# 「いつもの場所・健全な端末」なら通すが、文脈が崩れたら止める/追加認証する
リクエスト: ユーザー=u123 / 端末=会社支給ノート(EDR稼働) / リソース=給与DB / 場所=社内
→ 評価: 端末OK・本人MFA済み・普段どおり → 許可
リクエスト: ユーザー=u123 / 端末=私物スマホ(状態不明) / リソース=給与DB / 場所=海外IP
→ 評価: 端末ポスチャ不明・地理が異常・機密度=高 → 追加MFAを要求 or 拒否
ここで認証(Authentication:誰か)と認可(Authorization:何をしてよいか)を分けて考えるのが大切です。本人だと確認できても、そのリソースにその操作をしてよいかは別問題(→ 認証と認可)。ゼロトラストは両方を、アクセスのたびに突き合わせます。
4. サービス間は mTLS で相互に身元を示す
人の話だけではありません。マイクロサービスやサーバ同士の通信も「同じ社内ネットワークだから信頼」をやめます。ここで使うのが mTLS(相互 TLS)。
通常の TLS はサーバだけが証明書で身元を証明し、クライアントは名乗りません(だから誰でも接続を試せる)。mTLS はクライアント側も証明書を提示し、両者がお互いの正体を暗号的に検証します。これにより「正規の証明書を持つサービスだけが通信できる」状態を作り、なりすましたプロセスの侵入を防ぎます。
| 観点 | 通常の TLS(片方向) | mTLS(相互 TLS) |
|---|---|---|
| 証明書を出す側 | サーバのみ | サーバとクライアントの両方 |
| 検証の向き | クライアントがサーバを確認 | 互いに相手を確認(双方向) |
| 主な用途 | ブラウザ ↔ Web サーバ | サービス間通信・サービスメッシュ |
| ゼロトラストでの役割 | 通信の暗号化が中心 | 「正規のサービスか」の身元保証まで担う |
実務では、各サービスにサイドカープロキシを挟むサービスメッシュ(Istio / Linkerd 等)が、この mTLS をアプリ側のコードを変えずに自動付与してくれることが多いです。詳しい仕組みは mTLS の方式ページ を参照。
やりがちな落とし穴
考え方は綺麗でも、運用で形骸化しやすいポイントがあります。
ベンダーの「ゼロトラスト対応」製品(ZTNA / SASE 等)を導入しても、ポリシーが「全社員に全リソース許可」のままなら境界防御と変わりません。本質は製品ではなく (1) リソースを洗い出し、(2) 誰が何に必要かを定義し、(3) 最小権限で許可し、(4) 常に検証・記録する という運用設計です。ツールは手段に過ぎず、ポリシーを作り込み・見直し続けることが中身です。
MFA は必須ですが、SMS ワンタイムコードや「通知をタップで承認」型は突破されうる点に注意。攻撃者がリアルタイムで偽サイトに入力を中継する中間者フィッシングや、何度も承認通知を送って誤タップを誘う MFA 疲労攻撃が実在します。明示的検証を本気でやるなら、**フィッシング耐性のあるパスキー(WebAuthn / FIDO2)**を優先しましょう。「MFA を入れた=安全」で止めないのがゼロトラスト的な姿勢です。
ゼロトラストは“オン/オフ”ではなく段階的に近づける道のりです。いきなり全システムを作り替える必要はありません。まず守るべき重要資産(保護対象=Protect Surface)を1つ決め、そこへのアクセスに MFA と最小権限・ログを適用する。次にネットワークを区切って横移動を絞る…と小さく始めて広げるのが現実的です。完璧な“ゼロトラスト完成”より、暗黙の信頼を一つずつ潰す方が効きます。
まとめ
ゼロトラストは新しい魔法の製品ではなく、「場所で信頼しない/最小権限で渡す/侵害を前提に封じ込める」という設計の構えです。城壁で囲って中を信じる代わりに、アクセスのたびに本人・端末・権限・文脈を検証し続ける。人のアクセスは MFA と継続認証で、サービス間は mTLS で――どちらも「Never trust, always verify」の一点に貫かれています。
関連として、攻撃が始まる起点になりやすい盗まれた認証情報やセッションは Web 認証 と地続きで、ゼロトラストが繰り返し参照する“与えすぎない”発想は 最小権限の原則 そのものです。
セキュリティ Article
ゼロトラストを実務で読む
TL;DRは入口です。実際に選ぶ・使う段階では、何を解決するか、何と比較するか、導入後にどこで詰まるかまで見る必要があります。
解決すること
ゼロトラスト
比較で見る軸
難易度: intermediate / カテゴリ: セキュリティ / タグ数: 4
導入後に効く点
3原則は「明示的に検証する/最小権限を与える/侵害を前提に設計する」。VPN で中に入れたら勝ち、ではない。
先に潰すリスク
用語だけ覚えても、設計・実装・運用でどこに効くかを確認しないと判断を誤る。
- 難易度
- intermediate
- カテゴリ
- セキュリティ
- タグ数
- 4
判断チェックリスト
- 自社の用途が「ゼロトラスト / 認証」に近いか確認する。
- 強みである「前提が逆。「社内=信頼、社外=危険」という境界の内外で線を引くのをやめ、内側からの通信も含めて毎回検証する。」が本当に評価軸になるか確認する。
- 注意点の「用語だけ覚えても、設計・実装・運用でどこに効くかを確認しないと判断を誤る。」を運用で吸収できるか確認する。
- 公開値や仕様値は、対象プラン・対象機種・対象リージョンまで確認する。
- 既存システム、ID、ネットワーク、監視、バックアップとの接続方法を先に洗い出す。
- 小さく試してから、本番移行、権限設計、障害時手順、コスト監視を決める。