以前のパスクリ通信でパスワードの文字数について記事を書きました。
>「パスワードの文字数は何文字にする??」(パスクリ通信2017年9月29日)
この記事の中で、2014年の時点では英大小文字+数字+記号 (96文字種)の組み合わせによる8桁パスワードは破られるまでに「20日間」かかる、ということでした。
次に1年後にパスワードが破られるまでの時間を診断するサイトをご紹介しました。
>「パスワードが破られる時間」(パスクリ通信2018年9月21日)
このサイトでの診断だと、英大小文字+数字+記号 (96文字種)の組み合わせによる8桁パスワードは破られるまでに「9時間」という診断が出ます。
これはブルートフォース(総当たり)攻撃を行うコンピュータの処理速度の向上によるもので、日進月歩で、破られるまでの時間が短くなってきています。
そしてつい先日(2018年2月13日)hashcatという、オープンソースのパスワードクラッキングツールの公式ツイートで、「Windows2000以前で使われてきたActive DirectoryのNTLM認証において、100ギガハッシュ/秒のクラッキングスピードを達成した」という発表がありました。
このスピードについて、専門家による解説では、大小文字+数字+記号 (96文字種)の組み合わせによる8桁パスワードはわずか2.5時間で破られてしまうことになるようです。
しかもこの処理スピードを実現するために高額なPC環境を用意しなくてもAWSのようなクラウドサービスを使えばわずかな費用で実現することができる、というのですから驚きです。
一般的なWebサービスで採用されている認証方式はこの発表で言われている認証方式と少し違いますが、いずれにしても文字種を問わず8桁のパスワードはもやはや短時間で破られてしまうようになってきていることには変わりありません。
もちろんWebサービス側で、認証時にパスワード入力間違いを一定回数以上繰り返したら、ログイン作業ができなくなる「ロックアウト」を設定してあれば、パスワードの総当たり攻撃を防御することもできますが、中にはロックアウトを設定していないところも依然残っています。そのようなセキュリティ意識の低いサービスと同じパスワードを、きちんとロックアウト設定してあるサービスにも使い回していたら、セキュリティの弱いところでバレたパスワードで、きちんとしたサービスのほうでも試されて認証を突破されてしまうことも十分にありえます。
ちなみにWebサイト構築のプラットフォームとして使われているWordPressも、セキュリティプラグインを入れてないデフォルト状態ではアカウントロックアウトが設定されてません。管理者用のログイン画面にアクセスされて、総当たり攻撃を仕掛けられ、突破されて改ざんされる恐れありますので、注意しましょう。
また、Webサービスの認証ではないですが、ZIPファイルの圧縮時にかけるパスワードもロックアウト設定がないので、パスワード総当たり攻撃でやられてしまうリスクがあります。実際にZIPファイルのパスワードを総当たり攻撃で解析するフリーソフトまであるくらいですので、8文字程度のパスワードでは全然安全ではない、ということなのです。
固定パスワードを採用している現在の認証システムでは、セキュリティに相当厳しいところでも「最低8文字」「文字種は英大文字+英小文字+数字+記号の組み合わせ」という定説に従ってパスワードの設定ルールを決めているところがほとんどです。
長いパスワードを設定できるならユーザー側でパスワードを長くして対応することもできるのですが、「12文字まで」と短い文字数でしか設定できない場合もあります。12文字はいまや英大小文字+数字+記号を使って最低限な文字数です。今後のコンピュータの処理速度の向上やAI技術の発展次第では、数年であやうくなってしまうかもしれません。
サービス運営側も、従来型の固定パスワード認証を見直し、ワンタイムパスワード認証や、生体認証、そして二要素認証などで見直していかないといけない時代ということです。そしてユーザー側も、事業者側のシステム変更を待つのではなく、使っている固定パスワードをさらに安全なものに変更していくようにしていきましょう。