e-Taxをかたる詐欺メールと
Cloudflareの警告画面

  • e-Taxをかたる偽メールが届き、未納税金があるとしてリンクへの誘導を試みる内容でした。
  • リンク先のドメインは国税庁とは無関係で、正規のe-Taxはe-tax.nta.go.jpです。
  • アクセスするとCloudflareがフィッシングサイトとして検出し、警告画面を表示しました。
  • 税金関連のメールが届いた場合は、メール内のリンクを使わず、まずは公式サイトへ直接アクセスして確認してください。

関連記事

1. 「国税局より(?)」

e-Taxを装った未納税金の通知メールが届きました。
メールには未納の所得税があるとして納付を求める内容が書かれており、リンクから支払い手続きができるように見えます。

メールの見た目はそれらしく作られており、国税庁の案内を模したレイアウトになっています。
しかし、リンク先を確認すると国税庁とは無関係のドメインが使われていました。

そもそも、「国税庁」や「税務署」ではなく、「国税局」という名前の時点で怪しいですね。

1.1. メールの内容

メールには未納税金についての最終案内と書かれており、納付期限や金額が記載されています。
期限を過ぎた場合には差押えなどの法的措置を行う可能性があるとも書かれています。

メールの内容と手口 不安を煽る 未納税金の通知 期限で急かす 期限・差押えを強調 リンクへ誘導 偽サイトで情報取得 フィッシングメールの典型パターン 1 公的機関になりすます 2 緊急性・期限で焦らせる 3 メール内リンクで誘導 4 偽サイトで情報を盗む

納付方法として、メール内のリンクからオンライン納付を行うように誘導されます。
こうした文面は受信者に急いで対応させるために使われることが多く、フィッシングメールでよく見られる特徴です1

フィッシング攻撃とは、正規のサービスを装ったサイトで個人情報や支払い情報を入力させて盗み取る手口です。

今回のメールにはいくつかの典型的な特徴がありました。

  • 未納税金という不安を利用している
  • 期限を強調して急いで対応させようとしている
  • メール内のリンクから直接支払いを求めている
  • 正規サービスとは異なるドメインを使用している

これらはフィッシングメールでよく見られる要素です。

1.2. リンク先のドメイン

メールに含まれていたリンクは次のURLでした。

ドメインで見分ける ⚠ 偽サイト メールに含まれていたURL e-tax. nmbcv.com 国税庁と無関係の 不審なドメイン VS ✓ 正規サイト e-Taxの公式ドメイン e-tax. nta.go.jp 国税庁の公式 go.jpは政府機関の証
[https://e-tax.nmbcv.com/imisis/jp](https://e-tax.nmbcv.com/imisis/jp)Code language: JSON / JSON with Comments (json)

このドメインは国税庁のものではありません。
e-Taxの正規サイトは次のドメインです。

e-tax.nta.go.jpCode language: CSS (css)

ドメインとはインターネット上の住所にあたる識別子です。
正規サービスを装ったフィッシングサイトでは、本物に似た文字列のドメインが使われることがあります2

2. 偽サイトにアクセスしたら警告が表示された

リンク先にアクセスすると、Cloudflareの警告画面が表示されました。

画面には「Suspected Phishing」と表示されており、このサイトがフィッシングの可能性があると報告されていることを示しています3

2.1. Cloudflareが警告を表示した意味

私は疑り深いので、この警告自体が偽物なのか確認するために、HTMLのソースを表示し、具体的なスクリプトの動作内容を確認してみました。

すると、この警告自体は本物。
Cloudflareがそのサイトに対してフィッシングの報告を受けている場合に表示されます。
利用者は警告を無視してサイトへ進むこともできますが、情報入力などの操作は避ける必要があります。

Cloudflareが警告を表示 nmbcv.com Cloudflare ! Suspected Phishing このサイトはフィッシング として報告されています Ignore & Proceed 仕組み 1 詐欺サイトが Cloudflare上に設置 2 フィッシングと ユーザーが通報 3 警告ページが 自動表示される

「検証中」と表示されている処理は、ページのHTMLを見ると、Cloudflareのボット検証システムである Turnstile が読み込まれていました。
実際のコードの一部は次のようになっています。

<script src="https://challenges.cloudflare.com/turnstile/v0/api.js" async defer></script>

function onTurnstileSuccess(token) {
  document.getElementById("bypass-button").disabled = false;
}Code language: PHP (php)

このコードは Cloudflare Turnstile を読み込み、検証が成功した場合に「Ignore & Proceed」ボタンを有効化する処理です。
Turnstile は Cloudflare が提供するボット検証サービスで、人間の利用者かどうかを確認するために使われます。

つまり、コード構造は Cloudflare が配布している警告ページの構造と一致していて、警告画面自体は Cloudflare の仕組みによって表示された可能性が高いと判断できます。
Cloudflareは自社のネットワーク上に置かれたサイトを監視しており、ユーザーからフィッシングサイトとして通報を受けると、そのサイトへのアクセス時に警告ページを自動表示するのです。

今回表示された警告ページにはCloudflare Ray IDが表示されていました。
Ray IDはCloudflareのシステムで生成される識別番号で、アクセスの記録を追跡するために使われます4

3. Cloudflareはネットワークインフラ企業

どうして、Cloudflareが警告を表示しているの?

Cloudflareは、WebサービスやWebサイトを高速化・保護するためのネットワークインフラ企業です。

実は、Cloudflareのサービスは、攻撃者にも好都合です。
たとえば、Cloudflareは個人や小規模サービスでも無料プランから使えるため、フィッシングサイトを手軽にHTTPS化できます。
これは、ブラウザのアドレスバーに鍵マークがつくので、ユーザーが「HTTPSだから安全」と誤解するのを狙えます。

ただ、攻撃者は意図的にCloudflareを選んだというより、格安ホスティングやサイト構築ツールを使った際に自動的にCloudflare経由になっていた、という可能性もあります。

3.1. リバースプロキシ

Cloudflareもこうした悪用を把握しており、通報を受けると今回のような警告ページを表示する対策を取っています。これができるのは、Cloudflareは、Webサイトの前段で通信を中継する「リバースプロキシ」という仕組みを提供しているからです。

リバースプロキシ ユーザー リバース プロキシ Webサーバ クライアント側 サーバ側 実サーバ セキュリティ 実IPを隠蔽 DDoS攻撃への 耐性向上 負荷分散・高速化 複数サーバへ リクエスト分散 静的コンテンツをキャッシュ 通信検査 悪性サイトを検知 警告ページを挿入 (Cloudflareの例)

リバースプロキシ」とは、利用者とWebサーバの間に入り通信を中継するサーバのことです。
通信の検査や防御機能をここで実行できます5

「リバース」という名前は、フォワードプロキシとの対比からきています。
フォワードプロキシはユーザー側に置いてユーザーの代わりにリクエストを送る仕組みで、企業の社内ネットワークで外部アクセスを制御する際などに使います。
リバースプロキシはサーバ側に置いてサーバを守る、という逆の立場にあるためこう呼ばれます。

「リバースプロキシ」では、ユーザーからのリクエストをいったん受け取り、背後にある本物のサーバへ転送して、その応答を返します。
なぜ間に入れるかというと、直接サーバに接続させないことでいくつかの利点が生まれるからです。

  • まず、サーバのセキュリティのため。
    実際のIPアドレスを隠せるので、攻撃者がサーバの場所を特定しにくくなるため、DDoS攻撃などへの耐性が上がります。
  • また、複数のサーバに負荷を分散したり、静的コンテンツをキャッシュして応答を速くしたりする用途にも使われます。
  • さらに、通信の検査をここで一括して実行できます。
    Cloudflareのケースでは、フィッシング報告のあったサイトへのアクセスを検知して警告ページを挟む、という処理がこの層で行われています。
    他にも、マルウェアの配布や不正なコンテンツの遮断もリバースプロキシで対応できます。

今回のケースでは、詐欺サイトがCloudflareのリバースプロキシを経由して公開されていて、そのサイトが通報されたため警告が表示された可能性があります6

4. 注意点と3つの対策

身を守る3つの対策 やってはいけない メール内リンクから 手続きをする URLをよく確認せず 情報を入力してしまう ✓ 対策 1 ブックマークから公式サイトへ e-tax.nta.go.jp を直接開く ✓ 対策 2 ドメインが go.jp かどうか確認する ✓ 対策 3 警告画面が出たら操作を中断する

税金や金融機関を装ったメールでは、メール内のリンクから手続きを行わないことが重要です。
公式サービスを確認する場合は、ブックマークしている公式サイトや検索結果から正規ドメインにアクセスします。

また、不審なメールに記載されたURLはドメイン部分を必ず確認します。
ドメインが公式サイトと一致していない場合、そのサイトは偽物である可能性が高くなります。

今回の例のように、セキュリティサービスの警告が表示される場合もあります。
警告画面が表示された場合は、そのサイトでの操作を中断するのが安全です。

  1. 税金や公共機関を装ったフィッシングメールは世界的に多く報告されています。攻撃者は期限や罰則を強調することで受信者に急いで行動させ、偽サイトへ誘導する手口を使います。 – Cloudflare: How phishing attacks bypass sandbox technology
  2. フィッシングは利用者に正規サービスだと思わせてログイン情報や個人情報を入力させる攻撃です。メールやメッセージを入口として偽サイトに誘導する方法が広く使われています。 – Cloudflare: How phishing attacks bypass sandbox technology
  3. CloudflareはWebサイトへのアクセスを仲介するセキュリティサービスを提供しています。フィッシングや不正サイトが報告されている場合、利用者に警告画面を表示することがあります。 – Cloudflare Community: Error Warning Suspected Phishing
  4. Ray IDはCloudflareが生成するリクエスト識別番号で、トラブルシューティングやログ追跡のために利用されます。各アクセスに固有の値が割り当てられます。 – Cloudflare Community: Error Warning Suspected Phishing
  5. リバースプロキシは利用者の通信を代理で受け取り、内部のサーバへ転送する仕組みです。この位置で通信の検査やセキュリティ機能を実行できます。 – Cloudflare: How phishing attacks bypass sandbox technology
  6. クラウドサービスは利便性が高いため、攻撃者に悪用されることがあります。クラウドストレージやCDNを利用してフィッシングページが配布される事例も報告されています。 – Netskope Threat Labs: Evasive Phishing Campaign Steals Cloud Credentials Using Cloudflare R2 and Turnstile