DMARCとは?送信ドメイン認証の仕組みを理解して、なりすまし対策をしよう!

  • このエントリーをはてなブックマークに追加

※本記事は2019年10月13日に更新しています

DMARCとはなにか

皆さん、DMARC(ディーマーク)という言葉を聞いたことがありますか?

DMARCとは

Domain-based Message Authentication, Reporting and Conformance の略で、電子メールの「送信者なりすまし」や「メール内容の改ざん」といった不正を防ぐ事を目的とした、セキュリティ技術(送信ドメイン認証)の1つです。

普段、私たちは、メールを受信する際に、「誰が」送信したのかを知る手段は、「メールの差出人アドレス(From)」を確認するほかありません。しかしながら、電子メールは仕様上、Fromを自由に設定することができてしまいます。

そのため、悪意のある個人や団体が、ここに付け込みFromを信用ある個人や企業などになりすまして、フィッシング行為を行うことがあります。こういったことが起こると、メールを受信しフィッシング被害を受けてしまった人はもちろん、なりすましをされた個人や企業の信用にも悪影響をおよぼします。

このような問題の発生を背景として、Google、Facebook、Microsoftらが合同で、なりすましメールやフィッシング対策の取り組み「DMARC.org」を立ち上げました。この「DMARC.org」が提唱しているものがMARCというセキュリティ技術(送信ドメイン認証)です。

実際に、米Twitter社はDMARCに対応したことで、1日あたり1億1,000万通以上のなりすましメールを、数千通にまで排除することができた、と言われています。

【出典】dmarc.org| Prominent Brands Cut Email Abuse by More than 50% with DMARC
https://dmarc.org/press/release-20140218/

上記の内容だけでは何のことかピンと来ない方も多いと思います。
そこで今回は「DMARCに対応すると何ができるのか?」にスポットを当てて、分かりやすく噛み砕いた内容でDMARCをご紹介していきます。

DMARCの3つの主な役割

DMARCは、ドメイン認証技術であるSPFならびにDKIMそれぞれの働きを補強するための技術です。 DMARCの役割は主に以下の3つとなります。

1.メール送信者が認証失敗したメールの取り扱いを指定できる
2.メール送信者が認証結果をメール受信者から受け取れる
3.第三者署名(代理署名)を許容しない

以降にて、それぞれ詳細に確認していきましょう。

1. メール送信者が認証失敗したメールの取り扱いを指定できる

≪DMARC対応前≫

≪DMARC対応後≫

極めて簡単に説明すると、DMARC導入前後の変化は上図のようになります。

通常、SPFおよびDKIMを用いて送信元ドメインを認証する際には、 認証に失敗したメールをどのように取り扱うかは、受信者の判断に任せられています。 これまでは、送られたメールがなりすましメールだったとしても(SPF・DKIMの認証に失敗した場合でも)、受信側が「受信する」というポリシーだった場合、なりすましメールは受信者の意向に沿って、そのままユーザのメールボックスで受信されていました。

皆さんご自身の立場に立って考えてみてください。
仮に自分の会社になりすました悪意のあるメールが無差別に送信させられていたらどうでしょう?

「ユーザに受信をさせたくない」と思うのが送信者側の心理だと思います。

そこで、この“自社になりすまされたメールは、ユーザに受信させたくない”

という要望を満たすために登場したのが、DMARCです。

≪DMARCの仕組み≫

送信者がDMARCの設定を行うことで、自社になりすました可能性のあるメール配信が行われた場合に、送信者側の意思で、そのメールの制御を以下の3つのパターンのいずれかを選択することができるようになります。

 1.そのまま受信させる(none)
 2.隔離させる(quarantine)
 3.受信を拒否する(reject)

このように、受信者側ではなく送信者側がそのメールの挙動を管理できるようになる仕組みが、DMARCなのです。

※SPF・DKIMとは・・・
簡単に言うとどちらも「自社のメールがなりすまされていないかどうかを検査するする仕組み」と覚えておくとよいでしょう。詳しく知りたい方はこちら。

【参考】財団法人インターネット協会|技術解説:迷惑メール対策委員会
http://salt.iajapan.org/wpmu/anti_spam/admin/tech/explanation/

2.メール送信者が認証結果をメール受信者から受け取れる


DMARCに対応すると、メール受信元のプロバイダから、SPF、DKIMの認証結果の詳細なレポートをバウンスメールと同じようにリアルタイムに受け取ることができます。

これまでも、DKIMを設定することでなりすましメールの検知は可能でしたが、
DMARCに対応することで、送られてくるレポートを元に、より詳細な認証情報を把握することが可能になり、なりすましメールの送信元を把握することもできるようになったのです。

また、送信ドメイン認証にそもそも成功することが一番ではありますが、正しいメールだとしても、状況によって失敗してしまうことがあるかもしれません。メール送信側は、認証されなかったメールをすべて破棄することもできますが、こうしたレポートを確認し、正しく送信されたメールが認証失敗していないかを確認することにより、より強いポリシーを設定することもできるようになるとも考えられます。

. 第三者署名(代理署名)を許容しない

最後に、DMARCの重要な役割としして、第三者署名の不許可があります。

たとえば、メール配信ソフトやサービス(Gmailなどのフリーメールサービスおよび、一斉配信を目的とした配信サービス)を利用しての配信の場合、自分の会社が持っているドメインとは関係の無いドメインからメールを送信する場合があります。こういった場合、DMARC未導入であれば、自分の会社のドメインではなく、第三者にあたるメール配信ソフト・サービスのドメインを第三者署名として、SPFやDKIMにて利用する事もできます。

しかしながら、DMARCでは、この第三者署名を許可していません。つまりは、自分の会社からメールを配信する場合には、必ず送信元のドメイン情報も自分の会社ものでないといけません。第三者署名を不許可とすることで、送信元が明確になるため、より厳しい認証となっています。 ただし、DMARCを導入するには、第三者の提供するメール配信ソフト・サービスを利用できない…というわけではありません。メール配信ソフト・サービスの設定にて、自分の会社のドメインを送信元として登録することが必須になりますが、このような対応が取れれば、DMARCを導入しても第三者のメール配信ソフト・サービスを利用することはできます。

なりすましは何故起きる?

先にも述べたようにDMARCはFromのなりすましを防ぐ仕組みですが、具体的な対応方法について説明を進める前に、何故「なりすまし」が起きるのかについてを理解する必要があります。

実は、電子メールにはFromアドレスが2つ存在しています。
1つづつ簡単にご説明します。

エンベロープFrom(Envelope-From)

1つはエンベロープFrom(Envelope-From)アドレスです。郵送物にたとえると、封筒に記載されている差出人名です。SMTPという送信プロトコルのコマンドを利用して送信されるFromアドレスで、そもそもこの情報が正しくないと送信ができない本当のFromアドレスです。バウンスメールと呼ばれるメールの配送エラーを受信するのもこちらのエンベロープFromアドレスです。

ヘッダFrom( Header-From)

もう1つは、ヘッダFrom( Header-From)アドレスです。こちらも郵送物にたとえると、封筒の中の便箋に書かれている差出人名にあたります。こちらが、仕様上、実際の差出人とは異なる情報を表示することができるアドレスとなります。いわゆる「なりすましメール」は、このヘッダFromアドレスを不正に変更することで送られています。

残念がら、多くの人は、直接見る事ができる文面の情報を信用しているからです。(エンベロープFromアドレスを調べる人はほとんどいません。)そのため、このヘッダFromアドレスが「なりすまし」に利用されることになります。

「なりすまし」を防ぐ送信ドメイン認証技術

この「なりすまし」で利用されている可能性の高いヘッダFromではなく、実際に送信に利用されているエンベロープFromアドレスを、予め設定した送信元として許可されているアドレスかどうかを認証することで、「なりすまし」を防ぐ仕組みがSPFおよびDKIMという2つの送信ドメイン認証です。DMARCはこれら2つの送信ドメイン認証を補強するための仕組みであるため、DMARCの設定を行うためには、SPFおよびDKIMの設定が前提となります。

SPFやDKIMについてもっと詳しく知りたい方、設定方法について知りたい方はこちらの記事も参考にしてみてください。

【SPFやDKIMの概要についての参考】
配配メールコラム|メール配信の仕組みとなりすましメールについて
https://www.hai2mail.jp/column/2019/0604.php
——
【SPF設定の参考】
一般社団法人インターネット協会| SPF(Sender Policy Framework)
https://salt.iajapan.org/wpmu/anti_spam/admin/tech/explanation/spf/
——
【DKIM設定の参考】
一般社団法人インターネット協会| DKIM (Domainkeys Identified Mail)
https://salt.iajapan.org/wpmu/anti_spam/admin/tech/explanation/dkim/

DMARCを設定してみよう

先にも述べたとおり、送信者がDMARCに対応するには、まずはSPFの設定と、DKIMの設定がされていることが前提となります。SPF、DKIMの詳しい設定方法は、 ご利用中のメール配信サービスベンダーへ問い合わせるか 、先にご紹介したページを参考にしてください。

送信ドメイン認証技術のDMARC は、メールを受け取る時になりすましメールかどうかを判断できますが、そのためには、SPF、DKIMの設定が完了した後、メールの送信側、ドメインを管理する側が自身が管理するドメインに DMARC (ポリシー) レコードを設定する必要があります。DMARC レコードと呼ばれていますが、DNS に対して新しい機能を組み込む必要はなく、既に一般的に利用されているテキスト資源レコード (TXTRR) を利用して DMARC レコードを設定します。

例えば、メールのドメインが sample.jp の場合次のようになります
(”_dmarc” + “ドメイン名” がレコード名)

_dmarc.sample.jp IN TXT “v=DMARC1 ; P=none ; rua=mailto:dmarc_report@example.jp ; ruf=mailto:dmarc_report@example.jp”

v=DMARC1 は DMARC レコードのバージョン番号です。p=none は、認証失敗したメールに対して受信側に実行し欲しいアクションを宣言します。ここでは none ですから、たとえ、認証失敗してもなにもアクションを取らないでくださいという意味になります。(ちなみに、隔離したい場合にはquarantin、受信を拒否したい場合にはrejectになります。)

rua と ruf はレポートメールを受信するメールアドレスです。実際にレポートを受け取りたいアドレスを記入しましょう。(上述のサンプルレコードでは、dmarc_report@example.cp.jpというレポート受信用アドレスを設定してあります。)

簡単に説明するとこのようになります。サンプルで紹介したv,p,rua,ruf以外にも設定可能なタグがありますので、他の具体的な記述方法はこちらも参考にしてみてください。

【参考】G suite 管理者ヘルプ|DMARCを有効にするページ
https://support.google.com/a/answer/2466563?hl=ja

DMARCの動作確認をしよう

DMARCの設定が出来たところで、実際に動きの確認を行いたいところですが…

実は、DMARCが機能するためには、メール送信側だけでなく、受信側もDMARCをサポートする必要があります。よくよく考えれば、送信側がメールの認証失敗時の対処方法を指示するので、指示を受け取る側である受信側も、DMARCの対応を行う必要が出てくるのも当然の話です。

現状全ての受信サーバーがDMARCに対応しているわけではありませんが、Gmailをはじめ、多くのメールサービスプロバイダがDMARCのサポートを開始しています。

そのため、DMARCの動きの確認では、一般的にどう扱われるか…といった点も含めて、DMARCに対応しているGmailやoutlook、大手インターネットサービスプロバイダのメールアドレスへ送信するという方法が良いかもしれません。

具体的には、メールのソースを確認して Authentication-Results ヘッダの値を調べます。このヘッダ内に、 dkim=,spf=,dmarc= という所がありますので、それぞれこの値が” pass “になっていれば認証成功という事になります。認証失敗時の動きについては、それぞれ指定した動きになっていれば動作しているという事になります。

Gmailでのメールソースの確認方法については、以下のページを参考にしてみてください。

【参考】なりすまし対策ポータル「ナリタイ」|DMARCの挙動確認ページ
https://www.naritai.jp/guidance_confirmation.html




すべてのドメイン、メールサービスプロバイダがDMARCに対応するのには時間がかかりそうですが、DMARCが広く普及することで、なりすましメールを利用したフィッシング詐欺の撲滅につながると言われています。

本記事をご覧になっている方で、社内のセキュリティポリシーが厳しい企業や、過去になりすましメールの被害にあった企業などは、DMARCの導入を検討されてみてはいかがでしょうか?

The following two tabs change content below.

野口 良

花屋、音楽制作会社を経て、法人向けクラウドサービスのマーケティングを担当。得意技は『EQ処理』と『ボーカルピッチ修正』。
  • このエントリーをはてなブックマークに追加

関連するおすすめ記事

お役立ち資料