DMARCとは?なりすましメール対策

DMARCとは?

DMARCの仕組みを理解してなりすましメールを防ごう

企業や組織のドメインを悪用したなりすましメールは、現在最も深刻なメールセキュリティ問題の一つです。

フィッシング詐欺、マルウェア配布、ビジネスメール詐欺(BEC)など、多くの攻撃が偽装メールを利用して行われています。

こうした攻撃を防ぐために利用されるのがDMARC(Domain-based Message Authentication, Reporting and Conformance)です。

DMARCはSPFやDKIMと連携して動作し、なりすましメールへの対処方針を受信サーバへ伝える仕組みです。

本記事ではDMARCの仕組みや設定方法、SPF・DKIMとの関係について解説します。

DMARCとは

DMARC(Domain-based Message Authentication, Reporting and Conformance)は送信ドメイン認証技術の一つです。

SPFやDKIMの認証結果を利用し、認証に失敗したメールをどのように扱うかを受信側へ指示します。

また、認証結果のレポートを受け取る機能も提供します。

現在のメールセキュリティでは非常に重要な技術となっています。

なぜDMARCが必要なのか

SPFやDKIMだけでは、認証失敗メールをどう扱うかは受信サーバ側の判断に委ねられます。

そのため受信側によって対応が異なります。

DMARCを導入することで、送信ドメインの所有者がポリシーを明示できます。

SPFとDKIMだけでは不十分な理由

例えば次のようなケースがあります。

SPF失敗
DKIM失敗
↓
受信サーバの判断次第

あるメールサーバは受信し、別のメールサーバは拒否する可能性があります。

DMARCはこの問題を解決します。

DMARCの役割

DMARCには大きく3つの役割があります。

  • なりすまし対策
  • ポリシー通知
  • レポート収集

単なる認証技術ではなく、運用管理の仕組みも提供します。

DMARCの仕組み

DMARCはSPFとDKIMの結果を利用します。

メール受信時の流れは次の通りです。

メール受信
    ↓
SPF確認
    ↓
DKIM確認
    ↓
DMARC判定
    ↓
許可・隔離・拒否

最終判断をDMARCが行います。

DMARCの前提条件

DMARCを利用するためにはSPFまたはDKIMが設定されている必要があります。

一般的には両方設定します。

SPF
+
DKIM
+
DMARC

これが現在の標準構成です。

ドメインアライメントとは

DMARCの重要な概念にアライメント(Alignment)があります。

送信者アドレスと認証ドメインが一致しているかを確認します。

例えば以下です。

From: user@example.com
SPF認証: example.com

一致していればアライメント成功です。

DMARCレコードとは

DMARCはDNSのTXTレコードとして登録します。

登録場所は次のようになります。

_dmarc.example.com

専用のサブドメインを利用します。

DMARCレコードの基本例

最も基本的な設定です。

v=DMARC1; p=none;

DMARCを有効化し、まずは監視のみ行います。

v=DMARC1とは

DMARCのバージョンを表します。

v=DMARC1

現在はこの値を指定します。

p=とは

ポリシーを指定します。

DMARCで最も重要な設定項目です。

値意味
none監視のみ
quarantine隔離
reject拒否

導入初期はnoneから始めることが一般的です。

p=none

認証失敗メールを受信します。

v=DMARC1; p=none;

監視目的で利用されます。

DMARC導入初期に推奨されます。

p=quarantine

認証失敗メールを隔離します。

v=DMARC1; p=quarantine;

迷惑メールフォルダへ振り分けられる場合があります。

p=reject

認証失敗メールを拒否します。

v=DMARC1; p=reject;

最も厳しいポリシーです。

なりすまし対策として高い効果があります。

レポート機能とは

DMARCにはレポート機能があります。

認証結果をメールで受け取ることができます。

例えば次の設定です。

rua=mailto:dmarc@example.com

集計レポートが送信されます。

集計レポート(RUA)

Aggregate Reportとも呼ばれます。

主な内容は以下です。

  • 送信元IP
  • SPF結果
  • DKIM結果
  • 認証失敗状況

DMARC運用で最も利用されます。

障害レポート(RUF)

詳細レポートです。

ruf=mailto:dmarc@example.com

認証失敗メールの詳細情報を受け取れます。

利用しない環境もあります。

DMARCレコードの例

実際の設定例です。

v=DMARC1;
p=reject;
rua=mailto:dmarc@example.com;

企業環境でもよく利用される設定です。

DMARC確認方法

digコマンドで確認できます。

# dig TXT _dmarc.example.com

登録内容を確認できます。

nslookupで確認する

Windows環境では以下を利用します。

nslookup -type=TXT _dmarc.example.com

DNS設定確認でよく利用されます。

DMARCのメリット

  • なりすまし防止
  • フィッシング対策
  • ドメイン保護
  • 送信元可視化
  • レポート取得

企業メール運用に大きな効果があります。

DMARC導入時の注意点

いきなりrejectを設定すると正規メールまで拒否される可能性があります。

そのため一般的には以下の順で導入します。

none
 ↓
quarantine
 ↓
reject

段階的な導入が推奨されます。

GoogleやMicrosoftの対応

GmailやMicrosoft 365ではDMARCが重視されています。

送信ドメイン認証が未設定の場合、迷惑メール判定される可能性があります。

現在では事実上必須の技術になっています。

実務での導入例

以下のような環境で利用されています。

  • 企業メールサーバ
  • Google Workspace
  • Microsoft 365
  • クラウドメールサービス
  • 金融機関

セキュリティ要件の高い組織ほど導入が進んでいます。

まとめ

DMARCはSPFやDKIMの結果を利用して、なりすましメール対策を行う技術です。

認証失敗メールに対するポリシーを受信サーバへ通知し、レポート収集も行えます。

現在のメールセキュリティではSPF・DKIM・DMARCの3つを組み合わせることが標準となっています。

企業ドメインを安全に運用するためには、DMARCの導入を積極的に検討することが重要です。