ニュース

「パスワードは12文字以上でより強固に」、不正ログイン防ぐための設定・管理方法をJPCERT/CCが解説

 ウェブサービスで使用するパスワードを使い回すことの危険性を啓発するキャンペーン「STOP! パスワード使い回し! キャンペーン 2019」を、JPCERTコーディネーションセンター(JPCERT/CC)が10月31日まで実施する。キャンペーンサイトでは、「パスワードリスト攻撃」の被害を防ぐための安全なパスワードの設定方法や管理方法などについて紹介している。

単純な文字の組み合わせは、あらかじめ推測されている可能性も

 パスワードリスト攻撃とは、ID・パスワードの組み合わせのリストを攻撃者が何らかの方法で入手し、その組み合わせでログインできるかどうか複数のサービスで試みる手口。ユーザーが複数のサービスで同じID・パスワードの組み合わせを使い回している場合、どこかのサービスからリストが流出してしまうと、他のサービスでも不正ログインされる可能性がある。不正ログインされた場合は、アカウントに登録された決済情報やポイントなどが勝手に利用されたり、個人情報を悪用される恐れもある。

 こうした被害を防ぐためには単純なパスワードの設定や使い回しを避けることが重要になるが、JPCERT/CCでは「安全なパスワードの条件」として、以下の設定方法を推奨している。

・パスワードの文字列は、長めにする(12文字以上を推奨)

・インターネットサービスで利用できるさまざまな文字種(大小英字、数字、記号)を組み合わせると、より強固になる

・推測されやすい単語、生年月日、数字、キーボードの配列順などの単純な文字の並びやログインIDは避ける

・他のサービスで使用しているパスワードは使用しない

 これまでは、英大文字・小文字、数字に加えて記号を組み合わせることが多々推奨されてきたが、「アルファベットを数字や記号に置き換える」などの方法では、覚えやすさが損なわれたり、「p@ssword」のように“a”を“@”に置き換えただけでは、辞書攻撃に使用する辞書データにあらかじめ登録されている可能性もある。そのため、現在では文字数を1つでも多くすることが望ましい。

 例えば、8文字で英大小文字+数字+記号(94種0.6京通り)を全て使った場合よりも、記号を使わない12文字以上の英小文字+数字だけ(36種473京通り)で、攻撃者はパスワードを特定する手間が掛かり、一定の強度を保つことができると推測されている。

 また、[英単語]+[好きな日本語のローマ字]+[英単語]+[英単語]……のように、辞書から単語をランダムに選んだり、日本語の好きな言葉をローマ字にすることで、記憶しやすく、文字数の長いパスワードが生成できるとしている。

 なお、ノースカロライナ大学が実施した実験では、定期的なパスワードの変更は、変更パターンが定型化してしまい、攻撃者に推測されやすくなるという結果が出ている。「パスワードは定期的に変えているので、使い回しはしていない」という場合でも、わずか数文字程度を入れ替えた程度では攻撃者に推測されてしまう可能性がある。

パスワード管理ツールで自動入力、不正ログイン対策には各サービスのセキュリティ機能の利用を

 推測されにくい複雑なパスワードをサービスごとに設定したあとは、パスワード付きのファイルあるいは紙に書いて保管する方法があるが、ID・パスワードは別々に保管することが推奨されている。

 覚えたりメモを確認するのが面倒な場合、パスワード管理ツールにあらかじめ登録しておくことで、利用時にツールから呼び出して自動入力することもできる。ツールを起動するためのパスワードを覚えるだけで済むため、サービスごとに設定した複雑なパスワードを全て覚える必要がなくなる。ただし、クラウドサービスの管理ツールを利用した場合は漏えいリスクがある可能性も考慮する必要がある。

 また、各サービスで提供されているセキュリティ機能を活用することで、不正ログインを防ぐための対策ができる。具体的には、ワンタイムパスワードなどの2段階認証機能を活用することや、過去のログイン日時やアクセス元が分かる「ログイン履歴機能/ログインアラート機能」などを利用することをJPCERT/CCでは推奨している。