次の方法で共有


パスワード スプレー攻撃のアラート分類

脅威アクターは、革新的な方法を使用してターゲット環境を侵害します。 牽引力を得る攻撃の 1 つの種類は、攻撃者が最小限の労力でネットワーク内の多くのアカウントにアクセスすることを目指すパスワード スプレー攻撃です。 脅威アクターが 1 つのアカウントで多くのパスワードを試す従来のブルート フォース攻撃とは異なり、パスワード スプレー攻撃では、一般的に使用されるパスワードのセットが限られている多くのアカウントの正しいパスワードを推測することに重点を置きます。 これは、脆弱または簡単に推測可能なパスワードを持つ組織に対して攻撃を特に有効にし、組織の重大なデータ侵害や財務上の損失につながります。

攻撃者は自動ツールを使用して、一般的に使用されるパスワードの一覧を使用して、特定のアカウントまたはシステムへのアクセスを繰り返し試みます。 攻撃者は、多くの仮想マシン (VM) またはコンテナーを作成してパスワード スプレー攻撃を開始することで、正当なクラウド サービスを悪用することがあります。

このプレイブックは、パスワード スプレー攻撃の指標として疑わしい動作が観察されるケースを調査するのに役立ちます。 このガイドは、セキュリティ オペレーション センター (SOC) や、アラートを確認、処理、管理、分類する IT 管理者などのセキュリティ チーム向けです。 このガイドは、アラートを 真陽性 (TP) または偽陽性 (FP) として迅速に分類するのに役立ち、TP の場合は、攻撃を修復し、セキュリティ リスクを軽減するために推奨されるアクションを実行します。

このガイドを使用した場合の目的の結果は次のとおりです。

  • パスワード スプレーの試行に関連するアラートが悪意のある (TP) または誤検知 (FP) アクティビティとして識別されました。

  • 攻撃を修復するために必要なアクションを実行しました。

調査手順

このセクションには、アラートに応答し、organizationをそれ以上の攻撃から保護するための推奨されるアクションを実行するためのステップバイステップのガイダンスが含まれています。

1. セキュリティ アラートを調査する

  • 警告されたサインイン試行は疑わしい場所から行われますか? 影響を受けるユーザー アカウントの一般的な場所以外の場所からのサインイン試行を確認します。 1 人または多くのユーザーからの複数のサインイン試行が役立つインジケーターです。

2. 疑わしいユーザー アクティビティを調査する

  • 珍しいプロパティを持つ異常なイベントはありますか? 通常とは異なる ISP、国/地域、都市など、影響を受けたユーザーの一意のプロパティは、不審なサインイン パターンを示している可能性があります。

  • メールやファイル関連のアクティビティが著しく増加していますか? メール アクセスまたは送信アクティビティの試行の増加や、影響を受けるユーザーの SharePoint または OneDrive へのファイルのアップロードの増加などの疑わしいイベントは、探す兆候です。

  • サインイン試行に失敗した回数はありますか? 影響を受けるユーザーによるさまざまな IP や地理的な場所からのサインイン試行の失敗回数が多い場合は、パスワード スプレー攻撃を示している可能性があります。

  • 影響を受けたユーザーのサインイン アクティビティから ISP を特定します。 同じ ISP の他のユーザー アカウントによるサインイン アクティビティを確認します。

  • 環境内の最近の変更を調べます。

    • Exchange Onlineアクセス許可、メール自動転送、メール リダイレクトなどのOffice 365 アプリケーションの変更
    • PowerAutomate を使用した自動データ転送構成など、PowerAppsの変更
    • サブスクリプションの変更など、Azure 環境での変更Azure portal
    • 影響を受けるユーザー アカウントが機密/機密/会社専用コンテンツを含む複数のサイトやファイルにアクセスできるようにするなど、SharePoint Online への変更
  • 複数のプラットフォームとアプリで短時間で発生する影響を受けるアカウントのアクティビティを調べます。 アクティビティのタイムラインをチェックするイベントを監査します。ユーザーのメールの読み取りや送信に費やした時間を比較し、ユーザーのアカウントやその他のアカウントにリソースを割り当てるなどです。

3. 後続攻撃の可能性を調査する

パスワード スプレー攻撃が成功した後に攻撃者が悪意のあるアクティビティを実行することが多いため、影響を受けるユーザー アカウントに関連するその他の攻撃がないか、環境を検査します。 次の疑わしいアクティビティを調査することを検討してください。

  • 多要素認証 (MFA) 関連の攻撃

    • 攻撃者は MFA 疲労 を使用して、組織がシステムを保護するために採用するこのセキュリティ対策をバイパスします。 影響を受けたユーザー アカウントによって発生した複数の MFA 要求を確認します。
    • 攻撃者は、テナント内の他のアカウントの MFA 保護を無効にすることで、昇格された特権を持つ影響を受けたユーザー アカウントを使用して MFA 改ざん を実行する可能性があります。 影響を受けたユーザーによって実行された疑わしい管理者アクティビティを確認します。
  • 内部フィッシング攻撃

    • 攻撃者は、影響を受けるユーザー アカウントを使用して内部フィッシング メールを送信する可能性があります。 メール転送や受信トレイ操作や受信トレイ転送ルールの作成などの疑わしいアクティビティを確認します。 次のプレイブックを使用すると、メール イベントをさらに調査できます。
    • ユーザーがパスワード スプレー アクティビティの前に他のアラートを受信したかどうかを確認します。 これらのアラートは、ユーザー アカウントが侵害される可能性があることを示します。 たとえば、不可能な旅行アラート、頻度の低い国/地域からのアクティビティ、疑わしい電子メールの削除アクティビティなどがあります。

高度なハンティング クエリ

高度なハンティング は、クエリベースの脅威ハンティング ツールで、ネットワーク内のイベントを検査し、脅威インジケーターを見つけることができます。

これらのクエリを使用して、アラートに関連する詳細情報を収集し、アクティビティが疑わしいかどうかを判断します。

次のテーブルにアクセスできることを確認します。

このクエリを使用して、パスワード スプレー アクティビティを識別します。

IdentityLogonEvents
| where Timestamp > ago(7d)
| where ActionType == "LogonFailed"
| where isnotempty(RiskLevelDuringSignIn)
| where AccountObjectId == <Impacted User Account Object ID>
| summarize TargetCount = dcount(AccountObjectId), TargetCountry = dcount(Location), TargetIPAddress = dcount(IPAddress) by ISP
| where TargetCount >= 100
| where TargetCountry >= 5
| where TargetIPAddress >= 25

このクエリを使用して、アラートされた ISP から他のアクティビティを識別します。

CloudAppEvents
| where Timestamp > ago(7d)
| where AccountObjectId == <Impacted User Account Object ID>
| where ISP == <Alerted ISP>
| summarize count() by Application, ActionType, bin(Timestamp, 1h)

このクエリを使用して、影響を受けるユーザーのサインイン パターンを特定します。

IdentityLogonEvents
| where Timestamp > ago(7d)
| where AccountObjectId == <Impacted User Account Object ID>
| where ISP == <Alerted ISP>
| where Application != "Active Directory"
| summarize SuccessCount = countif(ActionType == "LogonSuccess"), FailureCount = countif(ActionType == "LogonFailed") by ISP

このクエリを使用して、MFA 疲労攻撃を特定します。

AADSignInEventsBeta
| where Timestamp > ago(1h)
//Error Code : 50088 : Limit on telecom MFA calls reached
//Error Code : 50074 : Strong Authentication is required.
| where ErrorCode in  ("50074","50088")
| where isnotempty(AccountObjectId)
| where isnotempty(IPAddress)
| where isnotempty(Country)
| summarize (Timestamp, ReportId) = arg_max(Timestamp, ReportId), FailureCount = count() by AccountObjectId, Country, IPAddress
| where FailureCount >= 10

このクエリを使用して、MFA リセット アクティビティを識別します。

let relevantActionTypes = pack_array("Disable Strong Authentication.","system.mfa.factor.deactivate", "user.mfa.factor.update", "user.mfa.factor.reset_all", "core.user_auth.mfa_bypass_attempted");
CloudAppEvents
AlertInfo
| where Timestamp > ago(1d)
| where isnotempty(AccountObjectId)
| where Application in ("Office 365","Okta")
| where ActionType in (relevantActionTypes)
| where RawEventData contains "success"
| project Timestamp, ReportId, AccountObjectId, IPAddress, ActionType



CloudAppEvents
| where Timestamp > ago(1d)
| where ApplicationId == 11161 
| where ActionType == "Update user." 
| where isnotempty(AccountObjectId)
| where RawEventData has_all("StrongAuthenticationRequirement","[]")
| mv-expand ModifiedProperties = RawEventData.ModifiedProperties
| where ModifiedProperties.Name == "StrongAuthenticationRequirement" and ModifiedProperties.OldValue != "[]" and ModifiedProperties.NewValue == "[]"
| mv-expand ActivityObject = ActivityObjects
| where ActivityObject.Role == "Target object"
| extend TargetObjectId = tostring(ActivityObject.Id)
| project Timestamp, ReportId, AccountObjectId, ActivityObjects, TargetObjectId

このクエリを使用して、影響を受けるユーザーによって作成された新しい電子メール 受信トレイ ルールを検索します。

CloudAppEvents
| where AccountObjectId == <ImpactedUser>
| where Timestamp > ago(21d)
| where ActionType == "New-InboxRule"
| where RawEventData.SessionId in (suspiciousSessionIds)

このアラートに関連付けられているアクティビティが悪意があると判断したら、それらのアラートを TP として分類し、修復のために次のアクションを実行します。

  1. ユーザーのアカウント資格情報をリセットします。
  2. 侵害されたアカウントのアクセス トークンを取り消します。
  3. Mfa 疲労攻撃を軽減するには、Microsoft Authenticator で番号照合を使用します。
  4. 最小特権の原則を適用します。 タスクを完了するために必要な最小限の特権を持つアカウントを作成します。
  5. 成果物が電子メールに関連している場合は、送信者の IP アドレスとドメインに基づいてブロックを構成します。
  6. 調査中に悪意があると特定された URL または IP アドレス (ネットワーク保護プラットフォーム上) をブロックします。

関連項目

ヒント

さらに多くの情報を得るには、 Tech Community 内の Microsoft Security コミュニティにご参加ください: 「Microsoft Defender XDR Tech Community」。