- 締切済み
二段階認証は片方の時刻がずれていると機能しない?
とあるサイトにログインする時、Googleの二段階認証でログインをするように設定していたので、スマホのGoogleの二段階認証用アプリを開き、そこに表示される番号をサイトに入力し、ログインしたのですが、二段階認証アプリ(スマホ)はオフラインなのにもかかわらず二段階認証を突破できました。 てっきりオンライン上で、双方の端末の時刻(計算するタイミングなど)を合わせて計算した結果を出す仕組みで、オンラインにしてないと使えないのかと思ってました。 しかし、実際はスマホはオフラインにしてても大丈夫でした。 以下のページにはこのように書かれています。 >Google 認証システムの仕組み https://sekika.github.io/2016/03/26/GoogleAuthenticator/ >Google 認証システムで採用されているRFC 6238の時間ベースのワンタイムパスワード (TOTP)は、サーバーとクライアントで共有する秘密鍵と現在時刻から、確認コードを計算するアルゴリズムである。 >ここで、サーバーとクライアントではそれぞれNTPのような仕組みによってある程度正確に現在時刻を得ることができるという前提であり、RFC 6238では通信のタイムラグと時刻のずれを調整するための仕組みを実装することが推奨されている。 なら片方の端末に、時刻の大幅なズレがあると、結果が一致しなくなり、認証できなくなる? この時刻というのは、時計として確認できる時刻のことで間違いないですか? だとすると、二段階認証も脆弱なのでは? なぜなら、各端末の時刻を狂わすウイルスなどがバラまかれて、時刻表示・機能がバラバラになったら、このアプリの機能・計算結果は破綻するから。 少なくとも、この方式での二段階認証の話ですが。 よく色んな所で二段階認証の設定を推奨されているけど、使うのめんどくさいから、ほぼ使ってません。 スマホを交換(買い替え)する時に、二段階認証をオフにしてから変えないと、二段階認証を設定していたサイトにログイン出来なくなるリスクもあるんでしょう? 二段階認証を設定してなくても、被害に遭ったことは無いのに対して、機種変とかの時に二段階認証を設定してることを忘れていて機種変して、ログイン出来なくなるリスクの方が多いと思います。 あくまで個人的には、の話ですが。 そのように考えると、二段階認証のセキュリティーというのは、微妙ですね。 少なくとも、Googleの認証アプリでの二段階認証は。 以上、よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- celtis
- ベストアンサー率70% (2332/3291)
オンラインバンキングなどでも採用されているハードウェアトークンにも、TOTPは採用されています。 ハードウェアトークンは時刻調整ができないので、サーバー側である程度のズレを考慮したワンタイムパスワードの生成と検証をしています。 https://www.ibm.com/docs/ja/sva/10.0.1?topic=authentication-configuring-totp-one-time-password-mechanism サーバー側で許容できないズレが発生すると、そのトークンは使用不能になるようですね。 機密性は保てるでしょうが、可用性は下がります。 https://tech.sanwasystem.com/entry/2015/11/06/195200 スマートフォンの場合、Wi-Fiもしくは携帯通信網に接続できていれば自動的に時刻は同期されます。 完全にオフラインだと内蔵クロックの精度によるので、許容できないズレが発生すると使えなくなるでしょう。 https://internet.watch.impress.co.jp/docs/column/homewifi/1137859.html >機種変とかの時に二段階認証を設定してることを忘れていて機種変して、ログイン出来なくなるリスク 何らかの原因でGoogle 認証システムが使えなくなるのを防ぐために、バックアップコードを事前に取得しておきましょう。 https://support.google.com/accounts/answer/1187538?hl=ja&co=GENIE.Platform%3DDesktop わたしはSmartKeyというアプリを利用して、iPhoneとAndroidの両方で認証できるようにもしてあります。 https://excesssecurity.com/iij-smartkey/
- dell_OK
- ベストアンサー率13% (766/5720)
回答ではないのですが、二段階認証の面倒さに、私は必須でなければ使わないようにしています。 一度、iPhoneの二段階認証をオンにしてしまって不便になり、1週間だったかな解除可能なうちに解除しました。 そうですね。 時間が狂うとワンタイムパスワードは無効になるかも知れません。 二段階にするのは、正規のユーザー以外にログインされることを拒むための仕組みなのでしょうね。 たとえ正規のユーザーがログインできなくなったとしても、データは守り切りました、ってことだと思います。 ワンタイムパスワードは寿命が短いことだけが取柄ですね。 そのうち三段階認証とかになったら、なんかもう、いやですね。