パスワードの運用はランダムなものを使用し、パスワードを共有する場合は利用ごとの更新が適切だと思います。またランダムで運用が難しいOSログインのものは2要素認証などを併用することがいいと思います。
『あなたの重要なパスワードはなぜ盗まれるか?そしてどうすればいいのかを考える。』ではパスワードが漏えいされる原因について説明をしましたが、どのように管理するべきなのかについて考察します。
目次
昔の金融機関のパスワード管理
BeyondTrust Password SafeやPrivileged Remote Access (PRA) のような特権アカウント管理製品が出るまえはアナログ的な方法でパスワードを管理していました。
とくに金融機関では扱っているものが資産なので、厳重に管理されてきました。
各システムのパスワードは厳重に管理され、ちゃんと封をした封筒にパスワードを入れ保管しています。
以下のような手順で運用していました。
- システム管理者はログインしたいシステムとその理由を書いて申請を行う。
- 申請が通ったら、アクセス理由とその時間を記録し、パスワードが入った封筒を渡す。
- システム管理者は封筒からパスワードを確認してシステムにログインする。
- 作業終了後、作業内容を報告する
- 別の管理者がその報告の内容と時間を確認し記録する。
- パスワードをランダムに様々な文字種と多くの文字数をつかってリセットして、記録し封筒に入れ、金庫にしまう。
このような手順でパスワードを管理していました。
Password SafeやPrivileged Remote Access (PRA)でも同じようなフローでパスワード運用ができるようになっています。
その手順から学べる事
このような運用をなぜしていたのかは「いつ、誰が、どうして」使ったかわかることです。セキュリティでは防ぐことが重要であると考えがちですが、どのように防いでも、予期せぬことで防ぐことができないこともあるので、防止することと同じくらいに記録を取ることも重要であると考えています。
毎回パスワードを変更していたのは、許可された管理者が後でそのパスワードを使ってもログインさせないようにするためです。
パスワードはランダムに生成するのは、人間が覚えやすいパスワードを使った場合、辞書攻撃でログインされる可能性があるためです。
ランダムと多い文字数のパスワードにすることで覚えさせないようにする代わりに金庫に保管するようにしています。
システム管理者は第三者が許可し確認できる状態にならない限りシステムにログインすることができないため、悪用などの内部犯行を抑止することができるようになります。
特権アカウント
海外ではさまざまなコンプライアンスにより特権カウント管理をしっかりするような流れがあります。
上記のような方法でも管理できますが、いまはPassword SafeやPrivileged Remote Access (PRA)のような特権アカウント管理を行う製品を導入することで対応できます。
また、それだけでなくシングルサインオンにすることで作業の生産性をあげることができます。
「危険なパスワードを見せない ~ 特権アカウントシングルサインオン」
パスワードの定期的な変更
パスワードは辞書攻撃を避けるため、辞書に載っておらず、数字や記号などを含みある程度ランダムなものを使うことが望ましいです。
またあわせてOSログインなどは二要素認証と組み合わせることが多いです。
定期的なパスワード変更は昔ほどは言われなくなりましたが、Windows ではゴールデンチケットとかPass the hash と呼ばれる攻撃手法がに対して、有効な防御方法としては定期的なパスワード変更が有効とされてます。
このリスクを回避するためには、定期的にkrbtgtアカウントのパスワードをリセットすることが有効です。なお、悪用されているTGTを確実に無効化するためには、履歴から消去するために、リセットを2回行う必要があります。
Kerberos 認証に対する攻撃と対策:KRBTGT Account Password Reset Scripts から
二要素認証
パスワード変更時に文字数と文字種の指定を行うことで複雑性を持たせることが可能になりますが、攻撃者がつかう辞書全てを禁止することは、辞書が膨大になること攻撃側がアップデートすることもあるので現実的でありません。
OSにログインする場合、パスワードは覚えることが前提になるのである程度の規則性をもつパスワードの使用することになりますが、不正ログインの可能性が高くなります。
そこでOSログインには二要素認証をつかうことにより不正アクセスが発生しないようにすることが一般的です。
シングルサインオン
OSにログインができても、いろいろなアプリケーションにログイン画面が出ることがあります。複数のパスワードを管理することは難しいので、シングルサインオン製品の導入を検討することが重要です。
USOのようなシングルサインオンを導入することで、ユーザーはパスワードを複数覚える必要はなく、ログインとパスワード変更の自動化が行えるようになります。
個人利用の場合は最近のブラウザーではログイン情報を記憶させることもできるため、その機能を利用することで多くあるパスワードを学習させることができますが、ハッキングされるとすべて取られるため、この記事の昔の金融機関の事例でも上げたように、パスワードをメモに書いて、そのメモが見れないところに管理することが一番安全だと考えています。
また、特権アカウントの場合はPassword SafeやPrivileged Remote Access (PRA)のような特権アカウント管理システムを利用します。
パスワードの取り扱い
攻撃者は辞書などを使いいろいろ組み合わせを変えてパスワードが正しいか検証します。標的型攻撃でハッキングされた事例をみるとパスワードの検証は何回も失敗するとアラートが出るので1日に数回以内で試行し探すので年単位で行うそうです。
人が考えるとそれなりの規則性があるため、パスワードを”あてられる”可能性があります。パスワードの理想的な運用は
- できるだけ多い文字数(8文字文字以上)
- できるだけ多い文字種(大文字小文字、数字、記号)
- 規則性がない(ランダム生成)
- 定期的な変更(OSによっては定期的な変更が望ましい)
- 毎回変更(一つのアカウントに利用者が複数の場合)
Password Safe、Privileged Remote Access (PRA)やUSOではランダムパスワードを生成し、それぞれのシステムにアップデートする機能がありますが、ネットでランダムにパスワードを生成してくれるホームページもあるのでそちらを利用してみてもいいかもしれません。
まとめ
- パスワードは複雑で盗まれる可能性が低くなるようにランダムに生成されたものが望ましい
- パスワードを運用するために自動化する製品(Password Safe、Privileged Remote Access (PRA), USO)を利用することによりセキュリティが向上するだけでなく生産性も向上する。
コメント
[…] 適切なパスワード運用とは […]
[…] 適切なパスワード運用とは […]
[…] 適切なパスワード運用とは […]
[…] 適切なパスワード運用とは […]
[…] 適切なパスワード運用とは […]