1秒間に1000億個のパスワードを試せるマシンはすでに存在する、パスワードを安全に保つ方法とは?
近年では、パスワードの漏えい事件が相次いでいるほか、コンピューターの性能向上により総当たりでパスワードを突破される危険も高まっています。そこで、「安全なパスワードとは何なのか?どのようにすればパスワードの安全性を保つことができるのか?」という疑問について、オーストラリアのエディスコーワン大学の研究者らが解説しています。
A computer can guess more than 100,000,000,000 passwords per second. Still think yours is secure?
https://theconversation.com/a-computer-can-guess-more-than-100-000-000-000-passwords-per-second-still-think-yours-is-secure-144418
◆パスワードは長いほど安全なのか?
ITの分野でパスワードが使われるようになったのは1960年代のことですが、現代ではATMで入力するPINコードやウェブサイトへのログインまで、生活のあらゆる場所でパスワードが用いられています。比較的最近までは、パスワードといえば「6~8文字の単語や語句」が一般的でしたが、近年ではパスワードの最低文字数が大きくなる傾向があります。これは、「パスワードのエントロピー」を増やすためだとのこと。
パスワードのエントロピーとは、パスワードの「予測可能性」を示す尺度です。たとえば以下の表では、上から「アルファベットの小文字だけを使った4文字のパスワード」「アルファベットの小文字だけを使った8文字のパスワード」「アルファベットの小文字と大文字を使った8文字のパスワード」「アルファベットの小文字と大文字、そして数字を使った8文字のパスワード」「アルファベットの小文字と大文字、数字、記号を使った8文字のパスワード」について、それぞれの候補となる文字列の数が記されています。パスワードの文字数や使える文字の数が増えるほど、候補となるパスワードの数が増えて予測しにくくなっていることがわかります。
しかし、単純に「パスワードの文字列を長くすれば安全だ」と考えることはできないと研究者らは指摘。「パスワードの複雑さに依存することの問題点は、コンピューターがパスワードの推測を含めた繰り返し作業を非常に効率的に行えるという点です」と研究者は述べており、たとえパスワードが複雑であっても、パスワードを総当たり攻撃(ブルートフォースアタック)で突破される危険が残っているとのこと。
2019年の記録では、コンピューターが1秒当たりで1000億個以上の速度でパスワードを試すことができたそうで、犯罪者はコンピューターを使って容易に総当たり攻撃を仕掛けることが可能です。さらに、現代のクラウドベースのコンピューティングを使えば、8文字のパスワードを突破するのに必要な時間はわずか12分で、かかるコストはたったの25ドル(約2600円)とのこと。パスワードは機密データや重要なシステムへのアクセスに利用されるため、犯罪者が積極的に総当たり攻撃を試す動機があるといえます。
I did some math.
— TechByTom (@techbytom) February 14, 2019
Using AWS p.3 instances to calculate cost, and assuming the attacker has $25:
Your 8 character password will probably be cracked in 12 minutes or less.
◆パスワードはどのように保存されているのか?
一般的にパスワードはハッシュ関数と呼ばれる数学的アルゴリズムを用いて別の値に変換(ハッシュ化)されて保存されており、ハッシュ化された値から元のパスワードに戻すことはできません。たとえば「Pa$$w0rd」というパスワードをSHA-1というハッシュ関数でハッシュ化すると、「02726d40f378e716981c4321d60ba3a325ed6a4c」となります。ユーザーがログインする場合にも入力したパスワードがハッシュ化され、保存された値と照合されています。
しかし、特定のハッシュ関数でハッシュ化された値に対応するパスワードを掲載しているウェブサイトも存在しており、上記の「02726d40f378e716981c4321d60ba3a325ed6a4c」で検索すると、対応する「Pa$$w0rd」というパスワードが判明してしまいます。
また、パスワードを販売するオンライン市場も犯罪者から人気を集めており、電子メールアドレスやユーザー名とセットで販売されるケースもあるとのこと。パスワードそのものが漏えいしている場合、パスワードの長さは関係ありません。
自分のパスワードが漏えいしているのかどうかを調べるウェブサービスとしては、無料で自分のパスワードが過去の漏洩データに載った危険なものかどうかをチェックできる「Pwned Passwords」などがあります。
無料で自分のパスワードが過去の漏洩データに載った危険なものかどうかをチェックできるサービス「Pwned Passwords」 - GIGAZINE
◆どうやってセキュリティを維持すればいいのか?
しかし、人々はパスワードのセキュリティについて真剣に考えていないとの指摘もあります。パスワードの漏えいやハッキング被害が何度もニュースで報道されているにもかかわらず、10億件超の資格情報を分析した結果、最も利用されているパスワードは「123456」であることが判明しています。
10億件超の資格情報を分析して明らかになった最も利用されているパスワードは「123456」 - GIGAZINE
この理由について研究者らは、「複雑すぎるパスワードを覚えられない」「必要なパスワードの数が増えている」ことなどが原因だと指摘。現代では生活の中で多くのウェブサイトやサービスにログインしなければならず、1人当たりが所有するパスワードの数は平均70~80個との調査結果も出ています。これほどのパスワードをいちいち設定して覚えるのは困難です。
研究者らはこの問題を解決するため、ブラウザにパスワードを保存する機能を利用することや、パスワードマネージャーを利用することを提案しています。パスワードマネージャーを使えば、1つのマスターパスワードで複数のウェブサイトで必要となるパスワードを管理できるため、長くて複雑なパスワードを使用する際に便利です。
また、近年では単一のパスワードのみに頼るのではなく、パスワード以外の要素を組み合わせた2段階認証を採用する動きも進んでいます。2段階認証を使用することで、パスワードが漏えいしても致命的な被害にならないケースが増えるため、セキュリティを向上することができます。
パスワード認証に取って代わる2段階認証とその未来とは? - GIGAZINE
by Brian Ronald
・関連記事
10億件超の資格情報を分析して明らかになった最も利用されているパスワードは「123456」 - GIGAZINE
セキュリティ専門家が「パスワードの複雑さはそれほど重要ではない」と主張するのはなぜか? - GIGAZINE
ランダムな文字列っぽい「ji32k7au4a83」というパスワードが大量のユーザーに使われていた理由とは? - GIGAZINE
8文字のWindowsパスワードはわずか2時間半で突破可能と判明 - GIGAZINE
パスワード認証に取って代わる2段階認証とその未来とは? - GIGAZINE
「アカウント情報が流出してもパスワードを変更しない人が大半」という調査結果 - GIGAZINE
無料で自分のパスワードが過去の漏洩データに載った危険なものかどうかをチェックできるサービス「Pwned Passwords」 - GIGAZINE
無料でブラウザ上でも動作&クラウド同期も可能なKeePass互換パスワードマネージャー「KeeWeb」 - GIGAZINE
・関連コンテンツ