DKIMとは?SPF・DMARCとの違いや仕組みを解説!

 2024.04.12  クラウドセキュリティチャネル

電子メールは送信元アドレスの書き換えが簡単にできてしまいます。そのため、送信元を偽装して個人情報などを盗み取ろうとする「なりすましメール」が後を絶ちません。特に、企業を標的にしたフィッシング詐欺は増加傾向にあり、適切な対策が必要です。本記事では、なりすましメールを防ぐ手段の1つ、「DKIM」についてわかりやすく解説します。

DKIMと混同しやすいSPFとの違いや、DKIMとあわせて設定されることも多いDMARCの技術についても解説します。

DKIMとは|なりすましメール対策に有効か

なりすましメールを防ぐために、メール送信元の真偽をIPアドレスや電子署名などで確認する方法があります。このような仕組みを「送信ドメイン認証」と呼びます。そして、そのうちの1つが「DKIM(DomainKeys Identified Mail)」です。これは、メール送信元の電子署名を受信側が検証する仕組みです。以下では、このDKIMについて詳しく解説します。

DKIMが注目されている背景

近年、電子メールやSMSを悪用した詐欺が急増しており、フィッシング詐欺や標的型メール攻撃による個人情報の流出や金銭被害が深刻な問題となっています。従来のスパム対策では対応しきれないこれらの攻撃に対し、DKIMは送信者ドメインの認証を行い、なりすましメールを検知・ブロックする技術として注目されています。

フィッシング詐欺は、Amazonや金融機関など知名度の高い企業を装い、偽のメールやSMSを送信することで、ユーザーの個人情報を騙し取る手法です。実在する相手の氏名や過去にやり取りしたメール文面を流用するなど、巧妙な手口が増加しており、一見しただけでは偽装を見破るのが困難になっています。

また、ここ数年では「標的型メール攻撃」と呼ばれる手法も増加しています。これは主に組織をターゲットにしたもので、過去にやり取りをしたことがある相手に偽装し、機密情報などを騙し取る手法です。特に、ここ数年は「Emotet(エモテット)」と呼ばれるマルウェアの被害が増加しており、セキュリティ専門組織などから注意喚起が発せられています。

DKIMは、送信者ドメインの認証を行い、なりすましメールを検知・ブロックする技術です。従来のスパムフィルタと異なり、送信ドメインの真正性を検証することで、フィッシング詐欺や標的型メール攻撃など、より高度ななりすましメールへの対策が可能となります。送信者側と受信者側でそれぞれ設定が必要になりますが、導入することで、メールセキュリティを大幅に向上させることができる点で注目されています。

DKIMの仕組み

DKIMを平たくいうと、送信元のドメインが正当なものであるかどうかを認証する技術です。公開鍵暗号方式を使った電子署名技術がベースとなっており、電子署名には自分の公開鍵と署名情報、認証局の情報などが含まれます。

送信者は、メール本文をハッシュ関数で圧縮して、署名情報などとともに自分だけが知っている秘密鍵で暗号化し、電子署名を作成します。その後、作成した電子署名をメールのヘッダに付けて相手に送信します。

秘密鍵の暗号を復号できる公開鍵は、認証局ではなく送信元のドメインを管理しているDNSサーバー上で公開しておくのがポイントです。メールを受信したサーバー側では、送信元ドメインを管理しているDNSサーバーから公開鍵を取得し、電子署名を復号します。復号できれば正当なメールであると判断します。

DKIMの署名|作成者署名・第三者署名

DKIMの署名方法は、作成者署名と第三者署名の2種類あります。

  • 作成者署名:メール送信者のドメインを利用
  • 第三者署名:メール送信者以外のドメインを利用

送信するアドレスと署名を行ったアドレスのドメイン(メールアドレスの@以降)が一致する場合を「作成者署名」、それ以外を「第三者署名」と呼びます。第三者署名では、DKIMのサービスを提供する事業社のドメインを利用することが一般的です。

メール改ざんを防ぐ目的であれば、どちらを使用しても違いはありません。しかし、なりすましを防ぐ場合は、同じドメインを利用する作成者署名の方が優れています。

サービスによっては、作成者署名は別途料金が発生したり、作成者署名が利用できない場合もあります。目的に合わせてどちらを利用するか慎重に選択しましょう。

なりすましメール対策 今注目のDMARCとは?
Microsoft 365だけでは不十分?メールセキュリティ対策3つの落とし穴

SPF・DKIM・DMARCの違い

DKIMとは?SPF・DMARCとの違いや仕組みを解説! 1
なりすましを防ぐための技術としては、ほかにも「SPF (Sender Policy Framework)」や「DMARC(Domain-based Message Authentication, Reporting and Conformance)」などが挙げられます。ここでは、それぞれの特徴について解説します。

SPFとは|DKIMとの違いも解説

SPFは、IPアドレス検証により、なりすましを防止する技術です。簡単にいうと、「事前に登録されているIPアドレスとドメインの組み合わせが一致していない」場合、なりすましをしていると判断する仕組みです。

メールを受信したサーバーは、 送信元ドメインのSPFレコードをDNSに問い合わせ、ドメインとIPアドレスをチェックして正当性を確認します。

SPFは、DKIMと比べて導入や設定が容易といわれています。しかし、DKIMは公開鍵や電子署名でなりすましを防いでいるのに対し、SPFではIPアドレスによる認証を行っています。メールが転送された場合は、送信元サーバのIPアドレスが変わってしまい認証に失敗したり、メールの本文自体の改ざんは確認できないなどのデメリットもあります。

DMARCとは|DKIMとの違いも解説

DMARCは、SPFとDKIMの認証結果を補強するために提案された新たな技術で、SPFまたはDKIM(あるいは両方)を事前に導入している必要があります。なりすましだと判別されたメールをどのように扱うのか設定でき、なりすましメールが受信者に届かないようにすることも可能です。設定方法はSPFと同様、DNSサーバー上でDMARCレコードを記述します。

DMARCを取り入れることで、なりすましと判断されたメールが何件あるのかといった、認証結果レポートを確認できます。認証結果レポートをもとに、セキュリティ状況を分析して対策を立てることにも役立つでしょう。

Googleから発表された「メール送信者のガイドライン」によると、2024年2月以降、Gmail宛に1日5,000件以上メールを送信する送信者に対し、SPF・DKIM・DMARC全ての送信ドメイン認証に対応することを要求しており、条件を満たさなかった場合はGmail宛のメールが正常に送信されなくなるなど、ビジネスにも大きく影響があります。

DKIMを導入するメリット

DKIMとは?SPF・DMARCとの違いや仕組みを解説! 2
DKIMは、フィッシング詐欺や標的型メール攻撃などのなりすましメールを効果的に検知・ブロックできるなど、多くのメリットがあります。ここからは、DKIM導入の主なメリットを紹介します。

送信者ドメインのなりすましを防ぐ

DKIMは、送信者ドメインの公開鍵と電子署名を使用して、メールの真正性を検証する技術です。これにより、送信者ドメインのなりすましを防ぎ、フィッシング詐欺や標的型メール攻撃などの被害を抑制できます。

従来のSPFでは、送信元のIPアドレスに基づいて認証を行うため、IPアドレスの偽装が可能な場合にはなりすましを防ぐことができません。一方、DKIMは電子署名によってメールの真正性を検証するため、IPアドレスの偽装があってもなりすましを検知できます。

また、DKIMはメール本文の改ざんも検知できるため、フィッシング詐欺などで改ざんされたメールを送信されるリスクも軽減できます。

メール到達率を向上させる

近年、スパムメール対策の強化により、正当なメールもスパムと判定されるケースが増加しています。DKIMは、送信者ドメインを確認することで、スパムフィルタによる誤判定を防ぎ、メール到達率を向上させることができます。

また、URLやファイル添付をしているメールは、受信側に到達しても開封・閲覧してもらえないケースも多いです。DKIMによって、受信側も安心してURLや添付ファイルを確認できるため、コミニュケーションの活性化にも繋がります。DKIMは、メールマーケティングや顧客とのコミュニケーションにおいて、重要な役割を果たします。

ドメイン評価向上

ドメインの信頼性を向上させられる点も、DKIMを導入するメリットです。DKIMは、送信者ドメインの真正性を検証する技術であるため、DKIMレコードを公開しているドメインは、なりすまし対策に積極的に取り組んでいると評価されます。また、DMARCレコードを公開し、DMARCポリシーを設定することで、ドメインの信頼性をさらに向上させることができます。

ドメイン評価の向上は、メール到達率の向上や、企業や組織のブランドイメージの向上にもつながります。企業イメージを向上させることで、ビジネスチャンスの拡大にもつながるでしょう。

DKIMを導入するデメリット

DKIMとは?SPF・DMARCとの違いや仕組みを解説! 3
DKIM導入には、大きく2つのデメリットがあります。
1つ目は、専門知識が必要になることです。2つ目は、サーバーの負荷が大きくなるためサーバーダウンなどのリスクを抱えることです。2つのデメリットについて詳しく解説します。

導入には専門知識が必要

DKIMは、メールの送信者を認証する技術ですが、導入には専門知識が必要になるというデメリットがあります。

例えば、DKIMの設定を行う際は、DNSレコードに設定情報を追加しますが、DNS設定に慣れていない人にとっては、設定が難しいと感じるでしょう。また、DKIMレコードには、ドメイン名、セレクタ、公開鍵などの情報を記載しますが、これらの情報を正しく設定しないと、DKIM認証がうまく機能せず利用できない状況に陥ります。

導入時だけでなく、導入後も定期的に設定を確認するなど、運用・管理が不可欠です。社内で専門知識を持った人材がいない場合は、導入代行を利用、設定が比較的簡単なツールを選ぶなどを検討しましょう。

サーバーの負荷が大きい

DKIM導入によって、サーバーへの負担がかかることもデメリットの1つです。
DKIMは、送信メールに電子署名を付与するため、サーバーの負荷が大きくなります。電子署名は、デジタル署名と呼ばれる技術を用いて作成されます。デジタル署名は、データの改ざん防止や送信者の認証などに用いられる技術ですが、計算処理に負荷がかかります。

特に、大量のメールを送信する場合、サーバーの負荷が顕著になります。サーバーの負荷が大きくなると、メール送信の遅延や、サーバーの停止などの問題が発生する可能性があります。

SPF・DKIM・DMARCの設定を確認する方法

DKIMとは?SPF・DMARCとの違いや仕組みを解説! 4
SPFとDKIMの設定方法を解説する前に、SPF、DKIM、DMARCの設定を確認する方法を紹介しましょう。

SPFレコード確認サイト「SPF Record Testing Tools」もしくは、コマンドラインで確認します。確認サイトを利用すれば、SPF設定を確認したいアドレスのドメインを入れて、ボタンを押すだけで設定を確認できます。

DKIMは、「dmarcian.com DKIM Inspector」「DKIM core」などのオンラインツールを使って、確認します。また、SPFと同様にコマンドラインを使って確認も可能です。

SPFの設定方法

DKIMとは?SPF・DMARCとの違いや仕組みを解説! 5
SPFの設定は、以下の3ステップで行います。

  1. SPFレコードの作成
  2. DNSレコードへの設定
  3. 設定の確認

まずは、SPFレコードを作成します。SPFレコードを作成するには、以下の情報が必要です。

  1. ドメイン名
  2. SPFレコードの内容

SPFレコードの内容は、テキストエディタなどで作成できます。

1で作成したSPFレコードを、ドメインのDNSレコードに設定する必要があります。DNSレコードに設定したら、SPFレコード確認サイトもしくは、コマンドラインでSPFの設定を確認しましょう。

DKIMの設定方法

DKIMとは?SPF・DMARCとの違いや仕組みを解説! 6
DKIMの設定方法は、大きく分けて以下の3つの手順があります。

  1. DKIMレコードの作成
  2. DNSレコードへのDKIMレコードの設定
  3. 設定の確認

OpenDKIMなどのソフトウェアを使い、レコードを生成するため、ソフトウェアをインストールします。そして、インストールしたツール上で、公開鍵と秘密鍵のペアを作成します。公開鍵はDNSレコードに公開し、秘密鍵はメール送信時に署名に使用します。

つづいて、作成したDKIMレコードを、ドメインのDNSレコードに追加します。DNSレコードの設定方法は、ドメインの管理画面によって異なります。詳細は、ツールを提供している企業のHPなどをご確認ください。

最後に、正しくDKIMの設定変更ができているかオンラインツールかコマンドツールで確認してください。

DKIM・SPF・DMARCの対策にすべきこと

DKIMとは?SPF・DMARCとの違いや仕組みを解説! 7
なりすましメールやフィッシング詐欺の対策として有効なのが、SPF、DKIM、DMARCです。これらの技術を効果的に活用するためには、送信側と受信側それぞれが適切な対応を行う必要があります。それぞれ、送信側と受信側で設定するべきことを解説します。

SPFで行うべきこと

受信側は、以下の設定を行います。
認証システムの導入:SPFの認証を行うシステムを導入する必要があります。
また、DKIMと同様に、処理ルールの設定を行います。

送信側は、以下の設定が必要です。
SPFレコードの設定:DNSサーバーにSPFレコードを登録し、送信元のIPアドレスを認証できるようにする必要があります。
送信ポリシーの設定:SPFレコードには、どのようなIPアドレスからメールを送信することを許可するかを記述する必要があります。

DKIMで行うべきこと

受信側は、以下の設定を行います。
認証システムの導入:DKIMの認証を行うシステムを導入する必要があります。
処理ルールの設定:認証結果に基づいて、メールを「受信する」「迷惑メールフォルダに振り分ける」「拒否する」などの処理ルールを設定する必要があります。

送信側は、以下の設定が必要です。
公開鍵の登録:DNSサーバーにDKIM用の公開鍵を登録し、送信メールに電子署名を付与できるようにする必要があります。
電子署名の付与:送信メールに電子署名を付与し、送信元の正当性を証明できるようにする必要があります。

DMARCで行うべきこと

DMARCの受信側の設定は、システムの導入と、処理ルールの設定に加えて、レポートの受信設定も必要です。
DMARCレコードを設定している送信者からのレポートを受信し、なりすましメールの送信状況を把握する必要があります。

そして、送信側は以下の設定を行います。
DMARCレコードの設定: DNSサーバーにDMARCレコードを登録し、SPF/DKIM認証結果に基づいて受信者にどのように扱ってほしいかを指示する必要があります。
DMARCレポートの受信:受信者から送信されるDMARCレポートを受信し、認証結果を分析する必要があります。
DMARCポリシーの調整:DMARCレポートに基づいて、DMARCポリシーを調整し、なりすましメール対策を強化していく必要があります。

堅牢なセキュリティサービスを提供する「HENNGE One」

送信ドメイン認証を設定するためには、メールサーバー側でその技術に対応している必要があります。さらに、自分たちでも電子署名を追加するなど、複雑な認証設定を行うことに負担を感じる方も多いでしょう。

そのような場合には、別途認証機能などを提供するセキュリティサービスを導入するのがおすすめです。安全なメール運用に必要なセキュリティ機能を網羅していることに加え、多くのサービスでは設定もわかりやすく、サポートも充実しています。

例えば、クラウドセキュリティサービスのHENNGE One」では「HENNGE E-Mail Security Edition」というメールセキュリティ機能が提供されています。DKIM付与もできるようになっており、管理画面から4ステップで設定可能です。

DKIMなどのセキュリティ設定を行うことで、自社に届くメールのなりすまし対策になるだけでなく、取引先に対しても、セキュリティ対応のしっかりした企業だという印象を与えられるでしょう。

さらに、HENNGE Oneでは、より高度なセキュリティ対策を行うためのDMARCの技術の情報をまとめた文書を、お役立ち資料として公開しています。DMARCの最新情報を確認したい企業は、「なりすましメール対策 今注目のDMARCとは?」もあわせてご確認ください。

まとめ

情報処理推進機構(IPA)が2023年1月に公表した「情報セキュリティ10大脅威 2023」では、個人の1位が「フィッシングによる個人情報等の詐取」、組織の3位が「標的型攻撃による機密情報の窃取」でした。それだけ攻撃の数も多く、社会的な影響も大きいことがわかります。

特に、ビジネス向けのなりすましメールの手口は、Emotetのように取引先の名称を語るなど年々巧妙になっており、受信者本人が判断して排除することが難しくなってきています。そのため、企業においては機密情報の漏えいやマルウェア感染などの被害を防ぐためにも、メールサーバー側で事前になりすましを防ぐ対策を講じることが重要です。

送信ドメイン認証の1つであるDKIMは、電子署名で送信元の正当性を確認する技術として、SPFに続き利用が広がってきています。単体ではなくSPFやDMARCなどの技術と組み合わせることで、安全性が高まります。メールはビジネスに不可欠なツールであるからこそ、きちんとした対策を行うことが必要です。適切な対応は自社の情報資産を守るだけでなく、取引先からの信頼性にもつながります。「HENNGE One」などのサービス導入も視野に入れ、堅牢なセキュリティ対策を講じましょう。

なりすましメール対策 今注目のDMARCとは?

RECENT POST「メールセキュリティ」の最新記事


メールセキュリティ

【注意】PPAPとは?その問題点と5つの代替案

メールセキュリティ

Zipファイルのウイルスチェックを行う重要性を解説

メールセキュリティ

メール誤送信対策の必要性と有効性について解説

メールセキュリティ

Outlookでのメール誤送信を防ぐには?防止策やOutlookを活用するメリットも

DKIMとは?SPF・DMARCとの違いや仕組みを解説!