Security Questions Are Weak: Safer Alternatives Explained
About 8 min read
「母親の旧姓は?」「最初に飼ったペットの名前は?」多くのオンラインサービスで 採用されているセキュリティ質問は、パスワードを忘れた際の本人確認手段として 広く普及しています。しかし、この仕組みには深刻なセキュリティ上の問題が 潜んでいます。Google の研究チームが 2015 年に発表した論文 「Secrets, Lies, and Account Recovery」では、セキュリティ質問の回答を 攻撃者が 1 回の推測で正解する確率が「好きな食べ物」で 19.7% に達すると 報告されています。さらに、Carnegie Mellon 大学の追跡調査では、 SNS の普及により回答の推測精度がさらに向上し、「出身地」の正解率が 10 年前と比較して約 2 倍に上昇したことが示されています。 2025 年現在、AI による SNS 投稿の自動分析技術が進歩し、 セキュリティ質問の回答を高精度で推測するツールが攻撃者の間で 流通していることも報告されています。 本記事では、セキュリティ質問が抱えるリスクを具体的に解説し、 パスつく.com を活用したより安全な代替手段を紹介します。
セキュリティ質問が危険な理由
SNS から推測可能な回答
セキュリティ質問の最大の弱点は、回答が公開情報から推測できてしまう点です。 現代では多くの人が SNS で日常を発信しており、攻撃者はそこから セキュリティ質問の回答を容易に収集できます。
たとえば、「出身地はどこですか?」という質問に対して、プロフィールに 出身地を記載している人は少なくありません。「好きな食べ物は?」も、 日常的な投稿から推測可能です。「母親の旧姓は?」でさえ、 親族のアカウントや結婚報告の投稿から特定されるケースがあります。
前述の Google の調査では、英語圏のユーザーのセキュリティ質問に対して、 攻撃者が 1 回の推測で正解する確率は「好きな食べ物」で 19.7%、 「出生都市」で 6.9% に達することが報告されています。10 回の推測が 許容される場合、「好きな食べ物」の正解率は 43% にまで上昇します。 これは、パスワードとしては致命的に低い安全性です。 比較として、パスつく.com で生成した 12 文字のランダムパスワードを 10 回の推測で当てる確率は事実上ゼロ (10 の 20 乗分の 1 以下) であり、 セキュリティ質問との安全性の差は歴然です。
データ漏洩による回答の流出
セキュリティ質問の回答は、サービス側のデータベースに保存されています。 データ漏洩が発生した場合、パスワードだけでなくセキュリティ質問の回答も 流出する可能性があります。パスワードはハッシュ化されて保存されることが 一般的ですが、セキュリティ質問の回答は平文のまま保存されている サービスも存在します。
さらに深刻なのは、セキュリティ質問の回答は変更が困難だという点です。 パスワードは漏洩後すぐに変更できますが、「母親の旧姓」や「出身地」は 事実に基づく情報であるため、一度漏洩すると永続的にリスクが残ります。 同じ質問を複数のサービスで使い回している場合、1 つのサービスからの 漏洩が他のすべてのサービスに波及します。 この「変更不可能な認証情報」という性質は、パスワードにはない セキュリティ質問固有の構造的欠陥です。
回答の一意性が低い
セキュリティ質問の回答は、多くのユーザー間で重複しやすいという 構造的な問題もあります。「好きな色は?」という質問に対して、 「青」「赤」「緑」といった回答が大多数を占めます。 攻撃者は統計的に多い回答を優先的に試すことで、 効率的にアカウントを突破できます。
セキュリティ質問の推測攻撃と対策について、account takeover prevention and guessing attack books (Amazon)も参考になります。
より安全な代替手段
二段階認証の導入
セキュリティ質問に代わる最も効果的な手段は、二段階認証 (2FA) の導入です。 認証アプリ (Google Authenticator、Microsoft Authenticator など) や ハードウェアセキュリティキーを使用すれば、パスワードが漏洩しても アカウントを保護できます。セキュリティ質問を無効化できるサービスでは、 積極的に二段階認証へ移行しましょう。
ただし、二段階認証にも注意点があります。SMS ベースの 2FA は SIM スワップ攻撃によって突破されるリスクがあるため、 可能であれば認証アプリや FIDO2 対応のハードウェアキーを選択してください。 FIDO2 キーはフィッシング耐性も備えており、 セキュリティ質問とは比較にならない堅牢性を提供します。二段階認証の重要性の 記事も参考にしてください。 ハードウェアセキュリティキーの導入について、FIDO2 hardware security key guides (Amazon)も参考になります。
パスつく.com でランダムな回答を生成する
セキュリティ質問の設定が必須のサービスでは、事実に基づく回答ではなく、 パスつく.com で生成したランダムな文字列を回答として登録する方法が有効です。 「母親の旧姓は?」に対して「xK9#mP2vLq」のようなランダム文字列を 設定すれば、SNS からの推測もデータ漏洩による悪用も防げます。
パスつく.com でセキュリティ質問用の回答を生成する手順は以下のとおりです。
- パスつく.com で 12-16 文字のパスワードを生成する
- 英大文字・英小文字・数字を含める (記号はサービスによって受け付けない場合がある)
- 生成した文字列をセキュリティ質問の回答として登録する
- 質問と回答のペアをパスワードマネージャーに保存する
この方法の注意点は、ランダムな回答を忘れるとアカウント復旧が 困難になることです。必ずパスワードマネージャーに「サービス名 + セキュリティ質問 + 回答」をセットで記録してください。 パスつく.com の一括生成機能を使えば、複数の質問に対する回答を まとめて生成することも可能です。
もう 1 つのよくある誤解として、「嘘の回答を設定すれば安全」と 考えるケースがあります。たとえば出身地を「東京」ではなく「パリ」と 設定する方法ですが、これは推測の難易度を多少上げるだけで、 回答の候補が有限である問題は解消されません。 ランダム文字列であれば候補空間が事実上無限になるため、 根本的な解決策となります。
認証方式の安全性比較
セキュリティ質問の代替手段を検討する際、各認証方式の安全性を 比較して理解しておくことが重要です。
- セキュリティ質問: 推測攻撃に脆弱。1 回の推測で最大 19.7% の正解率。変更不可能な情報に依存
- SMS 認証: SIM スワップ攻撃に脆弱。米国では 2023 年に被害が急増
- TOTP (認証アプリ): 30 秒ごとに変わるワンタイムコード。フィッシングには脆弱だが、推測攻撃には強い
- FIDO2 / パスキー: フィッシング耐性あり。現時点で最も安全な認証方式
可能な限り FIDO2 やパスキーへの移行を推奨しますが、対応していない サービスではセキュリティ質問の回答をパスつく.com でランダム化する 方法が現実的な防御策です。
セキュリティ質問との正しい付き合い方
セキュリティ質問を完全に避けることは難しい場合もあります。 その場合は、以下の原則を守ることでリスクを最小限に抑えられます。
- 事実に基づく回答は絶対に使わない
- 複数のサービスで同じ回答を使い回さない
- パスつく.com で生成したランダムな文字列を回答にする
- 回答はパスワードと同等の機密情報として管理する
- 可能であれば二段階認証に切り替え、セキュリティ質問を無効化する
今すぐできること
- 利用中のサービスでセキュリティ質問が設定されている場合、回答をパスつく.com で生成したランダム文字列に置き換える
- セキュリティ質問を無効化できるサービスでは、二段階認証 (認証アプリまたは FIDO2 キー) に切り替える
- 質問と回答のペアをパスワードマネージャーに「サービス名 + 質問 + 回答」のセットで保存する
- SNS のプロフィールから出身地、学校名、ペットの名前など、セキュリティ質問の回答に使われやすい情報を削除する