日常的にSNSなどのパスワードを必要とする複数のサービスを利用している方でも、そこで使われるIDやパスワードの管理方法に関しては、あまり意識されていない方も多いのではないでしょうか。
ネットにつながってさえいればどの端末からでも利用可能なサービスは非常に便利ですが、逆にいえばIDやパスワードさえ手に入れば自由に使えてしまうので、パスワードの管理は重要になっています。
複数のサービスで同じID・パスワードの組み合わせを使用していると、どこかのサービスでパスワードの漏えいが発生したときに、他サービスのアカウントも乗っ取られてしまうリスクがあります。そのため、パスワードは利用しているサービスごとに変える必要があります。そうなると、覚えるべきパスワードが膨大になるので、管理するための工夫が必要となります。
ログイン情報を管理する簡易的な方法としては、サービスごとのIDとパスワードをスマートフォンやパソコンのメモ帳に残しておくことです。ただしこの方法では、パソコンが盗まれたり、外部から侵入されたりして、メモが漏洩すると管理しているログイン情報がすべて盗まれてしまうことになります。メモに残す場合は、パスワードをそのまま書かずに「2文字目にxを加えると正しいパスワードになる」といったルールを決めて、メモのファイルを盗まれても本当のパスワードが分からないようにするといった工夫を加えることで、漏洩時のリスクを大幅に減らすことができます。
ただし、いくら工夫しても、こういった手動での管理はミスが起こりがちです。コストはかかりますが、パスワードの管理ソフトを導入するのも一つの方法です。パスワード管理ソフトは1Password、LastPass、パスワードマネージャーなどのソフトが有名です。管理ソフトを起動するためのマスターパスワードさえ覚えておけば、各サービスのIDやパスワードを覚える必要がありません。スマートフォン版の管理ソフトは指紋認証での起動にも対応していて、普段はマスターパスワードの入力も不要で便利です。データは暗号化された状態でサーバーにも保存されていて複数の端末からのアクセスも可能となっていますので、端末が故障しても管理しているパスワードは失われません。
パスワードが漏洩しなくても、「弱いパスワード」を使用していると、不正な手法によってログインされてしまう可能性はあります。
「弱いパスワード」というのは、数字の組み合わせだけの単純すぎるパスワードや、文字数の少ないパスワード、多くの人たちが使っている頻出パスワードを指します。
「123456」や「password」といった単純なパスワードを使用している人は非常に多いといわれています。その他にも「qwerty」(キーボードの左上から並び順)や「admin」(administrator=管理者の略)、「letmein」(Let me in=中に入らせてください、の意味)などもありふれたパスワードといえます。悪意のある攻撃者によってIDやパスワードを解析されてしまわないよう、設定するパスワード自体にも工夫が必要です。
IDやパスワードの解析手段は「ブルートフォース」や「リバースブルートフォース」という手法が有名です。
ブルートフォースとは「力ずくで行う」という意味で、攻撃対象のIDで使用されるパスワードを総当たりで特定する方法です。コンピュータを使って、考えられるすべての文字列の組み合わせを総当たりで試し、文字通り力ずくでパスワードを見つけ出すという方法です。この攻撃手法では、前述の頻出パスワードのリストや、一定の文字数以下のすべての英数字の組み合わせが載った「パスワード辞書」が使用されます。
逆に、リバースブルートフォースはよく使われるパスワードを用意して、そのパスワードを使用しているIDを探し出す方法です。特定のターゲットに対する攻撃ではなく、ログインさえできればいいという場合に使用され、ログインIDが連番になっているサービスだと攻撃対象にされやすくなります。他のサービスで流出したメールアドレスのリストが使用されることもあります。
ブルートフォースの場合は「パスワードを5回連続で間違えるとログインができなくなる」というシステム側での対策が良く使われていますが、リバースブルートフォースの場合、一つのIDに対して1回ずつしかログインを試行しないため、連続ログインミスをもとにした対策は無効化されます。
ブルートフォースもリバースブルートフォースも、文字数が少ないパスワードや、よく使われるパスワードなど「弱いパスワード」がターゲットとなります。パスワードを設定する際に、「強いパスワード」を意識するようにしましょう。
どのようなパスワードが「強いパスワード」になるのでしょうか。
「アルファベットは小文字だけではなく大文字を入れる」「数字も組み合わせる」「!?#$などの記号を含める」などの工夫で、パスワードの強度は上がりますが、もっとも単純な対策は「文字数を増やす」ことです。
文字の種類を増やすよりも、一文字増えるほうが組み合わせの数が膨大になり、力ずくでパスワードを突破するのに要する時間が格段に上がります。
パスワードに代わる「パスフレーズ」の普及を提唱する声も上がっています。パスワードの「ワード」は単語という意味ですが、一つの単語ではなく、文章(フレーズ)になるような数十文字の長い文字列をパスワードとして設定するのがパスフレーズの考え方です。
パスワードは短い文字列の中で工夫して強度を上げるしかないため、どうしても覚えにくいものができてしまいます。パスフレーズは文字数で強度を上げるので、突破されにくい長さを持ちながらも、単純で覚えやすく、入力もしやすいというメリットがあります。
ただし、サービスによってはパスワードの文字数制限があるため、パスフレーズが利用できない場合もあります。
銀行や行政サービスのような、個人情報を多く取り扱うサービスにおいて、ウェブサイトへのログイン時に「パスワードが一定期間変更されていません。新しいパスワードを設定してください」といった表示を目にしたことがある方も多いのではないでしょうか。長い間同じパスワードを使用していると、不正なアクセスを許してしまう可能性があるという説があるため、行われている処置です。しかし、最近ではその説が疑問視されていて、パスワードの定期的な変更にはセキュリティ上の意味がないという見解がセキュリティ専門家の中では一般的です。
パスワードを定期的に変更する必要があると分かっていると、手間がかかるため単純なパスワードや似たパスワードを使用する傾向が強くなります。これまでのパスワードの一部の文字を変えただけのパスワードを設定する場合が多くなり、頻出パスワードを使う可能性も高くなります。結局、辞書攻撃する攻撃者側からすれば同じ文字数のパスワードでは突破に要する時間に違いはなく、不正アクセス防止の役には立ちません。パスワードの定期的な変更はユーザーに不便を強いるデメリットだけで、メリットはないといわれています。
セキュリティを高めるためには定期変更よりも文字数の長さのほうが重要ですが、皮肉にも定期変更を要求する銀行系のサービスはパスワード文字数が短く制限されていることが多く、セキュリティ的にかなり弱いパスワードしか使用できないことがあります。
サービスごとにIDやパスワードを変えて利用するのはどうしても面倒ですが、ブラウザのオートコンプリート機能を使用すると入力の手間が省けます。
ウェブサイト上でIDやパスワードを入力して初めてログインをした際に、そのパスワードを記憶するかどうか確認するメッセージが表示されるのを見たことがある方も多いでしょう。この機能を使うと、IDやパスワードを毎回入力する必要がないので、複雑なパスワードに設定していても利便性が落ちることがなく、パスワードの強化の手助けになります。
しかし、ログインしたままの状態になっている端末は、本人以外でもパスワードの入力が不要になってしまう点には注意が必要です。スマートフォンを紛失してしまった際や、職場や学校など複数人で同じPCを共有している場合は特に危険といえるでしょう。スマートフォンは顔認証や指紋認証を利用していれば比較的リスクは低いですが、PCを共有している場合は、席を離れる際にはサービスからログアウトをする、もしくはPC自体にロックをするといった習慣をつけることをお勧めします。
利用しているサービスが増えると、管理するパスワードも増えていきます。最近では、サービス独自のパスワード認証を行わず、他のサービスのIDとパスワードでログインを管理するOpenID(オープンアイディ)という仕組みが使われるようになっています。
OpenIDでのログインに対応したサービスでは、「OpenID認証サービス」に対応した別のサービスのログインIDとパスワードで利用することが可能で、個別のパスワードを設定する必要がなくなります。TwitterやFacebook、Google、Yahoo!などの、多くのユーザーを抱えた企業が、OpenID認証サービスを提供しています。
認証サービスを提供している会社のIDとパスワードだけで、多くのサービスを利用することができるようになり、覚えるべきパスワードを減らすことが可能になります。
その一方で、認証サービス側のIDとパスワードが他の人に知られてしまうと、そのログイン情報を使ったすべてのサービスで乗っ取られる危険性があります。
銀行などの金融系のサービスや、OpenIDで利用しているIDとパスワードは漏洩時のリスクが大きいため、厳重に管理する必要があります。そのため、これらのサービスでは、通常のIDとパスワード以外に加えて別の本人確認の仕組みを用意しています。それが「多要素認証」です。
「本人だけが知っている情報」という前提でパスワードによる本人確認を行うのが通常のログインの仕組みですが、それに加えて「本人だけが持っている」「本人の生体情報」などの要素を組み合わせるのが「多要素認証」です。 多要素認証では「ワンタイムパスワード」「乱数表」「指紋認証」などが良く利用されます。
ワンタイムパスワードは、その名の通り一回限りのパスワードで、ログインパスワード入力時に発行されて本人のメールやSMS、アプリなどを経由して通知されます。ワンタイムパスワードを知りえるのは本人だけなので、仮にログイン用のパスワードが漏洩しても、本人以外はワンタイムパスワードが受け取れないのでログインできません。また、発行済みのワンタイムパスワードは二度と使用されないので、ワンタイムパスワードごと漏洩しても、不正ログインには使用できません。当然ですが、メールアドレスごと攻撃者に乗っ取られた場合は無力ですし、友人に成りすましてワンタイムパスワードを発行させて聞き出すという手口の攻撃もあります。
乱数表はオンラインバンキングのログインでよく使用されます。5×5のマス目に数字が印刷された乱数表のカードを入会時に受け取り、ログインの際はその都度指定された場所の数字を入力するといった方法で本人確認を行います。入力内容は毎回異なるので、「キーロガー」という入力内容を盗み取るソフトで、入力内容を知られても乱数表の全てを把握できないので安全です。ただし、乱数表のすべての入力させるようなフィッシングサイトやマルウェアもあるので注意が必要です。
普段あまり気にしていないパスワードやIDといった重要な情報を紛失して困らないよう、定期的なデータのバックアップを心がけましょう。
パソコンやスマホでメモ帳を使ってパスワードを管理する場合は、定期的にバックアップを取る習慣を付けていないと、データが読めなくなったときに情報が失われるというリスクも生じます。もし保存メディアが異常をきたしてデータが見られなくなった場合や、誤って削除してしまった場合でも、弊社でデータを取り戻せる可能性は十分ございます。万が一の場合にはぜひ一度ご相談ください。