アカウントのセキュリティとリカバリ性を高める新サービスとベストプラクティス

Image of Neil Matatall

アカウントへの不正アクセスを防ぐには、強固な認証情報と認証プロセスが必要です。GitHubのアカウントにはすべてパスワードが設定されていますので、まずはパスワードを強固にすることが重要となります。そのうえで、セキュリティをさらに強化するために、2要素認証(2FA)を有効にすることを強くお勧めします。GitHubでは、セキュリティ、利便性、リカバリ性のバランスを最適化する2つの新サービスを導入します。

不正アクセスを受けたパスワードの通知

パスワードはできるだけ長くして、アカウントを持っているWebサイトごとに使い分けるべきであるとよく言われます。しかし、複雑なパスワードそれぞれのサービスごとに記憶するのはなかなか難しいため、パスワード管理ツールに頼ったり、単純なパスワードを作成しがちです。このため、パスワードの使い回しが蔓延してしまい、一度不正アクセスを受けただけで、パスワードの強度に関係なく、同じパスワードが設定されているアカウントすべてが危険にさらされることになります。
数年前、セキュリティ研究者のトロイ・ハント氏がパスワードの不正アクセス問題に対処するため、HaveIBeenPwned.comというプロジェクトを立ち上げました。ハント氏は、特定のパスワードが不正アクセスを受けたかどうかを確認できるサービスを提供すると共に、約5億1,700万件の情報を含むデータセットをダウンロードできるようにしました。GitHubでは、このデータを使用して社内版のHaveIBeenPwnedを構築し、流出したデータにGitHubユーザのパスワードが含まれているかどうかを検証できるようにしました。

image

このサービスをより進化させ、GitHubでは不正アクセスを受けたパスワードを使用しているユーザに対し、ログイン、登録、またはパスワード更新の際に、別のパスワードに変更するよう促すサービスを開始しました。

なお、GitHubのデータベースに登録されているパスワードは、パスワードハッシュ関数bcryptで保護されていますので、ご安心ください。GitHubでは、皆さんが登録するパスワードが不正アクセスを受けたかどうかを確認する目的でのみ、パスワードの検証を実施しています。

2要素認証の確認をお知らせ

2要素認証を使用することは、アカウント保護のベストプラクティスであり、パスワードが脆弱なものだったり、不正アクセスを受けた場合でも、アカウントを保護するのに役立ちます。しかし、2要素認証は諸刃の剣です。2要素認証ではアカウントにアクセスするにあたり2つの要素が必要です。つまり、2つの要素のどちらかひとつでもアクセスできなくなると、アカウント自体にアクセスできなくなることを意味します。

image

そこでGitHubは、2要素認証を有効にしているユーザに対し、そのセットアップオプションとリカバリオプションを確認するよう定期的にお知らせすることにしました。

なお、スマートフォンを紛失、盗難、水没などの理由で使用できなくなった場合に備えて、クラウドバックアップに対応した2要素認証アプリケーションを使用することを強くお勧めします。

これら新サービスは、GitHubアカウントのセキュリティ強化に役立ちます。ぜひこの機会に、以下の手順にそって、セキュリティの設定を見直してみてください。セキュリティ、利便性、リカバリ性のどれを重視するかは、ご自身での判断となります。

これら新サービスは、GitHubアカウントのセキュリティ強化に役立ちます。ぜひこの機会に、以下の手順にそって、セキュリティの設定を見直してみてください。セキュリティ、利便性、リカバリ性のどれを重視するかは、ご自身での判断となります。
これら新サービスは、GitHubアカウントのセキュリティ強化に役立ちます。ぜひこの機会に、以下の手順にそって、セキュリティの設定を見直してみてください。セキュリティ、利便性、リカバリ性のどれを重視するかは、ご自身での判断となります。

  1. 現在のパスワードを、パスワード管理ツールで生成して、十分な長さがあり、ほかのWebサイトで使用していないものに変更する。パスワード管理ツールは、クラウド同期に対応したものを使用することを検討してください。

  2. 2要素認証を使用する。その際、TOTPアプリケーションを使用すると、SMSでコードを受け取る場合よりもセキュリティが強化されますが、万が一の際にアカウントにアクセスできなくなる可能性も高まります。2要素認証で使用する認証情報を安全にバックアップできる、クラウド同期に対応したアプリケーションを使用することを検討してください。

  3. 2要素認証用のデバイスにアクセスできなくなった場合に備えて、アカウントをリカバリするための手段を用意しておく。特に安全性が高いのは、ハードウェアU2Fキーです。また、パスワード管理ツールや物理的に安全な場所など十分なセキュリティが確保された場所に、2要素認証のバックアップコードを保存しておきます。同時に、Recover Accounts Elsewhereを使用して、アカウントをFacebookにリンクすることも検討してください。

  4. 必要に応じてメインのメールアドレスを変更すると共に、バックアップのメールアドレスが適切であるかどうかを確認します。これにより、パスワードリセットに利用できるメールアドレスを確認できます。

  5. GitHubのその他の認証情報を確認する。GitHubでは、1年間使用されていないSSHキーデプロイキーOAuthの認可情報、および個人アクセストークンを削除していますが、これらを手動で定期的に見直すことをお勧めします。

  6. HaveIBeenPwnedの通知サービスに登録することを検討する。このサービスを利用するにあたり、パスワードを入力する必要はありません。

なお、GitHubアカウントで2要素認証をまだ設定していない場合は、アカウント設定にアクセスし、[Security]タブをクリックすることで設定できます。