アカウント乗っ取りとは何ですか?
一般的な人であれば、個人とビジネスの両方のウェブサイト、アプリケーション、システムにアクセスするために、数十のオンラインアカウントを持っています。アカウント乗っ取り攻撃 (その名の通り) は、これらのアカウントへのアクセスを試み、攻撃者がデータを盗んだり、マルウェアを配信したり、アカウントの正当なアクセスや権限を他の悪意のある目的のために使用することを可能にするものです。
アカウントの乗っ取りはどのように行われますか?
アカウント乗っ取り攻撃を行うには、攻撃者は標的のアカウントの認証情報 (ユーザー名とパスワードの組み合わせなど) にアクセスする必要があります。攻撃者は、この情報を様々な方法で入手することができます。
- Credential Stuffing: クレデンシャルスタッフィング攻撃は、ボットを使用して、一般的なパスワードや漏洩したパスワードのリストを使用して、ユーザーアカウントへのログインを自動的に試みます。このような攻撃が可能なのは、多くのユーザーアカウントが脆弱なパスワードや再利用されるパスワードで保護されているためであり、セキュリティ上の大きな問題です。
- フィッシング: フィッシング攻撃は一般的にユーザー資格情報を標的にします。悪意のあるリンクがよく使われ、ユーザーをサービスの偽のログインページに誘導し、攻撃者がそのログイン認証情報を収集できるようにします。
- マルウェア: ユーザーのコンピュータに感染したマルウェアは、様々な方法でパスワードを盗むことができます。例えば、ブラウザやシステムのパスワードキャッシュから認証情報をダンプしたり、アカウントに認証される際のユーザーのキーストロークを記録したりすることです。
- アプリケーションの脆弱性: 組織のシステムやネットワークにアカウントを持つものは、ユーザーだけではありません。アプリケーションにもアカウントがあり、攻撃者はこれらのアカウントの脆弱性を利用して、アクセス権を取得することができます。
- Cookieの詐取: ユーザーのコンピュータに保存されているCookieは、ログインセッションに関する情報を保存し、パスワードなしでアカウントにアクセスできるようにすることができます。これらのクッキーにアクセスすることで、攻撃者はユーザーのセッションを乗っ取ることができます。
- ハードコードされたパスワード: 一般的にアプリケーションは、その役割を果たすために様々なオンラインアカウントにアクセスする必要があります。これらのアカウントのパスワードは、アプリケーションのコードや設定ファイルに保存されていることがあり、GitHub上で公開されるなどして流出する可能性があります。
- APIキーの漏洩: APIキーおよびその他の認証トークンは、アプリケーションがAPIを介してオンラインアカウントやサービスにアクセスできるように設計されています。これらのキーが誤ってGitHubのリポジトリにアップロードされるなどして流出した場合、部外者が組織のアカウントにアクセスできるようになる可能性があります。
- ネットワークトラフィックの傍受: ほとんどのネットワークトラフィックは暗号化されており安全ですが、一部のデバイスではTelnetなどの安全でないプロトコルがまだ使用されています。この暗号化されていないネットワークトラフィックを見ることができる攻撃者は、そこからログイン情報を引き出すことができます。
アカウント乗っ取り攻撃の影響
アカウントの乗っ取りが成功すると、攻撃者は正規のアカウント所有者と同じアクセス権限を取得します。このアクセスにより、攻撃者は次のような様々なアクションを取ることができます。
- データ盗難:アカウント乗っ取り攻撃により、クレジットカード番号や個人を特定できる情報(PII)のような、機密性の高い、または保護された膨大な量のデータが侵害され、流出する可能性があります。
- マルウェアの配信: アカウント乗っ取り攻撃により、攻撃者は ランサムウェア などのマルウェアを企業のシステムにインストールし、実行することができます。
- フォローオン攻撃: 一度、攻撃者が正規のアカウントにアクセスすると、そのアクセス権を利用してさらに攻撃を行うことができます。特定のアカウントへのアクセス権を得ることは、この目的のためだけに行われることもあります (例:攻撃者は、ユーザーが複数のアカウントでパスワードを再利用していることを期待して、ログイン情報を盗む可能性があります)。
- ラテラルムーブメント: 不正アクセスされたアカウントは、他の安全なネットワークへの攻撃者の侵入口となる可能性があります。この最初の出発点から、攻撃者は他の企業システムへアクセスを拡大したり、特権を拡大することができます。このプロセスは、ラテラルムーブメントと呼ばれています。
- 経済的利益: 侵害されたアカウントを自分で使用する代わりに、攻撃者はそのアクセス権をダークウェブで販売することがあります。
アカウント乗っ取り攻撃に対する防御方法
組織は、アカウント乗っ取りを防止し、これらの攻撃の影響を最小限に抑えるために、いくつかの手段を講じることができます。
アカウント乗っ取り防止
アカウント乗っ取り攻撃のリスクに対応するためには、深層防御が最適なアプローチとなります。アカウント乗っ取り攻撃は、一般的にアカウントのセキュリティが不十分であることを利用して行われます。アカウント乗っ取り攻撃を防止するために、企業が講じることのできる防御策には、次のようなものがあります。
- 強力なパスワードポリシー: アカウント乗っ取り攻撃の多くは、脆弱なパスワードや再利用されるパスワードを利用します。強力なパスワードポリシーを定義して、実施し、ユーザーパスワードが漏洩した場合のテストも含めることで、クレデンシャルスタッフィングやパスワードクラッキング攻撃をより困難なものにすることができます。
- フィッシング対策: フィッシング攻撃は、攻撃者がユーザーのパスワードを盗み出すための一般的な方法です。リスクの高いメールをフィルタリングしたり、インターネットフィルタリングで疑わしいドメインをブロックすることで、組織はユーザーが不用意に認証情報を漏洩するリスクを低減することができます。
- 多要素認証 (MFA): MFAでは、パスワードと認証アプリで生成したワンタイムパスワード (OTP) の組み合わせや、パスワードに加えてハードキーを使用するなど、複数の要素を用いてユーザーを認証します。すべてのアカウントでMFAの利用を強制することにより、漏洩したパスワードの攻撃者の利用を難しくすることができます。
- アプリケーションセキュリティテスト: APIキーやAPIで公開される認証トークンは、攻撃者に組織のオンラインアカウントへのアクセスを許可する可能性があります。強力な認証方法を実施し、アプリケーションコードや設定ファイルをスキャンして認証材料を探すことで、このような事態から保護することができます。
- ログインとAPIのセキュリティ:クレデンシャルスタッフィングの実行者は、多くの異なるユーザー名とパスワードの組み合わせを試して、有効なログイン認証情報を推測しようとします。ログインとAPIのセキュリティソリューションは、これらの攻撃を特定しブロックするのに役立ちます。
アカウント乗っ取り攻撃の緩和
アカウント乗っ取り攻撃のリスクを管理するためには、アカウント乗っ取り防止が重要ですが、常に有効とは限りません。例えば、あるユーザー個人の電子メールアカウントに対するフィッシング攻撃によって、そのユーザーの企業アカウントの認証情報が漏えいし、攻撃者がログインできてしまう可能性があります。
上記の予防策に加え、組織は以下のアプローチにより、これらの攻撃による被害を最小限に抑えることができます。
- 行動分析: ユーザーのアカウントにアクセスした場合、攻撃者は大量の機密データの流出やマルウェアの展開など、異常な活動を行う可能性が高くなります。認証後のアカウントの使用状況を継続的に監視することで、アカウント乗っ取り攻撃を検知し、対応することができます。
- Zero Trust セキュリティ: デフォルトで拒否する、Zero Trust セキュリティアプローチにより、攻撃者が侵害された認証情報を持っていても、標的とするアプリケーションやリソースにアクセスすることが極めて難しくなります。攻撃者が企業アプリケーションへのアクセスを要求した場合、アクセスが許可される前に、ID、デバイスの位置や状態、その他のコンテキスト信号に基づいて検証される必要があります。厳格で粒度の細かいZero Trustポリシーを持つ組織は、リクエストの地理的な異常やリクエストを行うデバイスが感染していることなど、疑わしいシグナルを検出し、攻撃者のアクセスリクエストを拒否することができます。
Cloudflare Zero Trustは、アカウント乗っ取り攻撃のリスクを管理しながら、アプリケーションやシステムへのリモートアクセスを許可することが可能になります。Zero Trustネットワークアクセス(ZTNA)では、ユーザーのID、コンテキスト、企業ポリシーへの準拠を確認した後にのみ、特定のリソースへのアクセスが許可されます。