なりすましメールをメールソースから見破る方法
- 2022年12月6日
- by 吉田 健人
- Category: 技術ネタ
SendGridサポートチームの吉田です。今回は、なりすましメールの見分け方を紹介したいと思います。誰もが使うサービスを騙ったなりすましメール、しばしば送られてきますよね。文章が変でおかしいと気づくことが多いと思いますが、パッと見ただけではわからないものもあるようです。そんな場合も騙されないために、押さえておきたいポイントを紹介します!
今回は、弊社SendGridエバンジェリストの中井 (@nakansuke) が受け取った上のなりすましメールを例に取り上げます。本文の日本語が少しおかしいので騙される人は少ないと思いますが、この記事では本文以外のところに着目してみます。
どうしてなりすませるのか
まずは差出人をみてみましょう。「Amazon.co.jp <lily@amazon.co.jp>」となっていますね。どうして「lily」なのかは別にして、それ以外の部分は実際にAmazonから送られてくるメールと同じ表記です。このような差出人の詐称ができてしまう理由は、郵便に例えて考えるとわかりやすいかもしれません。実は私たちがメールで見ているのは、言うなれば封筒入りで届いた便箋の中身だけです。便箋の中に差出人として誰の名前を書こうと、封筒の情報が正しければ封筒は届きますよね。メールも同じで、この差出人の表示は送る側が自由に決められます。送信元のメールアドレスが自動で表示されている訳ではなく、他人のメールアドレスを書くこともできてしまいます。
メールソースを見よう
では、封筒の差出人に当たるものはメールのどこに書いてあるのでしょう。それは、メールのソースを確認するとわかります。Gmailの場合、差出人や宛名の右にある縦三つのドットから「メッセージのソースを表示」をクリックすると見ることができます。メールの内容や宛先のほか、運ばれてきた経路の詳細などが書かれています(下図)。
この中の”Return-Path”が封筒の差出人にあたります。これは、メールが宛先に届かなかった場合にその旨を連絡する先のことです。実際の郵便と似たような役割ですね。今回のメールの場合lily@amazon.co.jpになっていて、実はここを見ても本当の送信者はわかりません。実際の郵便だって、宛先さえ合っていれば差出人が違っても届いちゃいますよね。
送信ドメイン認証をチェックする
では、何を見たら「なりすまし」を見破ることができるのでしょうか。実は、正当な差出人をきちんと判別できるように、送信ドメイン認証と呼ばれる技術が確立されています。以下でその3つを紹介します。
1. SPF (Sender Policy Framework)
メールソースの中に、嘘がつけない本当の情報はないのでしょうか。郵便の場合で考えると、それは消印です。誰が送ったかは騙せても、どこ(どの郵便局)から送ったかは騙せません。メールの場合、これは送信元IPアドレスという形で記載されています。
”Return-Path”の下の”Received”を見てみましょう。”from amazon.co.jp” というところは送信者が自称しているドメインなので嘘の情報ですが、そのあとのIPアドレスは本物です。
この送信元IPアドレスを使ってスパムメールをあぶり出す方法として作られたのがSPFです。まず、送信者は自分がどこから(どのIPアドレスから)メールを送るかという情報を公開します。受信者は、メールの送信元IPアドレスをその情報と照らし合わせて正当性を見極めます。例えるならば、中野に住む人の手紙が中野郵便局ではなくロンドンから来たら、なりすましだと判断するような具合です。
2. DKIM (DomainKeys Identified Mail)
DKIMは、電子署名の技術を利用して、メールが正当な送信者から送られ、かつ改ざんされていないことを確認できる技術です。技術的な説明はこちらの記事に譲りますが、ちょうどトップ画像のような「封蝋」をするイメージでしょうか。刻印されたオリジナルのスタンプは、差出人に偽りがないこと、手紙が開封されていないことを証明してくれます。
3. DMARC (Domain-based Message Authentication, Reporting, and Conformance)
DMARCは最近広まりつつある、SPFやDKIMを利用した認証方式です。郵便で例えるのが少し難しいので、技術的な詳細はこちらをどうぞ。全てのメールサービスがDMARCを導入しているわけではありませんが、GmailやYahoo!メール等は対応しています。強力な認証方式なので、これがFail(認証失敗)していたらまず間違いなくなりすましメールと考えていいと思います。
これら3つの認証結果は、メールソースの”Authentication-Results”に記載されています。lilyさんからのメールでは、”dkim=temperror”、”spf=permerror”、”dmarc=fail”となっていて、どれも認証に成功していません。見つけづらい場所に記載されていますが、Gmailの場合はこれらの結果が「メッセージのソースを表示」すると一番上に表示されます。
真っ当なメール送信者は大抵これらを正しく設定しています。怪しいなと思ったら、まずはこの送信ドメイン認証に着目するといいでしょう。認証が通っていなかったら、なりすましメールを疑ってもいいかもしれません。ただし、正当な送信者のメールでも転送された場合などにSPF認証が失敗することがありますし、認証を通してくるなりすましメールもないとは言い切れません。こうなると、メールソースをさらに読み込んでいく必要が出てきます。メールソースについてもっと知りたいという方は、ぜひこちらの記事をご覧ください。
なりすましメールを見破る絶対の基準はなく、最終的には自分の判断力を高めていくしかありません。重要な情報は本文ではなくメールソースに隠れています。皆さんもスパムメールが受信箱に届いたら、まずは一度覗いてみてください!