以前、パスクリ通信でも取り上げましたが、昨今、SMSを使った二要素認証が破られるケースが問題になっています。

>パスクリ通信2020年1月17日号「SMS認証の危険性」

SMS認証が破られるケースでは、パスワードとSMSで送られてくる4〜8桁程度のパスコードを、フィッシングによって偽サイトで入力させて奪ってしまう、という手口によるものです。このSMSで送られてくるパスコードを1回しか使わないパスワードと見立てて、これをワンタイムパスワード自体の安全性が揺らいでいるかのように書く記事も出てきました。

日本経済新聞(インターネット版)2020年2月6日
>「ネットバンキング被害4倍に 「ワンタイムパス」破る」

この記事では次のように書かれています。

インターネットバンキングの口座から預金を不正送金する2019年の被害が前年比4.4倍の20億3200万円(暫定値)に急増したことが6日、警察庁のまとめで分かった。「ワンタイムパスワード」を破る手口が横行し、被害額は4年ぶりに増加した。金融機関は不正送金を防ぐため、顔や指紋で本人確認する生体認証の普及を急いでいる。(記事より引用)

この記事は「ワンタイムパスワードはもはや安全ではないので、生体認証への切り替えが急がれている」というような印象を読者に与える書き方になっていますが、では本当にワンタイムパスワードはもはや安全ではないのでしょうか?
これを説明するには、まずワンタイムパスワードを正しく理解していただく必要があります。

ワンタイムパスワードって?
ワンタイムパスワードは、その名の通り「1回だけ、もしくは一定時間だけ使える」パスワードで、ログインのたびにパスワードが変わるので、固定パスワードのようにパスワードリスト型攻撃や総当たり攻撃などでパスワードを奪われてしまい不正アクセスされる恐れがない、というメリットがあります。

では、利用者はどうやって毎回変わるパスワードを正式な利用者が知ることができるのでしょうか。
その知る方法で、同じワンタイムパスワードでも、いくつかの方式に分かれるのです。
どういう方式があるのかを見ていきましょう。

ワンタイムパスワードにも様々な方式(種類)がある

(1) ハードウェアトークン方式
ワンタイムパスワードでよく使われるポピュラーなものです。金融機関のオンラインバンキングでよく使われているので、この方式をご存知の方は多いことと思います。ハードウェアトークンという、パスワード(6〜8桁の数字が多いですが)を表示するディスプレイをもった専用の機器(カード型やキーホルダー、電卓のような形のもの)を利用者に提供し、利用者はログインするときに、ハードウェアトークンに表示されているパスワードを入力します。この表示される数字が一定時間ごとに変わるので、ワンタイムパスワードとなります。

(2) ソフトウェアトークン方式
スマートフォンのアプリでワンタイムパスワードを表示させる方法です。ハードウェアトークンのように専用の機器を必要としない、という点では手間やコストが削減できますが、「利用者がスマートフォンを持っているのが前提」になってしまうので、万人向けではありません。

(3) SMSやメールへの通知方式
ログイン画面でIDとパスワードを入力して認証を行うと、あらかじめ登録されている携帯番号へのSMSや、メールアドレスへのメッセージでワンタイムパスワードを送信し、それを入力することでログインする方式です。
この方式の変化型として、あらかじめ登録した電話番号に電話がかかってきて音声でワンタイムパスワードを伝える、という方式もあります。

以上が、世間でよく知られているワンタイムパスワードの方式ですが、これらに属さないユニークな独自方式があります。

(4) トークンレス・ワンタイムパスワード
パスロジが提供する業務用認証プラットフォーム「PassLogic」のメインとなる認証方式です。ログインする際に、下記のような画面が表示されます。

PassLogicのID入力後のワンタイムパスワード入力画面

パスワードをそのまま表示してしまうだけだと、それを見た誰でもログインできてしまいます(当たり前ですが)。ですので、このように乱数表の中に、正式な利用者だけにしかワンタイムパスワードがわからないような仕掛けがされています。その仕掛けについては、PassLogicの製品紹介サイトをご覧ください。

ワンタイムパスワードの有効期限には2種類ある
ワンタイムパスワードには、一定時間ごとに表示されるパスワードが変わる「時刻同期」方式と、ログインのたびにパスワードが変わる「チャレンジ&レスポンス」方式があります。
上述した4つの方式をそれぞれ分類すると下記のようになります。
・時間同期方式:ハードウェアトーウン、ソフトウェアトークン
・チャレンジ&レスポンス方式:SMSやメールへの通知方式、トークンレス・ワンタイムパスワード

時間同期方式のほうは、オフラインでもパスワードが分かることが利点です。チャレンジ&レスポンス方式は、SMSやメール、乱数表の送付が必要なので、オンラインである必要があります。(工夫すればオフラインでも使えるようにできますが、常にオフラインとはいきません)

ワンタイムパスワードが破られる、というニュースの誤解

前述の日経のニュースでは「ワンタイムパスワードが破られる手口が横行し」と書かれていますが、実はワンタイムパスワードの仕組み自体が破られているわけではありません。
ワンタイムパスワードを奪われてしまったの原因は、利用者が本物ではない偽装されたログインページに誘導されて、IDとパスワード、そしてワンタイムパスワードを入力してしまったからなのです。つまり、システムの問題ではなく、利用者がフィッシングに引っかかってしまったのが問題なのです。
利用者が正しいログインページからログインすれば、被害に遭うことはなかったのです。

フィッシングに引っかからないようにするために

もはや「相手から送られてくるメッセージ」には疑いを持って接しなくてはならない時代です。偽装サイトに誘導するフィッシングメールのみならず、マルウェアをダウンロードさせるメールや、SPAM、脅迫メールなど、こちらを騙すための情報は、いくらでもやってきます。そして、それらに共通した特徴は「向こうからやって来る」、つまり「こちらは受け身」だということです。
ですので、自分を守るための行動指針は「自分から行動すること」です。受けた情報を信じずに、一度、自分からサービスのサイトを調べてみたり、あくまでも自分で設定したブックマークを利用したり、自分からの行動を挟むことで防げます。
犯罪者は、面倒くさがったり、楽に儲けたいと思う気持ちを利用してくるのです。

パスワード管理アプリの利用も、ひとつの解決策です。安全だと確認し、自分で設定したサービス&パスワードしか使わないようにするためのツールとして利用できます。
ちなみにPassClipが提供するサービスのひとつ「PassClip Auth」は、PassClipアプリから「これからログインするよ」と合図を送ってから一定時間内しかログインできなくする「ログインプロテクト」という機能を持っています。
この認証機能は「合図を送る」という積極的な行為を起点としているので、かなり安全性が高いのです。「せぐな別館」や「PassClip Forum」、「ぱすまど」などパスロジが提供するサービスで体験できますので、ぜひ使ってみてください。また、対応したいというサービスからのご連絡もお待ちしております!

今回は、ワンタイムパスワードの種類と、それ自体は破られていないということを解説しました。
ワンタイムパスワード自体は固定パスワードの弱点をカバーする安全性の高い仕組みですが、いくら仕組み自体が安全でも、それを使う人の「無警戒、無防備、不注意」であれば安全ではなくなってしまうのです。これは、固定パスワードが、単純なものであったり、使い回しをしていると安全ではなくなるのと同じです。
前述のニュースでは「生体認証の普及を急いでいる。」と書かれていましたが、生体認証もまた、無警戒に頼っていたら、人間の脆弱性を衝く手口で破られてしまうのかもしれません。