ベアメール

blogベアメールブログ

ナレッジ

なりすましメール対策「SPF」「DKIM」の具体的な確認方法

DKIM

目次contents

はじめに

SNSやチャットなどさまざまなコミュニケーションツールが普及した現在でも、ビジネスの場ではコミュニケーション手段としてメールは未だ重要な役割を果たしています。しかしその一方で、送信元を偽ることで受信者を騙し、ウイルスに感染させようとしたり、フィッシング詐欺に誘導させたりするような不正なメールもまた後を絶ちません。こうしたメールは「なりすましメール」と呼ばれ、重大なセキュリティインシデントの温床になりえます。

こうした悪質な「なりすまし」を防ぐための仕組みが「送信ドメイン認証」です。送信ドメイン認証を怠っていると、自分の送ったメールがなりすましメールだと誤解されてしまい、メールが届かず企業活動が阻害されるリスクもあります。ここでは、なりすましメールの仕組みや、送信ドメイン認証の方法である「SPF」「DKIM」の確認方法について解説します。

なりすましメールの概要と仕組み

まず、なりすましメールの概要と仕組みについて解説します。

なりすましメールとは

なりすましメールとは、「送信元を偽装して送信されたメール」の総称です。近年、なりすましメールがフィッシング詐欺などの初手として使われるケースが多発しています。企業や政府機関の名称を使い、偽のサイトへ誘導してログイン情報を抜き取るなど、重大なセキュリティインシデントの温床となっているのです。

なりすましメールは、一定の知識を持つ人間でなければ見破りにくいのが実情です。その理由として、一般的なメールソフトから確認できるヘッダ情報では、「真の送信元アドレス」でもあるエンベロープFromを確認しにくい点が挙げられます。

なりすましメールの仕組み

では、なりすましメールを技術的な側面から解説していきます。



●エンベロープFromとヘッダFromの違いを利用

なりすましメールは、SMTPプロトコルの特性を利用し、ヘッダ情報を改変して送信します。具体的には、ヘッダFrom(メールクライアントに表示される送信元アドレス)やReply-To(返信先)をエンベロープFrom(真の送信元アドレス)とは異なるものに設定し、送信元を偽装しているのです。

この状態で返信ボタンをクリックすると、偽装された送信元アドレスとは違う、悪意ある送信者が設定した返信先に対してメールを送信することになります。このようななりすましメールに対して重要な情報を返信すると、まったく別の第三者に情報を漏洩させてしまうリスクにつながるわけです。

なりすましメール対策「SPF」「DKIM」とは

もし自社のドメインが、悪意ある第三者によって「なりすまし」をされ不正なメールに利用されてしまったら、社会的な信用を失いかねません。自社のドメインやメールを「なりすまし」から守るために必要なのが、送信ドメイン認証である「SPF」と「DKIM」です。特にSPFは送信ドメイン認証として広く普及しており、対応していないとキャリアやメールプロバイダから「なりすまし」だと判断されてしまい、不審なメールとして処理されてしまう原因にもなり得ます。ここではSPFとDKIMの概要と、対応しているか確認するための方法を解説します。

SPF(Sender Policy Framework)

SPFは、送信元IPアドレスの正当性を検証する仕組みです。認証情報としてIPアドレスを使用し、受信側はメール受信時に送信側のDNSサーバに登録されたSPFレコードと送信元メールサーバの情報のマッチングを行い、送信元の正当性を判断します。

SPFは送信側DNSサーバに対してSPFレコードの追加を行うことで利用できるため、設定の手間が少ないことが特徴です。ただし、SPFが検知できるのは送信元メールサーバの正当性のみであり、ヘッダ情報(ヘッダFromやReply-Toなど)の改竄などは検知できないことに注意してください。

SPFの確認方法

送信側は、DNSサーバへSPFレコードを追加することで設定が完了します。DNSレコードの具体的な記述方法については、こちらの記事で詳しく解説しています。

SPFレコードの書き方とは?記述例を総まとめ

SPFが正しく設定されているかは、「オンラインツール」や「コマンドライン」を活用することで確認できます。



●オンラインツールでの確認方法

例えば、無料のSPFレコード確認サイト「SPF Record Testing Tools」では、送信元ドメインや、DNSに設定したSPFレコードを指定することで、SPFが有効かどうかをチェックできます。「Domain name」欄に送信元ドメインを入力し、「Get SPF Record」を押下することで、SPFレコードの有効性がチェックできます。また、同サイトではSPFレコードの構文チェックも可能なため、「SPFレコードを設定したものの、到達率が改善しない」といった場合の設定見直しでも活用できるでしょう。



●コマンドラインでの確認方法

SPFレコードは、OS(WindowsやLinux)からコマンドラインを使って確認することもできます。OSによって利用コマンドは異なりますが、主なコマンドは以下のとおりです。


・dig

・nslookup

・drill(FreeBSDの場合)

・host


例えば、DNS情報を取得する際によく使われるnslookupを使う場合は、次のように記述します。


Linuxの場合… nslookup  -type=TXT sample.co.jp(※調べたいドメイン)

Windowsの場合… nslookup  -q=txt sample.co.jp(※調べたいドメイン)


コマンドラインオプションに「-type=TXT」「-q=txt」と指定することで、DNSサーバに設定されているテキストレコードを取得します。以下は、Linuxでの表示例です。


nslookup  -type=TXT sample.co.jp

Server:   xxx.xxx.xxx.xxx

Address:   xxx.xxx.xxx.xxx



Non-authoritative answer:

sample.co.jp    text = “v=spf1  ip4:xxx.xxx.xxx.xxx  include:yyy.co.jp  -all”


spfレコードが設定されている場合は、「v=spf1」から始まるレコードが表示されます。

「include」や「redirect」が指定されている場合は、同様の方法でさらにそのドメインを調べることで、送信元サーバの詳しい情報を確認することが可能です。


nslookup  -type=TXT yyy.co.jp

Server:   xxx.xxx.xxx.xxx

Address:   xxx.xxx.xxx.xxx



Non-authoritative answer:

yyy.co.jp  text = “v=spf1

ip4:xxx.xxx.xxx.xxx/28  -all


WindwosもLinux同様にnslookup コマンドで調べますが、コマンドラインオプションが異なります。「-q=txt」を指定しないと調べられませんので注意してください。

DKIM(Domain Keys Identified Mail)

DKIMは、メールの内容がオリジナルから改竄されていないことを検証する仕組みです。認証情報として電子署名を使用し、公開鍵暗号化方式によってチェックが行われます。具体的には、送信元メールサーバに設置された秘密鍵情報を用いて付与された電子署名を、受信側が公開鍵情報を送信元DNSサーバから取得し、署名の妥当性をチェックする仕組みです。エンベロープFromの妥当性はもちろんのこと、SPFでは検知できないヘッダ情報(ヘッダFromやReply-toなど)やメッセージ内容の改変も検知できることが強みです。

DKIMの確認方法

DKIMも、SPFと同じく「オンラインツール」や「コマンドライン」での確認が可能です。

確認には、「ドメイン名」と「セレクタ※」が必要のため、まずは配信されたメールのヘッダ情報から「セレクタ」を見つけ出します。セレクタは「DKIM-Signature:v=1; ~中略~ s=xxxx;」といった記載の中にあるs=「xxxx」の部分です。


※セレクタ: 公開鍵の詳細を識別するために使用される、DKIM署名の属性情報。異なるセレクタを用意することで、同じドメインに対して複数の公開鍵を運用できます。





●オンラインツールでの確認方法

DKIMを確認するためのオンラインツールとしては、「dmarcian.com DKIM Inspector

DKIM core」などがメジャーです。両サイトともに、「ドメイン名」と「セレクタ」を入力し、公開鍵データが正常に取得できるかチェックすることが可能です。



●コマンドラインでの確認方法

OS上から以下のようなコマンドを打ち込みます。「v=DKIM」から始まるレコードが、公開鍵の情報です。

nslookup  -type=TXT  selector.セレクタ._domainkey.<エンベロープFromドメイン>


受信側でSPF、DKIMを確認するには?

SPF・DKIMが設定されているか否か「受信側」から確認する方法としては、メールのヘッダ情報をチェックする方法がおすすめです。例えば、Gmailでは、次のような手順で確認できるようになっています。

Gmailの場合

チェックしたいメールを開き、メールヘッダ部分の「to 自分」の右にある「▼」マークをクリックします。以下項目が表示されていれば、SPF・DKIMが認証されています。

・SPF認証が有効な場合は「送信元」の項目と「ドメイン名」

・DKIM認証が有効な場合は「署名元」の項目とドメイン名」

送信者の名前の横に疑問符が表示されているメールは認証されていないことを意味します。返信や添付ファイルを開く際は、十分ご注意ください。

ブログ用バナー_SMTPサーバ

まとめ

本稿では、なりすましメールの仕組みや防止策としての送信ドメイン認証、その確認方法について解説してきました。SPFやDKIMを正しく設定することで、自社ドメインを悪意ある第三者による「なりすまし」から守り、自社ドメインから送信する正当なメールが不審なメールとして判定されるリスクを低減させられます。ぜひ送信ドメイン認証を活用して、安心して利用できるメール環境を構築しましょう。

この記事を読んだ人へオススメrecommended