Microsoft 365

研究者は、Microsoft 365(旧Office 365)のフィッシング対策を回避する方法を実証し、ユーザーが悪意のあるメールを開封するリスクを高めた。

具体的には、「First Contact Safety Tip」と呼ばれる、見慣れないアドレスからのメールを受信した際に、Outlookのメール受信者に警告を出すフィッシング対策が隠されてしまう。

この欠陥を発見したCertitudeのアナリストはマイクロソフト社に調査結果を報告したが、技術大手は現時点ではこの欠陥に対処しないことを決定した。

警告を隠す

First Contact Safety Tip」は、Outlookユーザーが新しい連絡先からメールを受信した際に警告を発するように設計された機能である。以下のようなメッセージが表示される:「xyz@example.com からメールを受け取ることはあまりありません。なぜこれが重要なのかを学んでください。”

この仕組みの重要な点は、警告がHTMLメールの本文に追加されるため、メールメッセージに埋め込まれたCSSを使用して操作できる可能性があることだ。

The warning tip rendered on the Outlook app
Outlookアプリに表示される警告のヒント
ソースはこちら:Certitude

Certitudeは、以下のようにメールのHTML内のCSS(カスケーディング・スタイル・シート)を操作することで、この安全メッセージを隠すことが可能であることを発見した:

HTML code used for the bypass
バイパスに使用されたHTMLコード
出典:Certitude:Certitude

各ルールの役割は以下の通りです:

  • a { display: none; }:アンカー(<a>)タグを非表示にし、リンクが含まれる場合にヒントが表示されないようにします。
  • td div { color: white; font-size: 0px; }:テーブル・データ・セル内の div 要素を対象とし、フォント・カラーを白、フォント・サイズを 0 に変更し、テキストを非表示にします。
  • table tbody tr td { background-color:white !important; color: white !important; }:これは、テーブルのtbody内のtd要素を白背景と白テキストにし、コンテンツを効果的に背景に溶け込ませ、見えなくします。

このCSSが新しいコンタクトからターゲットに送られるフィッシング・メールに使われると、受信者に警告するアラートは表示されない。

さらに一歩進んで、Certitudeは、Microsoft Outlookが暗号化/署名された電子メールに追加するアイコンを偽装するHTMLコードを追加することで、より安全に見せることも可能であることを発見した。

書式に制限があるため、視覚的に完璧な結果を得ることはできないが、それでもこのトリックは、注意深い検査でなければ簡単に通過してしまうような、説得力のあるセキュリティの虚像を作り出している。

Final result, without the warning and with safety icons added
警告なし、安全アイコンを追加した最終結果
ソースはこちら:サーティテュード

研究者は、説明した方法を積極的に悪用したケースは観察されておらず、また、任意のテキストが電子メールに表示されるようにHTMLを操作する方法も見つかっていないと述べている。

Certitudeは、Microsoft Researcher Portal (MSRC)を通じて、上記の手法の概念実証と詳細なレポートをMicrosoft社に送付した。

しかし、マイクロソフト社から次のような返答があった:

「私たちは、あなたの発見は有効であると判断しましたが、これは主にフィッシング攻撃に適用されるものであることを考慮すると、直ちにサービスを提供するための私たちの基準を満たしていません。しかし、マイクロソフトはあなたの発見を、マイクロソフト製品を改善する機会として、今後の検討課題としています。”- マイクロソフト

は、このリスクに対処しないというマイクロソフト社の決定について詳しく知るためにマイクロソフト社に問い合わせたが、公表までに回答は得られていない。