見出し画像

見え見えのフィッシングメールがDMARC認証をpassしたのはなぜなのか

「よぉ、変態。お前の性癖をバラされたくなかったら
ビットコイン口座に金振り込めよ」(意訳)

という、ブラジルのサーバからの
見え見えのフィッシングメールが
GmailのDMARC認証をpass
してしまいました。

このメールのfromのアドレスは友人のもので、
ビットコイン詐欺していないです。
つまり、なりすましです。

見え見えなので件名にも[SPAM]と追加されている

「DMARCって何?」という方も多いかと思いますが、
ざっくり言うと、詐欺メールなど、
メールを送信元を偽る「なりすまし」メールを
防ぐことを目的にした
ものです。
こちらの説明がとてもわかりやすいです。

DMARCについて、以下の点だけは覚えてください。

DMARCが他の送信ドメイン認証と違う点の1つは、「DMARCがpassしている=メールを受信した人が見る"送信者のドメイン"から来たメールであることが認証されている」ということです。

DMARCの認証ってSPFやDKIMと何が違うんですか?を説明してみる。

怪しいメールが来たときに、
DMARCがpassしているかを確認すれば、
送信者が本物かどうかがわかる
、ということですね。

にも関わらず、こんな絵に描いたようなフィッシングメールが、
GmailによってDMARCをpassと判断された
ので、
衝撃を受けたわけです。なんでなの?

件名にも[SPAM]ってあるじゃないですか

このフィッシングメールが届くまでの流れ

ChatGPTの助けを借りながらメールを分析したところ、
ざっくり以下のような流れになっていました。

  • 始点: メールは187.120.24.61.glink.inf.br(実際のIPアドレスは187.120.24.53、(ブラジル?)→エックスサーバー

  • 中継1: エックスサーバー内部処理

  • 中継2: エックスサーバーからさくらインターネット

  • 中継3、4: さくらインターネット内部処理

  • 中継5: さくらインターネットからGoogleのGmailサーバへ

  • 終点: GoogleのGmailサーバがメールを受信

メールのソースを詳しく見てみます。
(IPやドメインなど特定できる情報は一部伏せてあります)

始点

Received: from 187.120.24.61.glink.inf.br (187.120.24.53.glink.inf.br
[187.120.24.53]) by sv1   .xserver.jp (Postfix) with ESMTP id
8DEDF20079CA3B for <ask@           .com>; Wed, 31 Jan 2024 15:31:13 +0900
(JST)
Authentication-Results: sv1   .xserver.jp; dkim=none; dmarc=fail
reason="No valid SPF, No valid DKIM" header.from=            com

メールは187.120.24.61.glink.inf.br(実際のIPアドレスは187.120.24.53、ブラジル?)から、エックスサーバーに送信されました。
この時点では、DKIM署名はなく、DMARCはfailになっています。

中継1

Received: by sv1   .xserver.jp (Postfix, from userid 20281) id
D33F72007CF829; Wed, 31 Jan 2024 15:31:18 +0900 (JST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=               ;
s=default; t=1706682678; bh=Di/C4EgSQfytSIkn􏰃ESuAXZv5wNGmOZsaMC+Nm8c1rY=;
h=Date:From:To:Subject:From;
b=YL0/QlylBaxGk8iWSrJZIShImLNTR....(省略)
X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on
sv1   .xserver.jp
X-Spam-Flag: YES
X-Spam-Level: **************
X-Spam-Status: Yes, score=14.9 required=3.0 tests=BITCOIN_SPAM_07,

メールはxserverのサーバ内部で処理されています。ここで
1. メールにDKIM署名が付加され、
2. SpamAssassinによってスパムメールであると判定
(スコア3.0以上がスパムのところ、スコア14.9)されています

中継2〜4

Received: from f      .sakura.ne.jp (f      .sakura.ne.jp
􏰀133.242.250.112􏰁) by www2   .sakura.ne.jp (8.16.1/8.16.1) with ESMTP id
40V6WYT6015803 for <              .net>; Wed, 31 Jan 2024 15:32:34 +0900
(JST)

Received: from www2 .sakura.ne.jp (49. ) by
f .sakura.ne.jp (F-Secure/fsigk􏰂smtp/550/f .sakura.ne.jp); Wed,
 31 Jan 2024 15:32:34 +0900 (JST)
X-Virus-Status: clean(F-Secure/fsigk􏰂smtp/550/f .sakura.ne.jp)

Received: from sv1 .xserver.jp (sv1 .xserver.jp 􏰀183.90.253.18􏰁) by
 www2 .sakura.ne.jp (8.16.1/8.16.1) with ESMTPS id 40V6VJ5U015384
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO)
 for <     .net>; Wed, 31 Jan 2024 15:31:19 +0900 (JST)
X-Virus-Status: clean(F-Secure/fsigk􏰂smtp/521/virusgw11.xserver.jp)

下から2、3、4の順です。さくらインターネットのサーバ内処理なので割愛します。

中継5

Received: from www2   .sakura.ne.jp (localhost [127.0.0.1]) by
www2 .sakura.ne.jp (8.16.1/8.16.1) with ESMTP id 40V6WZWd015808 
for< gmail.com>; Wed, 31 Jan 2024 15:32:35 +0900 (JST)

さくらインターネットのサーバでからGmailに送る内部処理です。

終点

Received: from www2   .sakura.ne.jp (www2   .sakura.ne.jp.
[49.          ])
        by mx.google.com with ESMTPS id c22-
20020aa78816000000b006ddc403e5b1si8750384pfo.272.2024.01.30.22.32.36
        for <           gmail.com>
        (version=TLS1􏰂2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
        Tue, 30 Jan 2024 22:32:36 -0800 (PST)
Received-SPF: none (google.com: www2   .sakura.ne.jp does not designate
permitted sender hosts) client-ip=49.          ;
Authentication-Results: mx.google.com;
       dkim=pass header.i=@           .com header.s=default
header.b="YL0/Qlyl";
       arc=fail (signature failed);
       spf=none (google.com: www2   .sakura.ne.jp does not designate
permitted sender hosts) smtp.helo=www2   .sakura.ne.jp;
       dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=           .com

さくらインターネットからのメールをGoogleのGmailサーバが受信。
DKIMはpass、DMARCもpassと判断されました。

これは、どういうことなのでしょうか?

考察

  1. 始点ではDKIM署名はなく、DMARCもfailとされた

  2. 中継1のサーバ(エックスサーバー)では
    SpamAssassinによってスパムメールであると判定された
    (必要スコア3.0に対して獲得スコア14.9)

  3. にも関わらず、エックスサーバーでメールを転送する過程で
    DKIM署名が付加された

  4. このDKIM署名は正当なものであるため、
    最終的にGmailのサーバによって、DMARCがpassと判断された

こんな見え見えのフィッシングメールがDMARCをpassしてしまうのは、
不正メールに「なりすましではありません」というお墨付きを与え、
詐欺被害を助長する恐れがあるのでは?

問い合わせと回答

この件について、xserverに問い合わせてみました。
以下が得られた回答です。

恐れ入りますが、「2」でDKIM署名が実施されるのは仕様どおりの挙動であり、「3」にてDMARC認証が通過してしまうのは外部サーバーでの処理となりますので当サービス側では対処できかねる内容となります。

ここで言う「1」「2」「3」は以下のプロセスです。
「1」→送信元からエックスサーバー
「2」→エックスサーバーからさくらインターネット
「3」→さくらインターネットからGmail

つまり、上の回答はこう言っているようです。

  1. DKIM署名はエックスサーバーで追加された

  2. このDKIM署名の追加は「仕様どおりの挙動」

  3. GmailでDMARC認証が通過するのはGmail側の問題

と読めます。

エックスサーバー上でDKIM署名が付加されたおかげで、
Gmailのサーバは
「これは、正しい送信元のサーバから送られてきたメールで、
正当なDKIM署名もついてるね」と
DMARCをpassと判断しているわけですから、
それを

DMARC認証が通過してしまうのは外部サーバーでの処理となりますので当サービス側では対処できかねる内容となります

とされてしまうと、困ってしまいます。
どうすればいいのでしょう。

対策案

メール転送サービスや中継サーバが、
DKIM署名を追加すること自体はよくあることです。

しかし今回のケースでは、
「フィッシングメールも含めた全ての転送メールに、
機械的に正当なDKIM署名を与えている」
点が問題なのだと思います。

上で見てきた通り、「始点」「中継1」
メールがエックスサーバーに来た時点ではDKIM署名もなく、
ARC-Authentication-Results が dmarc=fail となっています。
また、
エックスサーバー上で、SpamAssassinによって
真っ黒にスパム判定
されています
(必要スコア3.0に対して14.9)。

つまり、エックスサーバーに到着した時点で
非常に怪しいメールであるのは明らかなわけです。

このように、既にdmarc=failや高いスパムスコアを受けている
メールに対してDKIM署名を追加することは、
不正なメールの信頼性を誤って高めてしまう恐れが高いです。

提案:メールのセキュリティ評価を考慮したDKIM署名の追加

そこで、メールを転送する際には、メールの信頼性
(例えばDMARC、SPF、DKIMのチェック結果、
SpamAssassinによるスパムスコアなど)を評価し、
これらの情報をもとにDKIM署名を追加するかどうかを
決める
ことはできないのでしょうか?

エックスサーバーに問い合わせてみたところ、以下のような回答でした。

> このような疑わしいメールには
> DKIM署名は追加しないようにする、
> といったことも可能ではないでしょうか。

また、当サーバーから送信されるメールにおいてはDKIM署名が実施されますため、現状、上記のようなご対応はかないませんことご了承ください。

DKIM署名は、全てのメールに機械的に追加するので、
怪しいメールにはDKIM署名しないとかはできません、
ということのようです。

不正メールを完璧に見分けろと言っているわけではなくて、
少なくともこのレベルの真っ黒なメールぐらいは
DKIM署名を付けないでほしいんです。
これはそんなに難しいのでしょうか?

詳しい人教えてください。


まとめ

  • 見え見えのフィッシングメールが、Gmailによって
    DMARC認証をpassと判断されました。
    それは中継サーバで正しいDKIM署名が追加されたためです。

  • 転送サーバでDKIM署名が追加されること自体は
    おかしいことではありませんが、
    明らかに怪しいメールにはDKIM署名を追加しない、
    という運用にして欲しいです。

  • そうでないと、不正メールがDMARCを通過してしまい、
    「なりすましでないことを保証する」という
    DMARCの存在意義が揺らぎかねないからです。

  • 今回は見え見えの英語のフィッシングメールなので
    引っ掛かりませんでしたが、
    もっと内容が高度な日本語の文面であった場合、
    「DMARCがpassということは、なりすましじゃないな」
    と、騙されてしまう人が出てきてもおかしくありません。


読んでいただいて、ありがとうございます! もしサポートしていただけると、とても喜びます。 ありがたく、パソコン関係グッズ購入費、 作業時のカフェオレ購入費、などに使わせていただきます。