SPF・DKIM・DMARCの違いは?なりすましメール防止技術をまとめます!

2023年02月22日

20230222_051243683_iOS


最近、銀行やクレジットカード会社を名乗る詐欺メールが増えています。

実はメールアドレスの偽装は簡単です。まったく関係ない第三者のそのメールアドレスの

所有者になりすましメールを送ることはできてしまいます。


今回はそのような、なりすましメールに有効な3つの技術を簡単にご紹介します。


ここまでは、あくまで簡単に説明することを重視しているため

細かい技術的なことを知りたい方、他の人の記事をご覧ください。


SPF (Sender Policy Framework) とは?


送信ドメイン認証と呼ばれる技術を使用しています。

正規の送信者はDNSレコードに自身のメールアドレスと送信に使用するサーバのIPアドレスを登録しておきます。


すると、受信者はメールを送信してきたサーバのIPアドレスがDNSレコードに登録されているか確認を行い、登録されていれば正規の送信者、違っていれば、なりすましと簡単に見分けることができます。


DKIM (DomainKeys Identified Mail) とは?


電子署名と呼ばれる技術を使用しています。

一見するとSPF認証だけで簡単に本人か、なりすましかを見分けることができるように思います。


しかし、メールは相手から直接送られてくるとは限りません。

転送されてくることもあるのです。


メールが転送されてきた場合には、送信元のIPアドレスは転送者のものとなりますので

正規の送信者が登録したIPアドレスとは一致しません。


SPFだけでは転送メールは、なりすましと判断されています。


そこで登場するのがDKIMです。

DKIMではふたつの鍵を使用します。1つは暗号をかける鍵、もう1つは暗号を解く鍵です。


DKIMはあらかじめ正規の送信者が、暗号を解くための鍵をDNSレコードに登録しておき

メールを送信する際には常に暗号をかける鍵を使い、メールの内容を暗号化したものを作成してメールに添付します。


受信者側はメールに付与されている暗号を解くための鍵を、DNSレコードから取得して暗号を解読します。

暗号を解読し、それがメールの内容と一致していれば、届いた文章は正規の送信者が書いたもので、改ざんされていないことを確認することができます。


ここのポイントは鍵が2つ(公開鍵・秘密鍵)あり、ペアで使用しているということです。

暗号をかける鍵は正規の送信者しか持っていないため、第三者が勝手に暗号を作成することは困難です。

また仮に別の鍵を使い暗号を作成しても、それはペアとなる鍵で解読できないため、意味をなさなくなります。


この方法であればSPFによる認証に失敗した場合でもメールを作成したのが、正規の送信者であるか確認できます。


DMARC (Domain-based Message Authentication Reporting and Conformance) とは?


そして最後はDMARCです。上記の2つの技術によりメールアドレスの偽装は困難に思えます。

しかしこれには一つ欠点があり、DKIMにおいて認証されるドメインはDKIM内で指定されたものであり

必ずしも正規の送信者のメールアドレスとは一致していないということです。


つまり送信元に指定されているメールアドレスとは別のドメインでDKIMを通過させてしまえば、なりすましメールを送ることが可能です。DKIMの認証情報はメールヘッダーから確認できますので、それを見ればわかりますが、普通は毎回確認するなんてことはないでしょうからこれでは意味がありません。


DMARCはそのような問題を解決し受信側が正しく処理できるようにする技術です。

またDMARCの設定により、なりすましメールが届いた時の振る舞いを指定したり、認証結果のレポートをメールで受け取ったりすることもできます。


例えば、


SPF・DKIMに失敗したメールは破棄したほしい

迷惑メールフォルダに入れてほしい

認証結果は無視してほしい


など条件を指定できます。


これらの指定は他の技術と同様にDNSレコードに登録することができます。


まとめ


いかがでしたでしょうか?

簡単にお話するつもりだったのですが、ややこしくなってしまいすみません。


SPF・DKIM・DMARCは送信側だけではなく受信側も対応していないと効果がありません。

設定ミスなどでメールが届かないなどの不安からDKIMやDMARCはいまだに普及率が低いのが現状です。

本サービス、かんたんホームページ作成Grupoで提供している Grumail では、なりすなしによる被害低減のため、送信者から設定したDKIM・DMARCを読み取り、対応するようになっています。