ITセキュリティは、複雑で多面的な分野であり、企業は多種多様なセキュリティ対策を必要としています。その中でも、最小特権の原則は、ミッションクリティカルなIT資産へのアクセスを保護するベストプラクティスとして、サイバーセキュリティの領域で重要視され始めています。最小特権の原則は、人によるアクセスに限らず、企業ネットワーク内の特権システムにアクセスする必要があるアプリケーション、自動化ツール、デバイス(IoTエンドポイントなど)も適用対象です。
最小特権の原則(POLP)とは?
最小特権の原則(POLP)とは、効率的に作業を進めるために必要最小限の特権をユーザーに付与するプロセスを指します。最小特権アクセスでは、永続的な(常時有効な)特権がユーザーに付与されることはなく、ユーザーの役割とその時点の作業内容に基づいて、アクセス権限が割り当てられます。この原則を組織内で徹底することで、組織の攻撃対象領域を大幅に縮小し、リスクを低減するとともに、データ保護基準への準拠を実現できます。
オフィスの入退室管理に置き換えて、具体的な例で考えてみましょう。銀行の支店長が、書類担当者、事務員、法務アドバイザーという3人の従業員を抱えているとします。書類担当者は、契約書や規程文書、その他の重要な書類を印刷できるように、印刷室への入室が許可されています。事務員には、キャビネットの閲覧・使用権限と、印刷室への入室権限が付与されています。法務アドバイザーには、それらに加え、支店長の指示に応じて支店長室に立ち入る許可も与えられています。
そして、銀行の金庫室に入室できる(最も重要な権限を持っている)のは支店長だけで、他の従業員は入室が許可されていません。つまり、支店長は、特定の役割を持つ各従業員に必要最小限の権限を与えて、厳重に管理しています。このように、ユーザーの役割に基づいて最小限の権限のみを割り当てるという考え方が、最小特権の原則です。
最小特権の原則では、特定の業務を行うために必要最小限の権限を付与します。最小特権の原則を効果的に適用するには、サイバーセキュリティとコンプライアンスのバランスを取りつつ、一元化されたきめ細かいアクセス制御を企業ネットワーク全体に実装することが重要です。それに加えて、従業員や関係者の日常業務に支障が出ないよう留意して、制御を実施する必要があります。
最小特権の原則の重要性
最小特権の原則の主な目的は、特権アクセスに制約を設け、組織の攻撃対象領域を縮小することです。この原則は、データ侵害やサイバー攻撃が増加している昨今のデジタル環境において、極めて重要です。なぜなら、過剰に付与された特権は攻撃者の標的になりやすく、ネットワーク内で攻撃範囲を広げるために悪用されるケースが多いからです。特権が適切に制御されていないと、組織が特権昇格攻撃を受け、システム停止やデータ窃取の被害に遭うリスクがあります。
多くの組織では、ユーザーから管理者権限を剥奪することで、権限の過剰付与を防ぎ、最小特権アクセスを適用しています。しかし、日常業務で特権システムにアクセスするユーザーに、情報システム部門が権限を付与し直さないといけないケースが多々あります。この運用では、再度付与された特権がほとんど取り消されないため、不要なアクセス権が徐々に乱立していきます。そして、最小特権の原則を無視した運用が常態化し、結果として、特権の悪用、特権の肥大化、パスワードの漏洩を招く事態につながります。そのため、最小特権アクセスの実装と維持は、組織のセキュリティを確保する上で必要不可欠です。
最小特権アクセスを適用することで、次のような観点でリスクを軽減できます。
- 不正アクセスの防止:不要な権限を制限することによって、内部または外部の関係者による機密データへのアクセスを防止できます。
- 攻撃対象領域の最小化:特に強い権限を持つ特権アカウントの数を減らすことによって、攻撃者が脆弱性を悪用しづらくなります。
- コンプライアンス要件への準拠:各種の規制・基準(GDPR、HIPAA、PCI-DSSなど)では、機密情報へのアクセスに制限を設けることを重要な要件としています。
- セキュリティ体制の強化:アプリケーションやユーザーの操作を制限することによって、業務に支障をきたすような誤操作や悪質な変更を防止できます。
特権クリープとは?
特権クリープとは、本来必要な範囲を超えて、ユーザーに特権が過剰に付与されている状態を指します。特権クリープの主な原因として、システム管理者がサポートにおける煩雑な手続きを避けたいがために、ユーザーに安易に特権を付与してしまうことが挙げられます。また、一時的にアクセス権限を付与されたユーザーや退職者の特権をシステム部門が削除し忘れる場合も、特権クリープが発生します。
特権クリープの典型的な例としては、ユーザーの職務内容が変わった際に、以前に付与されていた特権が取り消されずに残ってしまう場合があります。また、従業員が通常の職務権限を超えた作業を行う必要があり、一時的に権限が追加された際に、作業後に管理者がその権限を剥奪し忘れる場合も考えられます。
特権クリープのリスクは、企業内のすべての従業員に対して最小特権の原則を適用することで軽減されます。作業完了後、即座にアクセス権限を失効させることで、潜在的な脆弱性や永続的な特権によるリスクを排除できます。つまり、最小特権の原則は、ゼロトラストセキュリティモデルを基盤としています。ゼロトラストセキュリティモデルでは、地理的な条件に関わらず、あらゆる従業員が脅威の犠牲になる可能性も、自らが内部からの攻撃者になる可能性もあると考えます。
ゼロトラストに基づく役割ベースのアクセス制御
先ほどの銀行の例を振り返って、そもそも支店長が最小特権の原則を実装する必要があった背景を考えてみましょう。まず、あらゆる部屋、特に顧客情報や資産が保管されている金庫室などの重要な部屋に、すべての従業員が入室する必要はないからです。また、支店長は、各担当者が自らの役割に基づいた業務を行う場合には信頼を寄せていますが、普段は入室権限を与えられていない部屋に入って業務を行う場合は、適宜支店長の確認が必要になるからです。
同じように、IT環境でも適切なアクセス制御が必要になります。そして、それを実現するには、PAM(特権アクセス管理)ソリューションが有効です。PAMソリューションは、サイバーセキュリティにおける最小特権の原則とゼロトラストに基づいて設計されています。PAMソリューションには、組織のニーズやポリシーに合わせてアクセス制限を柔軟にカスタマイズし、ユーザーの役割に基づく最小特権を割り当てるための設定が用意されています。つまり、PAMソリューションを使用することによって、ユーザーのアクセスを制限し、役割に適した特権のみをユーザーに付与できます。
このように、ゼロトラストセキュリティモデルでは、役割ベースのアクセス制御によって最小特権の原則を実現します。
ゼロトラストに基づく役割ベースのアクセス制御の例:
情シス管理下の重要システムをある従業員が業務で使用している場合、従業員はシステムにログインするたびにアクセス申請を行う必要があります。この申請は、システム管理者が承認します。1日の作業が完了すると従業員はシステムからログアウトし、再度アクセスする必要がある場合は、もう一度申請します。
別の例としては、さまざまな部署の従業員が重要なITリソースへのアクセスを必要としている場合、各部署の1人だけにアクセス権限を付与します。この運用方法により、複数の従業員が重要リソースにアクセスできてしまう脆弱な状況を回避し、不正アクセスの脅威を軽減できます。
最小特権の原則を適用するメリット
攻撃対象領域の縮小
最小特権モデルは、管理者アクセス権限や永続的な特権を排除することにより、重要なITリソースへのアクセス経路を大幅に制限し、攻撃の対象となりうる範囲を縮小します。
マルウェアの伝播の防止
マルウェアの実行には特権が必要であるため、エンドポイントに最小特権の原則を適用することで、マルウェアの伝播を防止できます。攻撃に遭っても、管理者権限なしではマルウェアが実行されないため、潜在的な損害を大幅に削減できます。
従業員の生産性の向上
最小特権の原則では、ユーザーの管理者アクセス権限を削除し、セキュリティポリシーに基づいたジャストインタイム(JIT)特権アクセスを適用します。この仕組みにより、過剰な特権に起因する脅威を軽減するとともに、アクセス申請・付与のフロー効率化、従業員の生産性向上、ITヘルプデスクの負担軽減が実現されます。
コンプライアンスをスムーズに実現
最小特権ポリシーの徹底により、「誰が、いつ、何にアクセスしたか」を可視化し、監査対応に適した体制を実現できます。また、さまざまな業界標準や法令要件(HIPAA法、PCI DSS、SOX法、GDPR、CCPAなど)を満たす際にも役立ちます。データ保護に関する規範では、データ管理とシステムセキュリティを目的とした厳重なアクセス制御ポリシーの実装が求められます。
最小特権の原則に基づくベストプラクティス
特権アクセス管理ソリューションを活用することで、現在、組織で実施しているセキュリティ対策に加えて、以下のようなベストプラクティスの導入が可能になります。
01. 本格的な特権監査から始める
徹底的な特権監査を最初から実施し、現在使用されているすべての特権アカウントと、特権アカウントに付与されているアクセスの種類を把握します。確認対象は、すべてのローカル・ドメイン管理者アカウント、特権アカウント用のパスワード、SSHキー、サービスアカウント、DevOpsパイプラインにハードコーディングされた認証情報です。
02. 不要な管理者権限を削除する
エンドポイントのローカル管理者権限を削除し、すべてのユーザーにデフォルトで割り当てられている標準的な権限のみを残します。ただし、特定のアプリケーションに対するアクセス権をユーザーの役割に応じて昇格する仕組みを用意しておきます。ネットワーク内のサーバーに対する管理者アクセス権限を完全に削除し、すべてのユーザーアカウントを標準ユーザーに設定し直します。
03. ユーザー役割に基づいて特権を区別する
ユーザーに割り当てられた特権と、アプリケーションやシステム、プロセスが持つ特権アクセスを明確に区別し、それぞれのエンティティに対して必要最小限の特権のみを付与します。この厳密な管理により、不正アクセスを防ぎ、攻撃の拡大を抑止できます。
04. ジャストインタイム(JIT)制御を導入する
ドメインアカウントとローカルアカウントに対してジャストインタイムのアクセス制御を行い、ユーザーからの要求があった場合に、一時的に権限を昇格します。一定時間の経過後、権限は自動的に取り消されます。正規の認証情報がユーザーに開示されることなく、作業に必要な時間、十分なアクセス権限が付与されます。
05. 認証情報をハードコーディングしない
DevOpsパイプラインやRPAシステム、その他の関連デバイスに埋め込まれている認証情報を削除し、API経由で取得する方法に置き換えることによって、特権悪用のリスクを軽減します。認証情報は、申請・承認ワークフローが備わったパスワード保管システムから、APIを使って取得します。アクセスがあるたびに、特権アクセス用のパスワードと認証情報を即座にローテーションし、キーロガーによる記録のリスクがある認証情報を無効化します。
06. 物理的境界に依存せず、最小特権ポリシーを適用する
従来の物理ネットワークによる境界に依存せず、すべてのリモートアクセスのセッションに最小特権ポリシーを適用します。クラウドサービス上のアカウント、リモートワークを行う従業員、外部委託先、ベンダーによるアクセスも、最小特権ポリシーで制御します。
07. 継続的に監査・監視する
明確な追跡責任性を確保するために、すべてのユーザーアクティビティを継続的に精査し、特権セッションを動画として記録します。各ユーザーのトラスト(信頼)スコアを算出する仕組みを導入することで、リアルタイムで異常を検知し、不審なアクティビティを即座に遮断します。
最小特権アクセスを組織に導入する方法
01. 現在のアクセス権限の付与状況を確認する
まず、権限付与の現状を監査し、誰がどのリソースにアクセスできるかを把握します。各役割に必要のない過剰な権限を特定します。
02. 役割ベースのアクセス制御(RBAC)を実装する
役割ベースのアクセス制御(RBAC)を実装し、業務内容に適した権限を割り当てます。ユーザーの役割に応じて、必要なアクセス権限のみが付与されるように制御します。
03. アクセス権限を定期的に精査する
アクセス権限の定期的な精査を実施し、権限が現在の役割や業務内容に見合った状態に最新化されていることを確認します。役割の変化に伴い、アクセス要件も変わる場合があります。定期的な見直しにより、特権クリープや特権悪用を防止できます。
04. ジャストインタイム(JIT)アクセス制御を導入する
ジャストインタイム(JIT)アクセスでは、特定の業務に必要な一時的な権限を、一定の時間に限りユーザーに付与します。強力な権限を必要時にのみ有効化することで、セキュリティリスクを軽減できます。
05. 特権アクセス管理(PAM)ソリューションを活用する
特権アクセス管理(PAM)ツールによって、重要なシステムにいつ誰がアクセスできるかを一元管理できます。また、最小特権ポリシーを適用し、特権的なアクティビティをリアルタイムで監視できます。
最小特権アクセスが必要になるシナリオ
最小特権アクセスの適用がどのようなシナリオで必要になるか、実例を踏まえて見ていきましょう。
01. システム管理者のアクセス権を一時的に昇格
あるシステム管理者が、サーバーに更新プログラムをインストールする必要があります。組織ではジャストインタイムアクセスを採用しており、システム管理者にフル管理者権限が常時割り当てられるのではなく、作業に必要な時間に限り権限が昇格されます。更新作業の完了後、システム管理者のアクセス権限は本来のレベルに戻されます。このアプローチにより、管理者権限が常時必要ではない状況で、特権悪用や誤操作による損害のリスクを最小限に抑えられます。
02. 外部企業によるアクセスを制御
ある外部のIT企業が、特定のアプリケーションのトラブルシューティングを行うために、社内ネットワークにアクセスする必要があります。そこで、無制限のアクセスを許可する代わりに、最小特権ポリシーに則り、トラブルシューティングに関わるサーバーやアプリケーションに限定してアクセス権を付与します。トラブルシューティング完了後、アクセス権は自動的に取り消されます。このように制御することで、業務に関係のない機密データに外部企業がアクセスしてしまうリスクを回避できます。
03. 開発環境での最小特権アクセス
あるWebアプリケーションの開発者が、本番環境ではなく、開発環境のみにアクセスする必要があります。この状況では、開発者のアクセス権を制限することで、誤って本番環境に変更を加えてしまうリスクを排除できます。最小特権アクセスを適用することで、テストや承認を経ていないコードが公開されてしまう事態を防ぎ、本番システムの完全性を確保できます。
04. 権限の制限したままヘルプデスク業務を運用
ヘルプデスク担当者は多くの場合、トラブルシューティングを行うためにユーザーアカウントにアクセスする必要があります。ただし、最小特権アクセスの適用により、影響範囲の大きい操作(権限の変更や機密データへのアクセスなど)は許可せず、パスワードのリセットやアカウント基本情報の閲覧のみを許可します。この管理により、システムセキュリティを損なうリスクを回避しながら、支障なくヘルプデスクの業務を運営できます。
05. ローカル管理者権限の管理
多くの組織では、柔軟に業務を行えるように、個別PCのローカル管理者権限が多くの従業員に付与されています。しかし、このような状況では、マルウェアなどの不正なプログラムがインストールされる場合があり、セキュリティリスクを招きます。そこで、特権アクセス管理ソリューションによって最小特権アクセスを適用すれば、特定の作業(承認済みのソフトウェアのインストールなど)に限定した管理者権限を付与できます。システム全体に対するすべての操作を許可する必要はありません。この体制により、不注意によるシステムの設定ミスや、マルウェアの伝播のリスクを最小化できます。
ManageEngine PAM360による最小特権アクセスの実現
PAM360は、ManageEngineの統合PAMソリューションです。PAM360には、パスワードの申請・承認ワークフロー、ジャストインタイムアクセス、役割ベースのアクセス制御などの多様な機能が搭載されています
01. パスワードの申請・承認ワークフロー
上記の例のように、PAM360で申請・承認ワークフローをカスタマイズし導入することで、特権ユーザーによる重要なリソースへのアクセスを制御できます。PAM360のワークフローでは、パスワード申請はすべて、2名の管理者による承認が必要です。
02. ジャストインタイム(JIT)アクセス
PAM360のジャストインタイム権限昇格機能を活用することで、アクセス制御を導入し、一時的なアクセスをユーザーに付与できます。このような一時的な権限昇格は、一般的に「特権昇格および委任管理(PEDM)」と呼ばれています。
03. 役割ベースのアクセス制御(RBAC)
役割ベースのアクセス制御(RBAC)とは、組織内での役割に基づいて、ユーザーの特権を制限する手法を指します。PAM360では、カスタマイズ可能な複数の役割が用意されており、ユーザーを「管理者」「一般ユーザー」といった役割に区分可能です。さらに、ユーザー役割ごとの特権の範囲を制限し、どのユーザーにどの特権を付与するかを定義できます。
最小特権の原則は、組織が重要視すべきサイバーセキュリティ対策です。PAM360を活用して、最小特権の原則を導入する方法を詳しく知りたい方は、お気軽にお問い合わせください。