(Last Updated On: 2018年8月18日)今すぐできる、Webサイトへの2要素認証導入と2要素認証のTOTPとHOTP、どちらがより安全か?で紹介したGoogleAuthenticatorですが、ソースコードを確認ところタイミング攻撃に脆弱でした。Pull Requestを後で送る予定ですが、利用される場合は脆弱性を修正してから使ってください。 タイミング攻撃とは? タイミング攻撃とは、発熱、ノイズ、時間差、データサイズ(特に圧縮)などの副作用を用いたサイドサイチャネル攻撃の一種です。アルゴリズムなどの脆弱性を直接攻撃するのではなく、時間差などを統計的に処理することにより目的を達成(攻撃)することができます。 タイミング攻撃ではレスポンス時間の微妙な長さの違いを統計的に処理し、目的の秘密情報を盗み取ります。OTPでは数字しか使っておらず、桁数も6桁しかありません。脆弱な場合