Skip to content
おるとのページ
TwitterGitHub

SFC 関係者に捧ぐ 難しくない! 今こそ徹底したパスワード管理を

Security21 min read

総合政策学部 3 年,村井純合同研究室・手塚悟研究室にてネットワークインフラやセキュリティで遊んでいる alt と申します.詳しくはプロフをどうぞ.

ほとんどの SFC 関係者はすでにご存知とは思いますが,この夏以降,SFC 及び慶應義塾はサイバー攻撃の被害に遭い 1,SFC-CNS 及び SFC-SFS においては大量の個人情報が流出した可能性が出ています.

攻撃はされる時はされます.攻撃が始まってからはエンドユーザはどうしようもないことだってたくさんあります.しかし,未然の自己防衛であれば誰でも可能です. 公式発表 1 によれば,今回の攻撃プロセスの一環に「何らかの方法でシステムの利用者(教職員)の ID およびパスワードが窃取され」というものがありました.そこで本稿では,エンドユーザにもできる身近なセキュリティインシデント対策として,パスワード管理について紹介します.

セキュリティ,特に認証認可周りの畑の人であれば「2020 年にパスワードの話?」と思われるかもしれませんが,現状パスワードによる認証が主に使われている事実がある以上,これを疎かにする意味はありませんので,ご理解の上で読み進めていただければと思います.

なお,本稿は専門家ではない筆者の偏見に基づいたポエムです.本稿によって引き起こされるいかなる損害に関しても筆者は責任を負いかねます.

[本稿は SFC Advent Calendar 2020 第 5 日目の記事です.]

パスマネを使え

人間はパスワードを覚えないほうがいいです.素直にパスワードマネージャ (パスマネ) を使いましょう.

なぜパスマネを使うか

パスマネ (及び付属するパスワードジェネレータ) を利用する利点を挙げます.

  • パスワードを忘れないため,再発行をお願いすることがなくなる
  • パスワードを記憶する必要がないので,強いパスワードをつけやすくなる
  • パスワードを記憶する必要がないので,パスワードを使いまわさなくなる
  • 基本的に事前に指定した URL でしか自動入力が働かないため,フィッシングの被害に遭いにくい

特に最後の効果があるため,仮にあなたが映像記憶の持ち主であったとしてもパスマネを使う意味はあります.

みんながパスマネを使わない理由?

パスマネを使わない人たちがなぜ使わないのか,耳にしたところ大抵は杞憂だったので書いておきます.

  • めんどくさい

あんたみたいな自分勝手な人がいるせいでみんなが大迷惑被るんです.いい加減今回のインシデントで考えを改めなさい.あほ. というのはおいておいて,多分食わず嫌いです.使いはじめれば使わない方が面倒だと思うようになります.

  • パスマネの会社が信用ならない

フィッシングに騙される可能性がある,パスワードを忘れる可能性があるあなたの脳より信用なりませんか? もしパスマネを提供しているブラウザベンダ (後述) である Google も Mozilla も Apple もその他大規模ベンダのいずれも信用できないと思っているなら結構ですが,あなたがどうやってこの記事を読んでいらっしゃるのか,パスワードを入力するようなサイトを利用していらっしゃるのか疑問です.ぜひお話を伺えればと思います.

  • パスワード変更の時にパスマネの方を切り替え忘れる

これはどうやら ITC 窓口にも寄せられているような雰囲気を感じます.下で紹介するパスマネを使っていれば,多くのブラウザとの組み合わせでパスワード変更時に自動で「お前パスワード変更したな,こっちの記録も変えなきゃダメだぞ」というポップアップが自動で出てくると思います.それを何度も無視してしまうような方はむしろパスマネを使わないと大変危険で,パスマネを使わなくてもどうせ脳内の記録を書き換え忘れる方ですので,周りの方が全力で導入を後押ししてください.

使えるパスマネ

便利なパスマネやとっつきやすいパスマネをいくつかあげておきます.

  • ブラウザ付属のパスマネ

タダですし勝手にお勧めされるので使っている方も多いかと思います.Chrome なら Google アカウント,Firefox なら Firefox アカウント,Safari なら Apple アカウント (Keychain) に紐付けて複数端末で共有することができます.機能は少ないですしブラウザから出たら使えないので私は使っていませんが,何もやらないより何倍もマシです.

  • 1Password

UI がきれいで,ユーザフレンドリーな印象を受けます.機能も高機能です.課金プランになると「え,たかがパスワードにこんなにかけるの?」と思う方がもしかしたらいるかも知れませんが,そういう方こそ管理の重要性への理解が足りていないのでパスマネの利用をお勧めします.

  • Lastpass

1Password と機能・料金ともに大きな差はないかと思います.個人的には 1Password の方が若干 UI が使いやすいかなとは思いました.

  • Bitwarden

私はこれを使っています.機能は 1Password/Lastpass と大差ないのですが,有料プランの料金が格安です.だからむしろ怪しいという方もいるようですが,いまのところ私は困ったことにはなっていません.ちなみに,オンプレミスで運用もできます.

パスワードはなるだけ長く? 複雑に?

付けるパスワードも「名前+生年月日」など推測できるものではいけません.なるべく強いパスワードを付ける必要があります.

強いパスワードの条件としてよく「複数の文字種を使うこと」が挙げられますが,米国の連邦政府のセキュリティ基準などを作っている機関 NIST の文書 2 によると,パスワードはそうした複雑さより長さが重要と言うことです.

しかし,パスマネを使っていれば自分で覚える必要はないわけですから,個人的には「長くて複雑ならもっと良いだろう」と思っています.そのため私は,パスワードジェネレータが許す限り長く複雑なパスワードを毎回生成するようにしています.

上記の NIST SP800-63B を元にした FBI のブログ 3 では,システム管理者に対し以下のように一般化したパスワード条件を推奨しています.あくまでシステム管理者向けですが,「エンドユーザに〇〇させる」という内容が多く,エンドユーザでも参考になると思います.

  • 全員に 15 文字以上のパスフレーズ・パスワードを設定することを求め,大文字・小文字・記号などの文字種の指定はしない.
  • パスワードの変更は,ネットワークが侵入された疑いのある場合のみに行う.
  • ネットワーク管理者は,攻撃辞書や既に漏洩しているとされているパスワードのリストに,設定されたパスワードが含まれていないことを確認する.
  • メールサービスへの DoS 攻撃をなるべく防ぐため,「n 回パスワードを間違えたらアカウントをロックする」というポリシーは行わない.
  • パスワードのヒント機能は使わせない.

パスワードは使いまわすな

強いパスワードをつけても,複数のサービスで横断的にそのパスワードを使っては意味がありません.仮にサービス A と B で同じ強力なパスワードを使っていたとして,自分以外の理由 (管理者サイドから不正アクセスされるなど) でサービス A の生パスワードが漏れた場合,サービス B でも侵入される可能性が高まります.

A への攻撃者が必ずしも B にも攻撃するとは限りません.しかし,一度漏れたパスワードは売りに出され (時には無料の場合も),複数の関係ない攻撃者で共有されます.そのような理由で,上記の FBI ブログではリストとパスワードの突き合わせを推奨しているわけです.

パスマネを使っていれば,強力なパスワードを何千個作っても自分で覚える必要はありませんから,使い回すさずにすみます.

MFA を導入しよう

MFA (多要素認証) は,複数の種類の認証手段を用いて認証することです. ここで勘違いしてはいけないのが,「複数の認証手段」を用いるわけではないと言うことです.例えば,パスワードによる認証のあとにまたパスワードによる認証を行うのは MFA ではありません.

認証手段は一般に「知識認証 (パスワード,パスフレーズなど本人しか知り得ない情報を用いた認証)」「所有物認証 (Yubikey やあらかじめ紐付けられたスマホなど本人しか持ち得ないものを用いた認証)」「生体認証 (指紋や虹彩,静脈など,本人の体にしかない特徴を用いた認証)」の 3 つに大別されますが.MFA はこれらのうち 2 つ以上を組み合わせることが望ましいです.

MFA の 2 つ目以降の認証手段としてよく使われるものを挙げておきます.それぞれ一長一短ですので,使いやすいものを選ぶことをおすすめします.

  • SMS/音声通話

携帯電話番号さえあれば導入でき,一番ハードルが低いと思います.しかし,SMS や音声通話の安全性については疑問が多く,可能であればほかの手段を利用することを推奨します.何もしないよりは遥かにマシではあります.

  • メール

こちらも SMS/音声通話と同様です.

  • Google Authenticator

スマホアプリで多くの OTP (ワンタイムパスワード) を管理できるアプリの中で一番有名です.その他,Microsoft なども同様のものを出していますが,標準規格に基づいているのでだいたい機能は一緒です.(このようなプロトコルでの認証トークンを発行できるものを TOTP 認証器といいます.) 設定したスマホをなくしたり壊したりしないようにしましょう.

  • Authy

電話番号に紐付けることで複数端末で同じ情報を管理できる TOTP 認証器です.そのため端末をなくした場合などでも利用を継続できます.ただし,逆に言えばクラウドに情報を上げて電話番号と結びつけているわけですので,少々気持ち悪いと思う人も少なくないです.

  • Yubikey

Yubikey には TOTP 認証器以外にも本当にたくさんの機能があり,それだけで別の記事を建てる必要がありますね.セキュアな専用ハードウェアということもあり,個人的には一番信頼できます.ただ,多少値がはりますし,壊したときなどのために複数本用意する必要があるので,導入のハードルは高いと思います.一度導入してしまえばむしろその後の生活は大変楽です.

  • パスマネ付属機能

1Password にはパスワードの保存のほか,パスワードを保存したサービスごとに TOTP 認証器として設定することができます.ワンストップですべてを 1Password が請け負ってくれるのでとても便利です.逆に言うと,1Password が破られてしまった場合,ほかの MFA の手段を用いていれば各サービスへの侵入は困難ですが,1Password に全て任せてしまうとそれだけでオワリで,MFA の意味が少々薄れるというデメリットはあります.

残念ながら,keio.jp や CNS は MFA に対応していないため,パスワードによる認証一本勝負になってしまうのですが,サービス側で対応しているのであればできるだけ MFA するようにしましょう.

その際,バックアップの認証手段 (復旧用コードの印刷,複数の MFA 手段の登録など) を忘れず設定してください.例えば,Google authenticator を用いた MFA をした際に,登録したスマホを壊してしまったらアカウントにアクセスできなくなってしまいます.

ちなみに私は,Yubikey を用いた ワンタイムパスワードや Yubikey を用いた WebAuthn を多用しており,必ずバックアップコードを暗号化したディスクに保存しています.もちろんその暗号化ディスクの場所はや解除用の認証方法は私しか知りません.

パスワードより良い認証があるならそれを使おう

パスワードは最も普及しているオンライン認証方式の一つですが,冒頭で少し述べたとおり,現代ではもはやパスワードは最適な認証方法ではない場合があります.

例えば,Microsoft は Windows Hello などに力を入れパスワードレスでユーザを認証できる世界を作ろうとしています.

また,遠隔でシェルを使う SSH 接続の認証方式では,パスワードのほか非対称鍵暗号 (公開鍵暗号) によるチャレンジレスポンス認証がかなり普及しています.CNS の共用計算サーバも今回のインシデントを受けパスワードによる認証を禁止し,非対称鍵によるチャレンジレスポンス認証のみを受け付けるポリシーに変更されました.

本稿はパスワードについての記事ですので詳細は割愛しますが,パスワードにとらわれずより良い方法を選択できるのであればそちらを選択したほうが良いでしょう.

まとめ・エンドユーザにもできる自衛を!

以上,パスマネの導入について,パスワードの強度や使い回しについて,MFA とはなにか,というところを簡単に導入しました.

正直言うと,私の視点ではこれらはシステム管理者が進んでポリシーとして徹底するものです.ですが,様々な事情でできないこともあると思います.エンドユーザの側から積極的により良いパスワード管理を行うことで,自衛を図るのも必要です.

本稿でご紹介したとおり,極論は導入するものをちゃんと選定すればあとはシステム・サービスに勧められるがままの運用をしていけば「何もしないよりはマシ」の状態になります (もちろん,できるならご自分で考えて時たま運用を見直すことをおすすめします).

自分を守るため,同じシステムを使う仲間を守るため,悪い奴らに好き勝手させないため,まずはあなたから,エンドユーザにもできるより良いセキュリティ運用を心がけてみてください.


Footnotes

  1. 慶應義塾大学湘南藤沢キャンパス. 2020, available from <https://www.sfc.keio.ac.jp/doc/df8e80e0da5060b204d0ae01f6e9695989fd9059.pdf\>, (accessed 2020-12-02) 2

  2. NIST Special Publication 800-63B Digital Identity Guidelines. National Institute of Standards and Technology. 2017, available from <https://pages.nist.gov/800-63-3/sp800-63b.html\>, (accessed 2020-12-01)

  3. Oregon FBI Tech Tuesday: Building a Digital Defense with Passwords. Federal Bureau of Investigation. 2020, available from <https://www.fbi.gov/contact-us/field-offices/portland/news/press-releases/oregon-fbi-tech-tuesday-building-a-digital-defense-with-passwords\>, (accessed 2020-12-01)

© 2024 by おるとのページ. All rights reserved.
Theme by LekoArts