2018年7月4日水曜日

添付ファイルが消える現象とその原因と対策

お客さんからウチの数人にまとめて、添付ファイルのあるメールが届きました。
何故か、一人だけ添付ファイルが消えている人がいたので、原因調査して対策を練ってみました。その備忘として残します。

見えている MUA は Outlook 2016 で、見えていない MUA は Windows Live Mail 2012
# サポート終わっているのを使っているというツッコミはナシでお願いします。
まず、添付ファイルが見えている MUA にてヘッダを確認
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: ***
Content-Type: multipart/mixed; boundary="***"
X-Mailer: Microsoft Outlook 14.0
Content-Language: ja
Thread-Index: ***
X-MS-TNEF-Correlator: ***
うん、Outlook 2010 っぽいですね。悪名高き TNEF じゃないか。やれやれ・・・
# こんなのをいつまでも採用している M$ くたばれ

ひとまず、Live Mail で受信したメールをWinmail.dat から添付ファイルを取り出すスクリプトを試してみる。あれ?やっぱり添付ファイルが無い!!こちらでもヘッダを見てみると・・・
Content-Type: text/plain; charset="iso-2022-jp"
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: ***
X-TM-AS-Engine-Type: TMASE
X-TM-AS-Product-Ver: TMAS_WLM-7.0.0.1083-8.2.1013-23946005
X-TM-AS-User-Approved-Sender: Yes-Matched White List
x-has-been-detected_normal: 1
x-has-been-checked: 1
X-TrendMicro-AntispamAddin-Checked: 1
X-Mailer: Microsoft Outlook 14.0
Thread-Index: ***
X-MS-TNEF-Correlator: ***

あれ?Content-Type が変わっている。そして、変なヘッダが追加されている!!TM-ASというのは TrendMicro-Antispam の略だろう。というわけで、よく見ると Live Mail にてウィルスバスターの迷惑メールツールバーが有効になっていました。無効に変えて受信すると、やっぱり見えない・・・。ですがヘッダを見ると Outlook のものと同じでしたので、上記のスクリプトをかましてみると、ようやく見えました。

まぁ、そもそも TNEF で送るという変態的行為をやめてもらうのが正しい対策のように思います。