東工大の2段階認証をパスワードマネージャーで利用してみた

どうも。seigo2016です。

はじめに

今回は東工大ポータルにログインする方法の1つであるソフトトークン認証を、EntrustのアプリからではなくKeePassXCや1Passwordなどの一般的なパスワードマネージャーを使用して行う方法を紹介します。

ここで紹介する方法によって引き起こされたいかなる事象についても責任を負いませんので、自己責任でお願いします。
この記事を見た東工大の人はそろそろまともに認証を考えてください。マトリクス認証採用しておいてセキュリティを語らないでください。

まず、今回使用するのはこちらのツールです。また、初回時のみEntrustのアプリでQRコードを読み取る必要があります。
https://github.com/seigo2016/entrust-identityguard-tools

事前準備

こちらの東工大のページのStep3: QRコードの読み込みまで進めてください。
QRコードを右クリックで画像として保存し、QRコードパスワードとStep3で表示される登録コードをメモしておいてください。
https://portal.titech.ac.jp/ezguide/softtoken-login.html

11/7現在画像ファイル名がqr.bmp としてハードコーディングされてるのでいい感じにしてください。

ツールのダウンロード

このツールはPythonで書かれています。
ターミナルを開き、ダウンロードします。

git clone https://github.com/seigo2016/entrust-identityguard-tools.git
cd entrust-identityguard-tools

ツールの実行

python main.py
QRコードパスワードを入力してください > (QRコードパスワードを入力)
登録コードを入力してください > (登録コードを入力)

生成完了

正しい乗法を入力すれば、以下のような表示が出るのでこのBase32 Secretをコピーし、

  • アルゴリズム SHA256
  • タイムステップ 30秒
  • コードサイズ 6桁

で登録すれば無事完了です!
試してみましょう!!!

最後に

Q. パスワードマネージャーにTOTP覚えさせるの、危なくない?
東工大のログインのみに関していえば、以下の既存のセキュリティの問題と比較すれば十分に安全であると言えるでしょう。

  • マトリクスコードは学生証の裏に記載されており「所有」のセキュリティとしては弱い。写真をとって保存することを勧めたりしていて最悪
  • メール(ワンタイムパス認識)は、メールがセキュアである保証がない。少なくとも東工大が勧めているGmail転送では暗号化されていない

パスワードマネージャーを利用している人のリテラシーから考えても、パスワードマネージャーで1元管理しているリスクより圧倒的に上の2つによるリスクの方が高いことは明白です。生体認証とか導入してくれればいいのですが。