はじめに
企業・組織のコンピューターシステムには多数のパスワードがつきものです。
なかでもサーバー・データベースなどの重要システムのアカウントのうち、
特権アカウント(Privileged Account: admin、Administrator、root 等 に代表される、無制限の権限を持つアカウント)
のパスワードは特に慎重に管理しなければいけません。
この記事では、特権アカウントの管理方法について考えてみます。
特権アカウントのパスワード管理のレベル
重要なシステムへのアクセスに使用する特権アカウント等のパスワードは、実際にはどのように管理しているでしょうか。次のようなケースが考えられます。
(A) ほぼ管理していない
- 容易に推測できるパスワードを設定している
- 誰でもアクセスできるファイルにパスワードを記載している
- 複数の人がパスワードを知っていて、いつでも使える
- 誰がいつ重要なシステムにアクセスしたかわからない
(B) 手動で管理している
- パスワード管理者が、表計算ソフトのファイルなどに平文でパスワード一覧を記載している
- 利用の申し出があれば、パスワード管理者がパスワードを平文のメールなどで利用者に伝える
- 利用者の利用後に、パスワード管理者が手動でパスワードを変更して、パスワード一覧を更新する
- (利用のたびに、手動でパスワードを変更するのが大変すぎるので、実は変更していない)
(C) パスワード管理用システムを導入している
- パスワードは暗号化されて安全に保管されている
- 利用の申請、承認者への通知、利用者へのパスワード通知・表示が自動化されている
- 利用後のパスワードの変更が自動化されている
- 誰がいつパスワードを使って重要システムにアクセスしたかが記録されている
(A) が危険なのは言うまでもありません
(B) もパスワードの保管・通知が平文で行われますし、全部の処理が手動のために手間がかかりすぎて、正しく運用できない恐れがあります
(C) が最も良い状態です。しかし (C) なら完璧でしょうか?
パスワードを利用者に通知するか、それとも隠したままにするか
パスワード管理用システムを導入していても、依然としていくつかの問題が考えられます。
(C) の課題
- パスワードの変更方法はシステムによって異なるため、パスワード自動変更機能の全システムへの対応は困難
- もし利用後のパスワード変更が実現できずに、いつも同じパスワードを使うなら、管理を行っていないのと似た状況に陥る
- パスワードを一度通知・表示すると、その後、承認された利用者以外の別の人に知られる恐れがある
- パスワードを一度通知・表示すると、管理外のデバイス・アプリケーションからログインされるリスクが増える
これらの課題は、利用者にパスワードを通知・表示するために発生します。
重要なシステムのログイン画面で、パスワード管理用システムが利用者に代わってパスワードを自動入力し、パスワードを隠し通したらどうなるでしょうか。
(C’) パスワード管理用システム(自動入力型)を導入している
- パスワードは暗号化されて安全に保管されている
- 利用の申請、承認者への通知が自動化されている。パスワードは自動入力される(非表示)
- パスワードは利用者に隠したままなので、利用後のパスワードの変更は必須ではない
- 誰がいつパスワードを使って重要システムにアクセスしたかが記録されている
上記の仕組み・特徴なら、(C) の課題が解決するか、軽減されます。
ただし、課題のうちの一つは内容がやや変わりますが解決されずに残ります。
(C’) の課題
- ログイン時のパスワード入力方法はシステムによって異なるため、パスワード入力機能の全システムへの対応は困難
- [解決]
パスワードを一度通知・表示すると、その後、承認された利用者以外の別の人に知られる恐れがある - [解決]
パスワードを一度通知・表示すると、管理外のデバイス・アプリケーションからログインされるリスクが増える
しかし、パスワードの変更方法に比べれば、ログイン時のパスワード入力方法の方が処理が相対的には単純なため、対応システムのカバー率は上げやすくなります。
パスワードを通知・都度変更するよりも、パスワードを隠して自動入力できるなら、その方が有利に思えます。
特権アクセスの管理方法を検討するときは、パスワード自動入力機能の採用も検討すると良いでしょう。
特権セッションを記録するか
パスワード管理用システムが導入済みであれば、内部不正の試みがあった時でも、特権アクセスの制御・抑止・調査等の管理が正しく行えるでしょうか?
内部不正者の特権アカウント利用申請
次のような流れを考えてみます。
- ある内部不正を画策する利用者が、重要システムへのアクセス申請を行います。
申請時には「内部不正を行います」などと申請するはずがありません。
正当な作業などを混ぜて無害に見える申請を行います。 - 承認者は申請内容を見て特権アカウント・パスワードの利用許可を与えます。
- パスワードが利用者に通知・表示されます。またはパスワードがログイン時に自動入力されます。
- 特権アカウントで、重要システムにアクセスしてしまえば、もはやこの利用者を止める手立てはありません。
- 利用終了により、特権アカウントの利用者、利用日時等の記録と、必要ならパスワードの変更が行われます。
半年後や数年後に何らかの理由で不正の可能性が持ち上がったとしても、原因としてこのアクセスを見つけ出すことは相当困難でしょう。
上記想定の特権アクセス管理の仕組みには、つぎの問題があリます。
特権アカウント利用申請の弱点
- 不正を行う者の自己申告の申請だけに頼っているため、内部不正・虚偽の申請に対して無力
- 特権アカウントの利用者、利用日時程度しか記録しておらず、不正があったかどうかを確認するデータが残らない
PAM / PASM
ところで、重要なコンピューターシステムへのアクセスを管理するシステムは、
PAM (Privileged Access Management / 特権アクセス管理)
というカテゴリー名で呼ばれることがあります。
さらに PAM のサブカテゴリーとして
PASM (Privileged Account and Session Management / 特権アカウント・セッション管理)
というカテゴリーがあります。
PASM は
特権アカウント・パスワードの管理
による重要システムへのアクセスの管理だけでなく、
特権セッション(特権アカウントのログインからログアウトまでの接続・操作の単位)の管理
も想定しています。
セッション管理の追加
「(C’) パスワード管理用システム(自動入力型)を導入している」の特徴・機能にセッション管理を追加してみます。
- パスワードは暗号化されて安全に保管されている
- 利用の申請、承認者への通知が自動化されている。パスワードは自動入力される
- パスワードは利用者に隠したままなので、利用後のパスワードの変更は必須ではない
- 誰がいつパスワードを使って重要システムにアクセスしたかが記録されている
- [追加] 重要システムにアクセスして行った操作(セッション)が記録されている
PASM は上記の機能を備えることで、特権アカウントの使用許可後の操作が適切だったかの管理も行います。
特権アクセスを管理するには、
特権アカウント使用の許可・不許可 (PASM の A:アカウント管理)
だけを行うのではなく、
特権セッションの操作記録 (PASM の S:セッション管理)
もセットで行わないと不十分であることが、PASM というカテゴリーの想定・定義に含まれているのです。
内部不正対策のために、内部不正者の自己申告に依存するシステムを導入しても、十分な対策を行っているとは言えません。
特権アクセスの管理方法を検討するときは、特権セッションの操作記録機能の採用も検討すると良いでしょう。
なお、特権セッションには、コマンドラインによる文字操作のほかにも、リモートデスクトップ接続による操作や、Web ブラウザーによる操作があります。
GUI 操作の記録も可能かどうかも検討のポイントになります。
PAM/PASM 導入の際の考慮事項(まとめ)
- パスワードの通知・表示は落とし穴になるかもしれません。パスワード自動入力機能の有無を確認しましょう。
- 内部不正者の自己申告を信じてはいけません。GUI 操作の記録を含む、特権セッション管理機能 (PASM の S:セッション管理) の有無を確認しましょう。
Syteca (旧称 Ekran) について
弊社ジュピターテクノロジーでは Syteca (サイテカ/旧称 Ekran)という製品を取り扱っています。
Syteca は PASM としても利用可能です。