お役立ちコラム
受信時の送信ドメイン認証方法|SPFとDKIMの違いとは

近年、標的型攻撃やフィッシング詐欺をはじめとした、「なりすましメール」の被害が増加しています。一見して本物と勘違いするほど精巧なメールも多く、これを人間が見分けるには限界があります。このような脅威から身を守るため、多くの企業で「送信ドメイン認証」の導入が進められています。
今回は、送信ドメイン認証の基礎知識と効果的な活用方法をご紹介します。
目次
送信ドメイン認証(SPF/DKIM)とは
送信ドメイン認証とは、差出人の送信元情報を検証し正規のサーバーから送られたメールかどうか(メールそのものが正規のものかどうか)を識別する技術のことです。具体的な特徴を解説する前に、電子メールの送受信の仕組みからご紹介します。
電子メールの送受信の仕組み
私達がスマートフォンなどで受信するメールは、「POP3サーバー」と呼ばれる受信サーバーから送られています。その際に「ユーザー認証」というプロセスを経て、メール受信者の身元を確認します。IDやパスワードが正当である場合のみ、メールを受信できる仕組みです。
一方、メール送信時は「SMTPサーバー」にアクセスした後、受信者が利用するPOP3サーバーへと転送されます。もちろん、メール送信時にも悪意ある第三者やウイルスなどによるなりすましメールを防ぐためのIDやパスワードで認証を行うSMTP認証があり、普及しています。
しかしながら、なりすましメールを防ぐには、これらの対策だけでは不十分です。
実は、電子メールが仕組みとして持つ2つのFromアドレスが関係しています。
1つめは、エンベロープFrom(Envelope-From)アドレスです。郵送物にたとえると、封筒に記載されている差出人名です。SMTPという送信プロトコルのコマンドを利用して送信されるFromアドレスで、そもそもこの情報が正しくないと送信ができない本当のFromアドレスです。バウンスメールと呼ばれるメールの配送エラーを受信するのもこちらのエンベロープFromアドレスです。
もう1つは、ヘッダFrom( Header-From)アドレスです。こちらも郵送物にたとえると、封筒の中の便箋に書かれている差出人名にあたります。こちらが、仕様上、実際の差出人とは異なる情報を表示することができるアドレスとなります。いわゆる、なりすましメールは、このヘッダFromアドレスを不正に変更することで送られています。残念ながら、多くの人は、直接見る事ができる文面の情報を信用しているからです。(エンベロープFromアドレスを調べる人はほとんどいません。)そのため、このヘッダFromアドレスがなりすましに利用されることになります。
そのため、完全になりすましメールを防ぐためには、悪用されている可能性の高いヘッダFromではなく、実際に送信に利用されているエンベロープFromアドレスを、予め設定した送信元として許可されているものかどうかを認証する必要があります。そこで役立つのが送信ドメイン認証となります。
送信ドメイン認証の意義
送信ドメイン認証は、なりすましメールを排除することで結果的にスパムメールそのものが減少するという考えのもと、提唱された技術です。送信元情報をドメイン単位で検証することで、上述のとおり、ヘッダFromアドレスを詐称したなりすましメールを検知します。現在はインターネットプロバイダーを中心に導入されており、なりすましメールによる被害を防ぐうえで、最も有効なメール認証技術と考えられています。
さまざまな認証方式の特徴と違い

送信ドメイン認証には「SPF」「DKIM」「DMARC」といった複数の認証方式が存在します。ここでは、代表的な認証方式であるSPF認証とDKIM認証の特徴をご紹介します。
SPF認証とは
SPF認証(Sender Policy Framework)とは、受信メールのIPアドレスを利用し、正規の送信元が送ったメールかを検証する技術です。
まずメール送信者は、利用するDNSサーバーにIPアドレス情報を登録します。これは「SPFレコード」という形で保管され、後にメール受信者が送信元情報を照合するために利用します。
メール受信者は、受信メールのIPアドレスとSPFレコードの内容が一致するか、送信者側のDNSサーバーに問い合わせます。IPアドレスが適合した場合は受信し、適合しなかった場合は受信拒否するか、スパムフォルダにフィルタリングする仕組みです。なお、検証後の対応は利用サービスやメールソフトによって変わります。
DKIM認証とは
DKIM認証(DomainKeys Identified Mail)とは、受信メールに付与された電子署名情報をもとになりすましを特定する電子署名方式の認証技術のことです。
メール送信者がやるべきことは、大きく2つあります。1つは、DNSサーバーのテキストレコードに公開鍵を登録すること、もう1つは送信メールに電子署名情報(秘密鍵)を付与することです。このプロセスを踏んだ後、通常通りメールを送信します。
続いてメール受信者は、送信メールに付与された電子署名情報をもとに、送信者側のDNSサーバーに対して公開鍵情報を要求します。取得した公開鍵で電子署名を検証し、一致した場合はメールを受信、一致しなかった場合は受信拒否などを行います。
SPF認証とDKIM認証の違い
SPF認証とDKIM認証の大きな違いは、その検証内容にあります。SPF認証は、IPアドレス情報をもとになりすましかどうかを特定しますが、メール本文の改ざんは検知できません。一方のDKIM認証は、送信メールに電子署名情報が付与されており、それをもとに送信元情報とメール本文の正当性を確認します。これにより、メールアドレスだけでなくメール本文の不正な改ざんも検知できるようになります。
ただし、DKIM認証にはデメリットもあります。メール作成時に電子署名情報を付与するため、送信途中にメールを書き換えられると、受信後の検証で失敗することがあります。わかりやすい例が、メーリングリストから一斉送信されるメールです。悪意ある改ざんではないにしろ、状況次第では重要なメールが届かない可能性があります。
送信ドメイン認証の効果的な活用法とは

ここではSPF認証やDKIM認証の活用方法や、導入にあたって必要な実施項目をご紹介します。
DMARCとの併用で認証精度を高める
認証方式によってはたとえ不正に送信されたメールでなくても、受信時の認証に失敗することがあります。それをカバーする仕組みとして、DMARCという認証方式が登場しました。
DMARCとは、SPF認証やDKIM認証が認証に失敗したメールを管理する仕組みのことです。例えば、悪意ある第三者からなりすましメールが送られてきたとします。仮にメールサーバーのポリシーが「受信する」となっていた場合、SPF認証などに失敗しても、メールボックスには入ります。これを誤って開封すると、何らかの被害が生じる可能性があります。
DMARCを設定した場合、認証に失敗したメールは「None(何もしない)」「Reject(拒否)」「Quarantine(隔離)」といったポリシーのうち、どれかひとつで対応します。これらのポリシーは、受信者側が自由に設定可能です。
DMARCは、Gmailをはじめとする主要メールサービス、メール配信システムが対応しています。なりすましメール対策などから認証精度を高めたい場合、DMARC対応のサービスを選ぶようにしてください。
方式の導入に必要な実施項目
まずは、送信者側に必要な実施項目からご紹介します。SPFでは、DNSサーバーへのIPアドレス情報の登録、DKIMでは公開鍵の設置および送信メールへの電子署名情報の付与が必要です。DMARCにおいてはDNSサーバーへのDMARCレコードの設置、認証の可否確認および処理結果をまとめたDMARCレポートの受信設定、関連サービス、システムの導入を行います。
受信者側は、各方式の認証が行えるサービスやシステムの導入を行います。DMARCはやや特殊で、別途DMARCレポートを自動送信する設定が必要です。
このように、送信者側と受信者側で実施項目は変化します。どちらの立場になってもスムーズに対応できるよう、双方の実施項目を把握しておくことが大切です。
まとめ
メールによる詐欺行為の手口は、年々巧妙化しています。なかには実在するメールアドレスを不正取得し、標的型攻撃やフィッシング詐欺などに利用するケースも報告されています。このような“なりすまし被害”に巻き込まれないよう、送信ドメイン認証を積極的に導入したいところです。
メール施策におけるセキュリティ対策が心配な方は、利用サービスやシステムの送信ドメイン認証対応状況を今一度ご確認ください。
人気記事
- メールの一斉送信で効率化!メルマガ配信ソフトの活用方法について 2018年1月29日
- メールを一斉送信する方法とは?複数送信するときのマナーもご紹介 2017年11月02日
- メルマガとは?10分でメルマガを説明できるようになる基礎講座 2018年4月27日
何度配信しても定額のメール・メルマガ配信サービスは「配配メール」