Microsoft Teamsのゲストチャットの不具合で、ユーザーが気づかずにサイバー攻撃の脅威に晒される

セキュリティニュース

投稿日時: 更新日時:

Microsoft Teamsのゲストチャットの不具合で、ユーザーが気づかずにサイバー攻撃の脅威に晒される

セキュリティ企業 Ontinue は、Microsoft TeamsのB2Bゲストアクセスの設計と標準設定の組み合わせにより、Microsoft Defender for Office 365の保護が一切効かない「保護フリーゾーン」を悪用できるリスク があることを明らかにしました。

概要

同社の調査によると、ユーザーが外部テナントからのゲスト招待を受けてTeams上のチャットや共有に参加すると、その時点で適用されるセキュリティポリシーは「自社テナント」ではなく 招待元(リソーステナント)側のポリシー に切り替わります。

その結果、たとえ自社内ではDefender for Office 365を導入し、Safe Links や Safe Attachments、ZAP(Zero-hour Auto Purge)などを厳格に運用していても、

攻撃者が用意した丸裸のテナントにゲストとして参加してしまうと、その保護は一切効かない状態になる と指摘しています。

さらに、2025年11月から展開されている Microsoft Teams の新機能 「Chat with anyone with an email address(MC1182004)」 が、このリスクを実用的な攻撃ベクトルに変えてしまう可能性があります。
この機能はデフォルトで有効化されており、攻撃者は安価な Microsoft 365 テナントを用意するだけで、任意のメールアドレス宛にTeamsゲスト招待を送りつけることができます。

MC1182004「誰にでもチャット」機能がリスクを加速させる

Microsoftのメッセージセンターで案内されている MC1182004 の新機能は、次のような内容です。

  • Teamsユーザーが 任意のメールアドレス宛にチャットを開始 できる

  • 相手がTeamsユーザーでなくても、メールで招待が飛び、ゲストとしてチャットに参加 できる

  • 中小企業向けの低価格ライセンス(Teams Essentials / Business Basic 等)でも利用可能

  • Android / iOS / デスクトップ / Mac / Linux など主要クライアントで利用可能

  • 初期状態で有効

導入スケジュールとしては、

  • 2025年11月:一部テナント向けのターゲットリリース

  • 2026年1月:一般提供開始(全世界展開)

となっています。

機能としては便利ですが、「誰とでも」「デフォルト有効」 という設計が、攻撃者にとっても好都合な招待チャネルになっています。

重要なポイント:無効化コマンドの限界

Teamsのメッセージングポリシーでは、次のPowerShellでこの機能をオフにできます。

Set-CsTeamsMessagingPolicy -Identity Global -UseB2BInvitesToAddExternalUsers $false

ただし、これは 自テナントから外部に対して招待を送ることを止めるだけ です。

  • 外部のテナントから 自社ユーザー宛に送られてくるゲスト招待(受信) を防ぐ機能ではありません。

  • ゲスト招待そのものを制御するには、後述する Entra External ID / Cross-tenant Access / Teams External Access 側の設定が必要です。

想定される攻撃シナリオ

調査レポートでは、攻撃者がどのように「保護ゼロのテナント」を悪用するか、具体的なフローが整理されています。要約すると次のような流れです。

フェーズ1:攻撃用テナントの準備

  • 安価な Microsoft 365 ライセンス(試用版や SMBプラン)でテナントを新規作成

  • これらのテナントには Defender for Office 365 が含まれない ため、

    • Safe Links なし

    • Safe Attachments なし

    • Teams向けZAPなしという「素の状態」で運用

  • 攻撃者側は特別な設定をしなくても、デフォルトで保護のない環境 を手に入れられる

フェーズ2:標的選定と最初のコンタクト

  • LinkedInや企業サイト、流出リスト等を用いてターゲットユーザーのメールアドレスを収集

  • 「パートナーシップの提案」「ベンダーとしての打ち合わせ」「業界イベントの調整」など、もっともらしい名目で連絡するストーリーを準備

  • Teams 上で標的のメールアドレス宛にチャットを開始

    • 対象がTeams未利用なら、Microsoft側から招待メールが送信される

    • 既にTeamsを利用している場合は、クライアント上に 外部からのチャットリクエスト が表示される

メール自体は Microsoft ドメインから送られるため、多くのメールセキュリティ製品では正当な通知として扱われ、フィルタをすり抜けやすいと考えられます。

フェーズ3:ユーザーが招待を受け入れる

  • ユーザーが通知を許可すると、攻撃者テナント内のチャットに ゲストユーザーとして参加 する

  • この時点でユーザーは 自社のDefenderポリシーが効かない空間 にいることを自覚していません

  • インターフェースは通常のTeamsとほぼ変わらず表示されるため、違和感も少ない

フェーズ4:保護のない環境でのフィッシング・マルウェア配布

攻撃者は次のような行為を、Defenderによる検査なしで実行できます。

  • フィッシングサイトへのリンク送付

    • Safe Links による書き換え・警告なし

  • マルウェアファイルのアップロード・共有

    • Safe Attachments / マルウェアスキャンなし

    • 後から悪性判定されても ZAP による削除なし

  • 社内の業務手順や担当者情報を聞き出すソーシャルエンジニアリング

  • Quick Assist 等のリモートツール誘導による端末乗っ取り

これらはすべて攻撃者テナント内で完結するため、自社のセキュリティ運用側からはログもアラートも見えにくい という点が非常に厄介です。

情報システム部門が今すぐ確認すべきポイント

ゲスト招待の受け入れポリシー(Entra External ID)

まず、「どのテナントからのゲスト招待を受け入れるか」の基本方針を見直す必要があります。

  • 管理ポータル(Entra ID)で

    • External Identities → External collaboration settings を確認

    • 「すべての外部ドメインを許可」になっていないかをチェック

  • 可能であれば、

    • 「特定の信頼済みドメインのみ許可(Allow only specific domains)」
      に切り替え、取引先・グループ会社などを 明示的な許可リスト方式 にすることを検討します。

クロステナントアクセスの制御

より細かい制御は、クロステナントアクセス設定で行います。

  • External Identities → Cross-tenant access settings にて、

    • 受信・送信のB2Bコラボレーションをデフォルト拒否

    • 必要な相手先テナントのみ個別に許可

  • 条件付きアクセス(MFA強制・デバイス要件など)をB2Bユーザーにも適用することも検討対象になります。

Teamsの外部アクセス設定

Teams管理センター側でも、外部とやり取りできるドメインを絞り込めます。

  • Teams 管理センター → ユーザー → 外部アクセス

    • 「すべてのドメインを許可」から

    • 「指定したドメインのみ許可」へ変更

  • 外部とのチャット・通話が本当に必要な部門・用途を棚卸しし、最小限の範囲に限定 します。

MC1182004機能の扱い

  • 上で触れたPowerShellコマンドで、

    • UseB2BInvitesToAddExternalUsersfalse に設定することで、自社からの誰にでもチャット招待を止める ことができます。

  • ただし、繰り返しになりますが、外部からの招待受信は別管理 です。

    • External ID / Cross-tenant Access / Teams External Access の3か所をセットで考える必要があります。

ユーザー教育:外部からのTeams招待のリスク

技術的な制御に加えて、ユーザー側にも次の点を周知しておくとよいと思います。

  • 「知らない会社・聞き覚えのないドメインからのTeams招待は安易に受けない」

  • 「業務上必要な取引先とのTeams利用は、社内であらかじめ合意されたドメイン・チームを使う」

  • 「外部テナント内で、ID・パスワード・認証コード・機密ファイルを求められた場合は必ず一度立ち止まり、社内窓口に相談する」

参照

B2B Guest Access Creates an Unprotected Attack Vector