パスワードの管理に関するグッドプラクティス (version. 20220914)

1. パスワードを使う上での鉄則

  • パスワードは12文字以上にし、英小大文字・数字・記号を全て使う。ランダムなものがベター。

    学内規則 (*1) では,12文字以上を必須、16文字以上を推奨としています。 機器やアプリの制限で設定不可能などの特別な場合を除き12文字以上にしてください。

    パスワード中によく使われる単語や文字列は、世界中のクラッカー(悪意のあるハッカー) により頻出辞書が作成・共有されています。この辞書に載っている単語を使って パスワードを解析する「辞書攻撃」を避ける必要があります。 最近の辞書攻撃は単語を組み合わせたり、パスワードの利用者の個人情報を用いて 攻撃を行う等の工夫がされています。後述のパスワード管理ツールを活用して、 ランダムな文字列を使うのがベターです。

  • パスワードの使い回しは厳禁。システム/サービスごとに異なるパスワードを使用する。

    IDとパスワードの漏洩を完全に防ぐことは不可能です。IDとパスワードは必ず漏洩する という前提で、漏洩したIDとパスワードによる被害を予防するか最小限に留める 対策をすることが肝要です。漏洩したIDとパスワードは一覧表(リスト)にされ、 世界中のクラッカーに出回っています。このリストを用いて様々なウェブサービス等に ログイン試行を行う攻撃を「リスト型攻撃」と呼びます。リスト攻撃を簡単に実行できる 攻撃ツールは誰でも使うことができます。リスト型攻撃の餌食にならないためにも、 パスワードの使い回しはやめましょう。

  • 多要素認証は必ず有効にする。

    IDとパスワードが漏洩した場合でも、多要素認証を有効にしておけば、 不正ログインを避けられる可能性が高くなります。 多要素認証は必ず有効にしましょう。 近年では、多要素認証は突破される事例も多くあります。 多要素認証があるからといって安心せずに、パスワードが漏洩した または漏洩が疑わしい場合は、直ちに変更しましょう。

  • パスワード管理ツールを利用する。

    システム/サービスごとに異なる複雑なパスワードを設定した場合、 これらを全て記憶したり、メモで管理することは不可能です。 パスワード管理ツールを利用しましょう。 パスワード管理ツールの例については後述します。

2. システム管理者向けのグッドプラクティス

  • パスワードの共有は可能な限り避ける(パスワード管理ツールの共有機能を除く)。

    • UNIX系システムのスーパーユーザー (root) のパスワードは共用せずに、 sudo を用いるほうがよい。

    • ネットワーク機器やアプライアンス製品等でも管理者ユーザーを複数製作 可能なものについては、管理者毎にIDとパスワードを生成する。

    • 共有しなければならないパスワードは、パスワード管理ツールの機能を 用いて管理する。

  • システムにパスワードの強度を確認するオプションがある場合は、有効にし て、安全なパスワードの利用を強制する。

  • 学外から接続するシステムにはIDとパスワードのみの認証を用いない。

    • SSHは鍵認証で利用する。

    • VNC, RDPは学内ネットワークに限定にする。学外から利用する場合はVPNなどを併用する

    • HTTPのBASIC認証は学内ネットワークに限定にする

    • 学内ネットワーク限定のサービスを利用する際はVPN接続あるいは鍵認証のSSHによる トンネリング等を利用する。

3. 組織向けパスワード管理のグッドプラクティス

  • パスワード共有機能を持つパスワード管理ツールを利用する。

    一例として, 1Password, LastPass, Bitwarden 等は,複数名でパスワードを共有 する機能があります.他にも同様のツールありますので調べてみてください。 費用は 1 ユーザーあたり年間数千円程度のものが多いです。 これをパスワードを共有する人数分購入する必要があります。

4. 個人向けパスワード管理のグッドプラクティス

  • ウェブブラウザ標準のパスワード記憶機能は個人用のパスワード管理ツール として使用できます。この機能を用いることで、PC・スマートフォン間での パスワード情報の同期ができます。記憶しているパスワードが漏洩した際に 通知してくれる機能を持つものもあります。ただしブラウザベースなので ウェブサービスのみとなります。

  • 専用の個人向けパスワード管理ツールを用いて、IDとパスワードを管理するのが よいでしょう。フリーウェア/有償ソフトウェアどちらでもよいと思います。 フリーウェアの中には個人のPC・スマートフォン間でパスワード情報を同期 するためには、使い方を工夫する必要があるものがあります。

    • フリーウェアを用いてPC, macOS, iOS, Androidでパスワードマネージャ を構成する一例

      1. Google Drive を利用できるようにしておく(Google Drive以外の複数の クラウドストレージに対応している)。

      2. PC (Windows, macOS) には keeWeb を インストールし、新規パスワードデータベースをローカルディスクに作成する。 パスワードデータベースファイルのパスワードは十分に長いものを利用し、 厳重に管理する。 記憶させておきたいIDとパスワードを入力し、keeWebを終了する。

      3. 作成されたパスワードデータベースファイル keepassx.kdbx をGoogle Driveにアップロードする。

      4. KeeWebを再起動し、更に表示をクリックして、Google Driveのアイコン をクリックして、Google Driveにアップロードした keepassx.kdbx を 参照するようにする。これで、Google Drive 上で keepassx.kdbx を共 有する準備ができました。

      5. iOS, iPadOSの場合。Google Driveアプリをインストールし、 keepassx.kdbx をアクセスできるようにする。KeePassium をインストー ルし、データベースを開くで、Google Drive上の Keepassx.kdbx を選 択する。これでiOS, iPadOS上でパスワードデータベースを共有するこ とができます。 KeePassium は Face ID/Touch IDをサポートしており、Face ID/Touch IDの設定を行うことで、パスワードデータベースのパスワードを入力し なくて済むようになるます。

      6. Androiodの場合。Google Driveでkeepassx.kdbx にアクセスできること を確認しておく。Keepass2Android をインストールし、データベースを 開くで、Google Driveを選択する。Keepass2Android の権限を設定し、 Keepassx.kdbxを選択する。これで Android でもパスワードデータベー スを共有することができます。

    これで異機種間でのパスワードデータベースの共有ができました。

参考

*1 国立大学法人電気通信大学情報システム運用・管理実施手順書 (https://www.cc.uec.ac.jp/rule/)