…Outlookの送信メールが……消えた…？(12/24改修されたよ)

# はじめに

[Leverages Advent Calendar](https://qiita.com/advent-calendar/2019/leverages) 10日目担当の ham です。
今が 12月12日だということは気にしてはいけません。代打です。

Leverages で、セキュリティの責任者としてセキュリティ意識の啓蒙や全社に関わるシステムの改善をしています。
また、前職では、SOC、NOC、BGPの運用などを行っていました。

最近メールについて不可解な問い合わせが増えてきたので、調べたことをまとめます。

# 追記(2019年12月24日 17:10)

本日 16時頃に Outlookサポートから不具合を改修した旨の連絡が来ました。
私もテストを実施し、Outlook から送信した Re: 【hoge】【fuga】 のメールが Gmail に届くことを確認しました。
メリークリスマス！


# 追記(2019年12月15日 21:40)

反響の大きさにびっくりしています。茶渡の霊圧を消している場合じゃなかったです。

誤解されているツイートを見かけるので、私が検証し再現した環境を明記します。

- 送信に使用したアドレスはフリーの @outlook.jp アドレス
- 送信に使用した環境は outlook.live.com (webメール)
- クライアントソフト(メーラー)の Outlook で、Outlook系ではないメールアドレスの場合は、再現しないと思われます(Outlook が手元にないため検証できていません)
- また、先ほど追加検証し、以下でも再現すること確認しました
    - メーラーとして Thunderbird を使用(Thunderbirdは悪くないです。どのメーラーでも再現すると思います) 
    - [このページ](https://support.office.com/ja-jp/article/outlook-com-の-pop、imap、および-smtp-の設定-d088b986-291d-42b8-9564-9c414e2aa040)の設定をして、@outlook.jp アドレスから送信
- 「Re:」「【hoge】」「【fuga】」は連続していないと再現しない。なので 2ch風タイトル Re:【hoge】fuga【piyo】では再現しませんでした

コーポレートエンジニア(情シス) でも社会に影響を与えることができる、ということが広まれば幸いです。



# ことの発端

12月3日 情シスの問合わせ窓口に「お客様に要返信のメールを送信したけどしばらく経っても返信がないから確認の電話をしたところ、『返信したけど』と言われることがここのところ非常に多い。Gmail で何か起こってない？」という問合わせがきたところから物語が始まる。
※弊社メール環境は G suite

# 初期調査

@db666 さんとともに調査開始。

事象のヒアリングをしていくと

- 発生は 11月末頃から
- お客様のメールアドレスは Outlook系(outlook, live, msn, hotmail) が多い
- G suite のコンソールでログを見ても、届いている形跡はない
 
ということがわかった。

(ここで O365障害があたまをよぎった。)

また、お客様のひとりから「自身を Bcc に加えていたが自身にも届いていない」という非常に有力な情報をゲット！

O365障害との関連はわからないけど、少なくとも Outlook側の送信に問題があると確信した。

# 問合わせと検証

Outlookサポートに上記事象を記載し問合わせをしたが、「受信側のフィルタにホワイトリストを追加して確認してみてください」というあさってな回答が返ってきてイラッとしたので、ぐうの音もでない証拠を見つけようと検証開始。

## 検証1

私用の @outlook.jp のメールアドレスから会社のメールアドレスに、件名 test、本文 test みたいなメールを大量に送信したが、全て届く。

メールが届くことを残念がることはそうそうない。

## 検証2

事象の手順に立ち返ることに。
事象
1. 弊社からお客様に要返信のメールを送信する
2. お客様が返信する
3. メールが届かない

ということで、問合わせしてきた社員に、送付したメールの件名と文面をいただき、事象手順どおり実施。

$\huge{一発で再現した！}$

ここまでくればあとは返信内容をいじって、何が悪さをしているか見つけるだけ。

件名はそのままで、文面を空にしてみる→届かない
文面はそのままで、件名を空にしてみる→届く

ということで、件名の文字列が悪さをしている。

ちなみに件名は以下のような文字列
Re: 【ご返信お願いします】【〇〇のご依頼】〇〇チーム

## 検証3

件名が悪さをしているということがわかったので、何を削れば届いて、何が残っていると届かないのかを確認する。

- 届く
    - 【ご返信お願いします】【〇〇のご依頼】〇〇チーム
    - Re: 【ご返信お願いします】〇〇チーム
    - Re: ご返信お願いします】【〇〇のご依頼】〇〇チーム
    - Re: 【】【】〇〇チーム

- 届かない
    - Re: 【ご】【〇】〇〇チーム
    - Re: 【ご】【〇】

ということで、件名が
$\huge{Re: 【.+】【.+】.*}$
だとメールが届かない(送信できない)ことがわかった。


つまりメールが届かない事象は

- 件名が 【.+】【.+】.* のメールを Outlook系アドレスに送信する。
    - これは問題なく届く
- 上のメールに返信すると件名が Re: 【.+】【.+】.* になる。
    - Outlook側で送信できない

という流れになる。


## 検証4

Outlookの送信の問題と結論付けの念のため、Outlook、Gmail、OCN の三者間で、件名
Re: 【hoge】【fuga】
のメールを出して確認。

- Outlook → Gmail  届かない
- Outlook → OCN  届かない
- OCN → Gmail  届く

ということで、Outlook の送信の問題と確定。


## 送信者から見た挙動

ちなみにここまでさらっと「届かない」と書いているが、

- メールは送信済トレイに入る
- 送信エラーにはならない

ので、
$\huge{送信者は、送信できてないことに}$
$\huge{気付くチャンスはないです}$

気付いてないだけで、世の中たくさんのメールが送信されずどこかに吸い込まれていると思います。


# 再問合わせ

改めて Outlookサポートに、上記検証結果を突きつけたところ、「再現したので、関連部門にエスカレーションしました。」と回答がきました。(12月11日)


そのうち改修されるでしょう。めでたしめでたし

ちなみに、なんで11月末頃から発生かというと、件の [O365障害の起因になったのがスパム対策作業](https://www.itmedia.co.jp/news/articles/1911/19/news145.html)とあったので、たぶんそれ。

# 回避策

Oultook系のアドレスにメールを送信する際、【】を使わない、使っても 1組までにすることが、現時点の回避策になります。

なお、Outlookサポートから提示された回避策は以下。
>なお、当方で確認をいたしました現状での回避策となりますが、
>墨付き括弧【】以外の括弧に置き換えた場合、受信されましたので、
>回答をお待ちいただくまでの間、別の括弧を使用していただく事をご検討くださいませ。
>
>一例：
>全角括弧：「」、（）、『』
>半角括弧：()、[]


# まとめ

Outlook を直させた男。としてドラマ化していいよ。