電子メールが送受信される際には、ドメインやIPアドレス、電子署名を認証することで、なりすましやスパムメールを防いでいます。そのようなメール認証の仕組みについて、メールを受信してからどのような認証が行われているのか視覚化したウェブサイトが「Learn and Test DMARC」です。

Learn and Test DMARC

https://www.dmarctester.com/

Learn and Test DMARCにアクセスすると表示されるメールアドレス宛にメールを送信することで、DMARCテスターを起動することができます。このメールアドレスはサイトにアクセスする度に変更されます。なお、受信したデータはDMARCのテストのみに使用され、保存されることはありません。



Gmailからメールを送信してみます。メールアドレスを入力したら「送信」をクリック。件名、本文は必要ありません。



メールを受信するとDMARCテスターのページが切り替わり、「こんにちは!私はdmarctester.comのメールサーバーです。私の名前はneo.dmarctester.comです。システムでは私を『Neo』と呼んでいます」と表示されました。



その後、メールを送信したIPアドレス、メールホスト、送信したメールアドレスを認識。DMARCテスターでは、1項目の動作が完了するごとに「Press any key to continue」と表示されるので、何かキーを押すことで次の動作に移ります。



Neoは正規のIPアドレスからメールが送信されたかどうかを認証するSPFを実行して、大企業や政府などのドメインになりすました電子メールを経由したフィッシング詐欺などを検知します。「PASS」と表示されたらちゃんと設定されているので認証完了。



次に、送信者の署名が正当かどうか確認するDKIM認証が実行されます。こちらも問題なければ「PASS」と結果が表示されました。DMARCテスターによると、DKIM認証ではメールのヘッダーやドメイン、送信元アドレスの整合性などをチェックしているとのこと。



最後に、SPFとDKIMを拡張したメール認証プロトコルであるDMARCが実行されます。DMARCは、送信者の電子メールがSPFまたはDKIM、あるいはその両方によって保護されていることを示した上で、設定したDMARCポリシーに従ってメールを拒否または隔離するなどを指示することができる仕組み。ここではDMARCポリシーを「p=none」であることを確認しています。「p=none」の場合、メールの認証は監視のみ行い、結果に対するアクションを起こさないという設定です。



SPFおよびDKIMについて「PASS」と改めて認証が行われました。



SPFとDKIMの「PASS」を確認したことでDMARCも「PASS」と表示され、DMARCのプロセスは完了。



DMARCの結果にも「PASS」と表示されました。



Learn and Test DMARCでは、仮のメールアドレスによってDMARCテスターを実行することもできます。「Spoof my email」をクリック。



仮のメールアドレスを入力したら「OK」をクリック。



架空のメールアドレスのため、IPアドレスはランダムでメールサーバーは「evil.example.org」と表示されますが、DMARC認証のプロセスについては同じように学ぶことができます。



また、「Load random example」をクリックした場合、DMARCテスターが実行されますが、記事作成時点では「こんにちは!私はdmarctester.comのメールサーバーです。私の名前はneo.dmarctester.comです。システムでは私を『Neo』と呼んでいます」と表示されるところで動作を停止してしまいました。



さらに、Learn and Test DMARCではDMARCについて学ぶだけではなく、知識をテストすることもできます。「Test your DMARC knowledge」をクリック。



全10問のクイズにチャレンジできます。



「Paste email headers」をクリックすると、既存のメールのヘッダーを貼り付けることで、同じようにDMARCテスターを実行することができます。



ヘッダーの取得方法は使用しているメールソフトによって異なりますが、Gmailの場合はメールを開いて「メッセージのソースを表示」から「詳細ヘッダー」を表示する事で確認できます。ヘッダーをコピー&ペーストしたら、「Start analyzing the headers」をクリック。



テストメールを送信した場合と同じように、DMARC認証のプロセスを見ることができます。