にしし ふぁくとりー:西村文宏 個人サイト

Presented by Nishishi via Movable Type. Last Updated: 2024/08/11. 15:45:06.

Web上のメール送信フォームの差出人を「入力されたメールアドレス」にしてはいけない(もはや)

メッセージ送信フォームが実際に送信するメールの差出人を「入力されたメールアドレス」にしているケースも多々あったが

Web上に設置された「お問い合わせ」用途が目的のメッセージ送信フォームでは、返信のためのメールアドレスを入力してもらう必要があります。
その際、

  • 『閲覧者の入力したメールアドレス』を『メールの差出人』にする形でメールが送信される仕組み

……を採用しているケースもよくありました。
そのメリットは、受信者(=Webサイト管理者等)がメーラの「返信」ボタンを押すだけで返信できるような形になる点です。

しかし、その形態での運用は、もはや避けなければならないでしょう。

特に問題なのは送信者がGMailを利用している場合(=GMailのメールアドレスを差出人アドレスとして入力した場合)ですが、そうでない場合でも問題になる可能性があります。

Googleのスパム対策が厳しくなった上、SPF(Sender Policy Framework)が普及した

2024年2月からGoogleのスパム対策(特に、なりすましメールをブロックする方針)が凄まじく厳しくなったことと、Googleが強くアナウンスしてSPFが普及したことで、Web上に設置された(メール送信型の)お問い合わせフォームでは以下の問題(※)が発生するようになりました。

※あくまでもWeb上に設置する送信フォームから見た場合の「問題」であって、世の中全体に対しては「改善」ですけども。^^;

  1. 閲覧者の入力したメールアドレスのドメイン側で SPF が設定されている場合は、受信側メールサーバが迷惑メールに自動分類してしまう可能性が高まる。
  2. 特に、『閲覧者の入力したメールアドレス』が gmail.com ドメインだった場合で、受信者も GMail を利用している場合には、メールが自動破棄されてしまって届かない。

特に困るのは➋のケースですが。
以下に、順番に解説します。

▽➊差出人アドレスとして指定されたドメインにSPFが設定されていると「なりすまし」だと解釈される

仮に、以下のようなケースを考えます。

  • うちのサイト(= www.nishishi.com ドメイン)内にお問い合わせ用の送信フォームがあり、
  • あなたが自身のメールアドレス「 sakura@example.com 」を入力して問い合わせる。

この場合、うちのサーバは『 sakura@example.com を差出人にしたメール』を送信することになりますが、それはシステム的には『なりすましメール』になります。
example.com ドメインのメールアドレスを使って、example.com ドメイン以外のサーバから送信しているわけですからね。

従来、そのような『なりすまし』を判別する手段がなかった(使われていなかった)頃には、システム的には何も問題ありませんでした。(※システム的に問題がないからこそ、差出人を偽った詐欺メールが横行していたわけですが。)

しかし、その判別を可能にするのが SPF(Sender Policy Framework)です。
もし、あなたが所有しているドメイン(※ここでは例として example.com ドメイン)にSPFを設定している場合、『 example.com ドメインのメールは、×××のサーバからしか送信しません』と世界に向けて宣言することになります。(×××の部分はIPアドレスとか)

そうすると、他者サイトを経由して『 sakura@example.com を差出人にしたメール』が送信された場合には、「SPFで示されたサーバ以外のサーバから送信されている」=「なりすましメールである」と判定できるようになります。
判定が可能になったところで、実際にそのメールをどうするかは受信側メールサーバの方針次第ですが、少なくとも「迷惑メールだと判断される可能性」は高まります。

※あなたが自分で取得した独自ドメインのメールアドレスを使っていない場合でも、お使いのメールサービスの提供元がSPFを設定している可能性もあります。

したがって、訪問者が入力したメールアドレスを「(送信フォームが送信するメールの)差出人アドレス」として使ってしまうと、そのメールが迷惑メールだと誤判定されてしまう可能性があります。

▽➋GMailを差出人にしたメールを、GMail以外のサーバからGMail宛に送信すると、問答無用で消される

もっと問題なのは、➋です。

Googleは、『 gmail.com ドメインのメールは、自社のメールサーバからしか送信されない』と知っています。
にも関わらず、他社サーバから送信された「 gmail.com を差出人にしたメール」を GMail で受信した場合には、「なりすましメールである」と断定します。

なので、

  • Webフォームから送信されたメールを GMail で受信する運用にしている。
  • サイト訪問者が、Webフォームに gmail.com ドメインのメールアドレスを入力して送信した。

……という2条件が重なる場合、もはやそのメールは問答無用で破棄されてしまって、届きません。
例えば、

  • うちのサイト(= www.nishishi.com ドメイン)内にお問い合わせ用の送信フォームがあるが、私はそのメールの送信先をGMailにして運用している。(※)
  • あなたが自身のGMailメールアドレス「 ***@gmail.com 」を入力して問い合わせる。

……というようなケースです。(※これは例であって、実際には私はそのような運用にはしていません。)

当初は、上記のような場合でも「迷惑メールフォルダに自動分類する」という処理に留まるのかな……と思っていたのですが、意外とGoogle側の対応が厳しくて、もはや「問答無用で破棄する」という自動削除方針になっているようでした。
したがって、上記のようなケースにはならないようにしなければなりません。

結論:Web上のメッセージ送信フォームの差出人を「入力されたメールアドレス」にしてはいけない(もはや)

というわけで、もはやWeb上のメッセージ送信フォームの差出人は、『そのWebで使われているドメインのメールアドレス』に固定しておく必要がある、と言えるでしょうね。
つまり、以下のような運用にします。

  • Webサイトに設置するお問い合わせフォームでは、差出人アドレスとして自前のドメインを使ったメールアドレスを固定的に使う。(たとえば、www.example.jp なら、noreply@example.jp みたいな同ドメインのメールアドレスを差出人に固定します。)
  • 訪問者が入力した本人のメールアドレスは、あくまでもお問い合わせメール本文に記載するに留めておき、差出人としては使わない。

こうすることによって、Web上のお問い合わせフォームから届いたメールに、メーラの「返信」機能を使って返信することはできなくなります。
残念ですが、これだけスパムメールが横行している世の中なら、そこは「仕方がない」と考えるほかないでしょうね。

なお、差出人として使うダミーのメールアドレスに noreply という文字列を使っておけば、一部のメーラでは、誤ってそのメールアドレス宛に返信を書こうとした際に、「このメールアドレスに返信しても誰も受け取らないかもよ」という警告を出してくれます。(Thunderbirdとか。)

▼備考:自分が他者サイトにあるお問い合わせフォームを使う場合

もしあなたがGMailを普段のメールアドレスとして使っている場合、
他者サイト(特に個人サイトとか小規模企業サイトとか)にあるお問い合わせフォームを使う際には、そこがどのような運用になっているかが分からないので、念のためにGMailのアドレスを入力するのは避けておく方が無難かもしれません。
そのサイトの運営者が(自身のWebサイトからの問い合わせメールを)GMailで受信している場合、そのメールは届かなくなりますから。

コメント

コメント数: 0件

コメント投稿欄 この日記に対するコメント投稿を歓迎します。



※本文中にURLは書けません。(書くと投稿が拒否されますのでご注意下さい。)

※ご投稿頂いた内容は、掲載前に管理者が確認する設定にしている場合があります。たいていは数日以内には表示されるはずですので、気長にお待ち願います。m(_ _)m

著者紹介


にしし(西村文宏)

にししでございます。本書いたり記事書いたりしてます。あと萌えたり。著書5冊発売中です(Web製作系4冊+小説1冊)。著書や記事は「西村文宏」名義。記事は主にAll Aboutで連載。本の最新刊は2011年3月に発売されたライトノベルでございますよ。

Twitter:にしし/西村文宏
にしし/西村文宏 on facebook にしし/西村文宏 on mixi フォローはお気軽に!

にしし(西村文宏)連絡先
☕ コーヒーをおごる

著書一覧と詳細

にししふぁくとりー Sakura scope内限定での主要なカテゴリ

--- 当サイト内を検索 ---